From 4c810c1feb3f78c458084d73e89adc6c4f2256f1 Mon Sep 17 00:00:00 2001 From: lzhe <lzhe@example.com> Date: 星期四, 06 六月 2024 18:22:55 +0800 Subject: [PATCH] 1 --- src/views/console/system/addMenu.vue | 95 ++++++++++++++++++++++++++++++++++------------- 1 files changed, 68 insertions(+), 27 deletions(-) diff --git a/src/views/console/system/addMenu.vue b/src/views/console/system/addMenu.vue index 7450ce8..0b792e5 100644 --- a/src/views/console/system/addMenu.vue +++ b/src/views/console/system/addMenu.vue @@ -15,9 +15,12 @@ <el-col :span="12"> <el-form-item label="涓婄骇鑿滃崟"> <el-tree-select + @change = "parentIdChange" v-model="formAddMenu.parentId" clearable + node-key="id" placeholder="涓婄骇鑿滃崟" + ref="parentTree" :data="parentData" check-strictly :props="{ label: 'title' }" @@ -36,9 +39,9 @@ </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="鑿滃崟绫诲瀷" prop="belongApplication"> - <el-radio-group v-model="formAddMenu.belongApplication"> - <el-radio v-for="item in belongApplicationList" :label="item.label" :key="item.id">{{item.value}}</el-radio> + <el-form-item label="鑿滃崟绫诲瀷" prop="category"> + <el-radio-group v-model="formAddMenu.category" @change="categoryChange"> + <el-radio v-for="item in categoryList" :label="item.label" :key="item.id">{{item.value}}</el-radio> </el-radio-group> </el-form-item> </el-col> @@ -49,7 +52,7 @@ </el-col> <el-col :span="12"> <el-form-item label="鏂扮獥鍙�" prop="isOpen"> - <el-radio-group v-model="formAddMenu.isOpen"> + <el-radio-group v-model="formAddMenu.isOpen" @change="isOpenChange"> <el-radio :label="1">鍚�</el-radio> <el-radio :label="2">鏄�</el-radio> </el-radio-group> @@ -57,15 +60,15 @@ </el-col> <el-col :span="12"> <el-form-item label="鍚敤缂撳瓨" prop="keepAlive"> - <el-radio-group v-model="formAddMenu.keepAlive"> - <el-radio :label="1">鍚�</el-radio> - <el-radio :label="2">鏄�</el-radio> + <el-radio-group v-model="formAddMenu.keepAlive" @change="keepAliveChange"> + <el-radio :label="0">鍚�</el-radio> + <el-radio :label="1">鏄�</el-radio> </el-radio-group> </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="鎵�灞炲簲鐢�" prop="category"> - <el-select v-model="formAddMenu.category" style="width: 100%"> + <el-form-item label="鎵�灞炲簲鐢�" prop="belongApplication"> + <el-select v-model="formAddMenu.belongApplication" style="width: 100%" @change="belongApplicationChange"> <el-option v-for="item in applicationList" :key="item.code" :label="item.name" :value="item.code"/> </el-select> </el-form-item> @@ -94,12 +97,13 @@ emits: ['success', 'closed'], data() { return { + fixed: false, parentData: {}, - belongApplicationList: [ - {label: 1,id: "1",value: "APP"}, - {label: 2,id: "2",value: "鑿滃崟"}, - {label: 3,id: "3",value: "鎸夐挳"}, - {label: 4,id: "4",value: "鍗$墖"} + categoryList: [ + {label: 0,id: "0",value: "APP"}, + {label: 1,id: "1",value: "鑿滃崟"}, + {label: 2,id: "2",value: "鎸夐挳"}, + {label: 3,id: "3",value: "鍗$墖"} ], value1: true, mode: "add", @@ -115,13 +119,14 @@ name: "", path: "", parentId: "", + $parentId: "", code: "", - $belongApplication: '鑿滃崟', - belongApplication: 2, + $belongApplication: '', + belongApplication: '', alias: "", isOpen: 1, $isOpen: "鍚�", - keepAlive: 2, + keepAlive: 1, $keepAlive: "鏄�", $category: "", category: "", @@ -161,6 +166,34 @@ this.parentIdload(); }, methods: { + parentIdChange(val) { + var $parentId = this.$refs.parentTree.getCurrentNode().title; + this.formAddMenu.$parentId = $parentId; + }, + belongApplicationChange(val) { + var $belongApplication = this.applicationList.find(option=>option.code === val).name; + this.formAddMenu.$belongApplication = $belongApplication; + }, + categoryChange(val) { + var $category = this.categoryList.find(option=>option.id == val).value; + this.formAddMenu.$category = $category; + }, + isOpenChange(val) { + if(val == "1") { + this.formAddMenu.$isOpen = "鍚�"; + } + if(val == "2") { + this.formAddMenu.$isOpen = "鏄�"; + } + }, + keepAliveChange(val) { + if(val == "0") { + this.formAddMenu.$keepAlive = "鍚�"; + } + if(val == "1") { + this.formAddMenu.$keepAlive = "鏄�"; + } + }, parentIdload(node, resolve) { this.$HTTP.get("/api/blade-system/menu/tree").then(res=> { if(res.code == 200) { @@ -191,15 +224,16 @@ this.$refs.dialogForm.validate(async (valid) => { if (valid) { this.isSaveing = true; - var res = await this.$API.demo.post.post(this.form); - this.isSaveing = false; - if(res.code == 200){ - this.$emit('success', this.form, this.mode) - this.visible = false; - this.$message.success("鎿嶄綔鎴愬姛") - }else{ - this.$alert(res.message, "鎻愮ず", {type: 'error'}) - } + this.$HTTP.post("/api/blade-system/menu/submit",this.formAddMenu).then(res=> { + this.isSaveing = false; + if(res.code == 200) { + this.$emit('success', this.formAddMenu, this.mode); + this.visible = false; + this.$message.success("鎿嶄綔鎴愬姛"); + }else { + this.$alert(res.message, "鎻愮ず", {type: 'error'}); + } + }) }else{ return false; } @@ -207,8 +241,15 @@ }, //琛ㄥ崟娉ㄥ叆鏁版嵁 setData(data){ + if(data.parentId == "0") { + data.parentId = ""; + } //鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘� - Object.assign(this.formAddMenu, data) + if(data.fixed) { //鏂板瀛愰」 + this.formAddMenu.parentId = data.id; + }else { + Object.assign(this.formAddMenu, data); + } } } } -- Gitblit v1.9.3