Commit 7062bdba authored by 刘殿昕's avatar 刘殿昕

云资源申请+云详情

parent 90ed2085
......@@ -114,7 +114,7 @@
:label="item.label"
:value="item.value"
></el-option>
</el-select> -->
</el-select>-->
</el-form-item>
</el-col>
<el-col :span="11">
......@@ -352,7 +352,7 @@
:label="item.label"
:value="item.value"
></el-option>
</el-select> -->
</el-select>-->
</el-form-item>
</el-col>
<el-col :span="11">
......@@ -474,13 +474,15 @@
:src="require('@/assets/imgs/ic_shijian.png')"
/>
<span class="now_spec_card_time_title">当前工作区域到期时间</span>
<span class="now_spec_card_time_val">2020-05-05 08:00:00</span>
<span
class="now_spec_card_time_val"
>{{ helper.dateStringTransform(paramsOld.cloud_end_time) }}</span>
</div>
</div>
</el-col>
</el-col>
<el-col :span="22">
<el-form-item prop="appDuration" class="form_item input_has_right_select">
<el-form-item class="form_item input_has_right_select">
<div class="form_item_title">申请续期:</div>
<el-input-number
v-model="formOld.appDuration"
......@@ -596,7 +598,7 @@
<!-- <div class="dia_block_item_in" v-if="diaForm.dataDisk != 0">
<span class="dia_block_item_title">数据盘类型:</span>
<span class="dia_block_item_val">{{ diaForm.store_type }}</span>
</div> -->
</div>-->
</div>
<span class="dia_item_all_title">单个容器组规格:</span>
<div class="dia_block_item">
......@@ -648,15 +650,15 @@
<div class="dia_block_item_in">
<span class="dia_block_item_title">CPU:</span>
<p class="dia_block_item_val">
<span class="val_has_2">最高&nbsp;{{ paramsOld.perCPUs }}</span>
<span class="val_has_2">默认&nbsp;{{ paramsOld.perCPU }}</span>
<span class="val_has_2">最高&nbsp;{{ paramsOld.one_cpu_max }}</span>
<span class="val_has_2">默认&nbsp;{{ paramsOld.one_cpu_min }}</span>
</p>
</div>
<div class="dia_block_item_in">
<span class="dia_block_item_title">内存:</span>
<p class="dia_block_item_val">
<span class="val_has_2">最高&nbsp;{{ paramsOld.perRAMs }}</span>
<span class="val_has_2">默认&nbsp;{{ paramsOld.perRAM }}</span>
<span class="val_has_2">最高&nbsp;{{ paramsOld.one_memory_max }}</span>
<span class="val_has_2">默认&nbsp;{{ paramsOld.one_memory_min }}</span>
</p>
</div>
</div>
......@@ -664,7 +666,9 @@
<div class="dia_block_item">
<div class="dia_block_item_in">
<span class="dia_block_item_title">到期时间:</span>
<span class="dia_block_item_val">2020-12-12 12:12:12</span>
<span
class="dia_block_item_val"
>{{ helper.dateStringTransform(paramsOld.cloud_end_time) }}</span>
</div>
</div>
</div>
......@@ -694,7 +698,7 @@
<span class="dia_block_item_title">删除数据盘:</span>
<span
class="dia_block_item_val"
>{{ delDataDiskList.map(item => {return item.app_name}).join("") }}</span>
>{{ delDataDiskList.map(item => {return item.name}).join("") }}</span>
</div>
</div>
<span class="dia_item_all_title">单个容器组规格:</span>
......@@ -741,6 +745,7 @@
<el-button class="submit" @click="determineSubmit">确定提交</el-button>
</div>
</el-dialog>
<ApassDialog ref="dialog" msg="确认删除该数据盘吗?" :submit="dialogSubmit"></ApassDialog>
</div>
</template>
......@@ -749,21 +754,26 @@ import BlockRadius from "@/components/general/block-radius";
import UploadFile from "@/components/general/upload_file";
import TableUm from "@/components/table/table-um";
import InfoList from "@/components/infoList";
import ApassDialog from "@/components/apass-dialog";
import helper from "@/services/helper.js";
export default {
components: {
BlockRadius,
UploadFile,
TableUm,
InfoList
InfoList,
ApassDialog,
},
props: {
name: { type: String, default: "" }
name: { type: String, default: "" },
},
data: () => ({
helper,
form: {
department_name: "",
phone: "",
link_man: ""
link_man: "",
},
activeName: "0",
formNew: {
......@@ -783,78 +793,78 @@ export default {
durType: 1,
apply_file: "",
apply_file_name: "",
store_type: "nfs-client"
store_type: "nfs-client",
},
ruleNew: {
namespace: [
{ required: true, message: "请输入工作区域名称", trigger: "blur" }
{ required: true, message: "请输入工作区域名称", trigger: "blur" },
],
workplace: [
{ required: true, message: "请输入中文名称", trigger: "blur" }
{ required: true, message: "请输入中文名称", trigger: "blur" },
],
workplacedesc: [
{ required: true, message: "请输入描述信息", trigger: "blur" }
{ required: true, message: "请输入描述信息", trigger: "blur" },
],
cpu: [{ required: true, message: "请选择CPU使用量", trigger: "blur" }],
memory: [
{ required: true, message: "请选择内存使用量", trigger: "blur" }
{ required: true, message: "请选择内存使用量", trigger: "blur" },
],
containerGroup: [
{ required: true, message: "请输入容器组规格", trigger: "blur" }
{ required: true, message: "请输入容器组规格", trigger: "blur" },
],
perCPUs: [
{ required: true, message: "请输入CPU最大使用量", trigger: "blur" }
{ required: true, message: "请输入CPU最大使用量", trigger: "blur" },
],
perCPU: [
{ required: true, message: "请输入CPU默认使用量", trigger: "blur" }
{ required: true, message: "请输入CPU默认使用量", trigger: "blur" },
],
perRAMs: [
{ required: true, message: "请输入内存最大使用量", trigger: "blur" }
{ required: true, message: "请输入内存最大使用量", trigger: "blur" },
],
perRAM: [
{ required: true, message: "请输入内存默认使用量", trigger: "blur" }
{ required: true, message: "请输入内存默认使用量", trigger: "blur" },
],
appDuration: [
{ required: true, message: "请输入申请时长", trigger: "blur" }
]
{ required: true, message: "请输入申请时长", trigger: "blur" },
],
},
durationOptions: [
{ value: 1, label: "" },
{ value: 2, label: "" }
{ value: 2, label: "" },
],
workSpace: "",
workSpaceId: "",
workSpaceOptions: [],
optionsCPU: [
{ value: "8", label: "8" },
{ value: "16", label: "16" }
{ value: "16", label: "16" },
],
optionsRAM: [
{ value: "8", label: "8" },
{ value: "16", label: "16" },
{ value: "32", label: "32" }
{ value: "32", label: "32" },
],
options_store_type: [
{ value: "nfs-client", label: "nfs-client" },
{ value: "rook-ceph-block", label: "rook-ceph-block" }
{ value: "rook-ceph-block", label: "rook-ceph-block" },
],
formShow: false,
specArr: [
{ title: "CPU", val: "4", src: "ic_CPU" },
{ title: "内存", val: "4", src: "ic_neicun" },
{ title: "容器", val: "4", src: "ic_rongqi" }
{ title: "容器", val: "4", src: "ic_rongqi" },
],
rqzArr: [
{ title: "CPU", max: "4", default: "2", src: "ic_CPU" },
{ title: "内存", max: "4", default: "2", src: "ic_neicun" }
{ title: "内存", max: "4", default: "2", src: "ic_neicun" },
],
docTemplate: [
{
title: "",
info: "工作区域申请文件标准模板.PDF",
url: "static/工作区域申请文件模板.xlsx",
type: "down"
}
type: "down",
},
],
formOld: {
cpu: "",
......@@ -870,54 +880,56 @@ export default {
durType: 1,
apply_file: "",
apply_file_name: "",
store_type: "nfs-client"
store_type: "nfs-client",
},
paramsOld: {},
ruleOld: {
namespace: [
{ required: true, message: "请输入工作区域名称", trigger: "blur" }
{ required: true, message: "请输入工作区域名称", trigger: "blur" },
],
workplace: [
{ required: true, message: "请输入中文名称", trigger: "blur" }
{ required: true, message: "请输入中文名称", trigger: "blur" },
],
workplacedesc: [
{ required: true, message: "请输入描述信息", trigger: "blur" }
{ required: true, message: "请输入描述信息", trigger: "blur" },
],
cpu: [{ required: true, message: "请选择CPU使用量", trigger: "blur" }],
memory: [
{ required: true, message: "请选择内存使用量", trigger: "blur" }
{ required: true, message: "请选择内存使用量", trigger: "blur" },
],
containerGroup: [
{ required: true, message: "请输入容器组规格", trigger: "blur" }
{ required: true, message: "请输入容器组规格", trigger: "blur" },
],
perCPUs: [
{ required: true, message: "请输入CPU最大使用量", trigger: "blur" }
{ required: true, message: "请输入CPU最大使用量", trigger: "blur" },
],
perCPU: [
{ required: true, message: "请输入CPU默认使用量", trigger: "blur" }
{ required: true, message: "请输入CPU默认使用量", trigger: "blur" },
],
perRAMs: [
{ required: true, message: "请输入内存最大使用量", trigger: "blur" }
{ required: true, message: "请输入内存最大使用量", trigger: "blur" },
],
perRAM: [
{ required: true, message: "请输入内存默认使用量", trigger: "blur" }
{ required: true, message: "请输入内存默认使用量", trigger: "blur" },
],
appDuration: [
{ required: true, message: "请输入申请时长", trigger: "blur" }
]
},
dialogVisible: false,
diaForm: {},
dataDiskHeaders: [
{
label: "磁盘名称",
prop: "name",
align: "center",
},
{
label: "数据盘容量",
prop: "disk_cap",
align: "center"
align: "center",
},
{
label: "部署的应用",
prop: "app_name",
align: "center"
align: "center",
},
{
label: "操作",
......@@ -926,13 +938,14 @@ export default {
btnList: [
{
type: "primary-del",
label: "删除"
}
]
}
label: "删除",
},
],
},
],
dataDiskList: [],
delDataDiskList: []
delDataDiskList: [],
del_item: {},
}),
mounted() {
this.getUser();
......@@ -951,11 +964,11 @@ export default {
},
handleChange() {},
getForm(val) {
console.log(val)
console.log(val);
if (val !== "") {
let paramsOld = this.workSpaceOptions[val];
this.paramsOld = paramsOld;
this.workSpaceId = paramsOld.Id;
this.paramsOld = paramsOld;
this.formOld.namespace = paramsOld.namespace;
this.formOld.workplace = paramsOld.workplace;
this.formOld.workplacedesc = paramsOld.workplacedesc;
......@@ -970,6 +983,9 @@ export default {
this.formOld.perRAM = paramsOld.one_memory_min;
this.formOld.store_type = paramsOld.store_type;
this.dataDiskList = paramsOld.disk_list || [];
this.dataDiskList.forEach((item, index) => {
item.name = `磁盘${index + 1}`;
});
this.formShow = true;
} else {
this.formShow = false;
......@@ -978,7 +994,7 @@ export default {
submitApp() {
let formParams = {};
if (this.activeName == 0) {
this.$refs["formNew"].validate(valid => {
this.$refs["formNew"].validate((valid) => {
if (valid) {
formParams = this.formNew;
this.dialogVisible = true;
......@@ -989,7 +1005,7 @@ export default {
}
});
} else if (this.activeName == 1) {
this.$refs["formOld"].validate(valid => {
this.$refs["formOld"].validate((valid) => {
if (valid) {
formParams = this.formOld;
this.dialogVisible = true;
......@@ -1007,7 +1023,7 @@ export default {
resource_info: {
namespace: this.formNew.namespace,
workplace: this.formNew.workplace,
workplacedesc: this.formNew.workplacedesc
workplacedesc: this.formNew.workplacedesc,
},
resource_apply: {
apply_file: this.formNew.apply_file,
......@@ -1023,27 +1039,27 @@ export default {
one_cpu_min: this.formNew.perCPU,
one_cpu_max: this.formNew.perCPUs,
one_memory_min: this.formNew.perRAM,
one_memory_max: this.formNew.perRAMs
one_memory_max: this.formNew.perRAMs,
},
disks: [
{
disk_num: this.formNew.dataDisk,
disk_cap: this.formNew.perDataDisk,
store_type: this.formNew.store_type
}
]
store_type: this.formNew.store_type,
},
],
};
this.$api.serviceShop.applicationCloud(query).then(response => {
this.$api.serviceShop.applicationCloud(query).then((response) => {
if (response.data.success == 1) {
this.$message({
message: "申请成功",
type: "success"
type: "success",
});
this.$router.push("/services_shop");
} else {
this.$message({
message: `申请失败,${response.data.errMsg}`,
type: "error"
type: "error",
});
}
});
......@@ -1062,27 +1078,27 @@ export default {
one_cpu_min: this.formOld.perCPU,
one_cpu_max: this.formOld.perCPUs,
one_memory_min: this.formOld.perRAM,
one_memory_max: this.formOld.perRAMs
one_memory_max: this.formOld.perRAMs,
},
disks: [
{
disk_num: this.formOld.dataDisk,
disk_cap: this.formOld.perDataDisk,
store_type: this.formOld.store_type
}
]
store_type: "nfs-client",
},
],
};
this.$api.serviceShop.updateCloud(query).then(response => {
this.$api.serviceShop.updateCloud(query).then((response) => {
if (response.data.success == 1) {
this.$message({
message: "申请调整成功",
type: "success"
type: "success",
});
this.$router.push("/services_shop");
} else {
this.$message({
message: `申请调整失败,${response.data.errMsg}`,
type: "error"
type: "error",
});
}
});
......@@ -1099,18 +1115,24 @@ export default {
this.form.link_man = this.$store.state.userInfo.link_man;
},
getNameSpaceList() {
this.$api.serviceShop.getCloudList().then(response => {
this.$api.serviceShop.getCloudList().then((response) => {
if (response.data.success == 1) {
this.workSpaceOptions = response.data.data;
}
});
},
delItem(val) {
let delIndex = this.dataDiskList.findIndex(v => v.id === val.id);
this.$refs.dialog.show();
this.del_item = val;
},
dialogSubmit() {
let delIndex = this.dataDiskList.findIndex(
(v) => v.id === this.del_item.id
);
this.dataDiskList.splice(delIndex, 1);
this.delDataDiskList.push(val);
}
}
this.delDataDiskList.push(this.del_item);
},
},
};
</script>
......
......@@ -245,7 +245,7 @@
@click="pass"
>提交资源申请</el-button>
<el-button
v-if="now_user == 0 && apploy_msg.second_level != 0"
v-if="now_user == 0 && use_uid != '' && apploy_msg.second_level != 0"
class="adjustment"
@click="adjustment"
>资源调整</el-button>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment