From f29900986f01cf5d39b5755cec674825cef27961 Mon Sep 17 00:00:00 2001 From: gaoshp <291585735@qq.com> Date: 星期二, 19 十一月 2024 19:25:41 +0800 Subject: [PATCH] update --- src/views/console/system/SubitemAddDict.vue | 169 ++++++++++++++++++++++++++++++------------------------- 1 files changed, 92 insertions(+), 77 deletions(-) diff --git a/src/views/console/system/SubitemAddDict.vue b/src/views/console/system/SubitemAddDict.vue index eeb58e3..789fc7c 100644 --- a/src/views/console/system/SubitemAddDict.vue +++ b/src/views/console/system/SubitemAddDict.vue @@ -1,47 +1,59 @@ <template> <el-dialog :title="titleMap[mode]" v-model="visible" :width="800" destroy-on-close @closed="$emit('closed')"> - <el-form :model="form" :rules="rules" :disabled="mode=='show'" ref="dialogForm" label-width="120px" label-position="center"> + <el-form :model="addAllocationForm" :rules="addDictRules" ref="dialogForm" label-width="120px" label-position="center"> <el-row> <el-col :span="24"> - <el-form-item label="瀛楀吀缂栧彿" prop="userName"> - <el-input v-model="form.userName" placeholder="瀛楀吀缂栧彿" clearable></el-input> + <el-form-item label="瀛楀吀缂栧彿" prop="code"> + <el-input v-model="addAllocationForm.code" placeholder="瀛楀吀缂栧彿" clearable disabled></el-input> </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="瀛楀吀鍚嶇О" prop="name"> - <el-input v-model="form.name" placeholder="瀛楀吀鍚嶇О" clearable></el-input> + <el-form-item label="瀛楀吀鍚嶇О" prop="dictValue"> + <el-input v-model="addAllocationForm.dictValue" placeholder="瀛楀吀鍚嶇О" clearable :disabled="mode=='show'"></el-input> </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="涓婄骇瀛楀吀" prop="name"> - <el-input v-model="form.name" placeholder="涓婄骇瀛楀吀" clearable></el-input> + <el-form-item label="涓婄骇瀛楀吀"> + <el-tree-select + @change = "parentIdChange" + v-model="addAllocationForm.parentId" + clearable + node-key="id" + placeholder="涓婄骇瀛楀吀" + ref="parentTree" + :data="parentData" + check-strictly + :props="{ label: 'title' }" + style="width:100%;" + disabled + :render-after-expand="false" /> </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="瀛楀吀閿��" prop="name"> - <el-input v-model="form.name" placeholder="瀛楀吀閿��" clearable></el-input> + <el-form-item label="瀛楀吀閿��" prop="dictKey"> + <el-input v-model="addAllocationForm.dictKey" placeholder="瀛楀吀閿��" clearable :disabled="mode=='show'"></el-input> </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="瀛楀吀鎺掑簭" prop="name"> - <el-input v-model="form.name" placeholder="瀛楀吀鎺掑簭" clearable></el-input> + <el-form-item label="瀛楀吀鎺掑簭" prop="sort"> + <el-input v-model="addAllocationForm.sort" placeholder="瀛楀吀鎺掑簭" clearable :disabled="mode=='show'"></el-input> </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="灏佸瓨" prop="name"> - <el-switch v-model="value1" /> + <el-form-item label="灏佸瓨"> + <el-switch v-model="addAllocationForm.isSealed" :disabled="mode=='show'" /> </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="瀛楀吀澶囨敞" prop="name"> - <el-input v-model="form.name" placeholder="瀛楀吀澶囨敞" clearable></el-input> + <el-form-item label="瀛楀吀澶囨敞"> + <el-input v-model="addAllocationForm.remark" placeholder="瀛楀吀澶囨敞" clearable :disabled="mode=='show'"></el-input> </el-form-item> </el-col> </el-row> </el-form> <template #footer> <el-button @click="visible=false" >鍙� 娑�</el-button> - <el-button v-if="mode!='show'" type="primary" :loading="isSaveing" @click="submit()">淇� 瀛�</el-button> + <el-button v-if="mode!='show'" type="primary" :loading="isSaveing" @click="allocationSubmit()">淇� 瀛�</el-button> </template> </el-dialog> </template> @@ -51,6 +63,7 @@ emits: ['success', 'closed'], data() { return { + parentData: {}, value1: true, mode: "add", titleMap: { @@ -61,50 +74,23 @@ visible: false, isSaveing: false, //琛ㄥ崟鏁版嵁 - form: { - id:"", - userName: "", - avatar: "", - name: "", - dept: "", - group: [] + addAllocationForm: { + code: "", + dictValue: "", + sort: "", + isSealed: false, + remark: "", + parentId: "", + dictKey: "", + $isSealed: "鍚�", + $parentId: "" }, //楠岃瘉瑙勫垯 - rules: { - avatar:[ - {required: true, message: '璇蜂笂浼犲ご鍍�'} - ], - userName: [ - {required: true, message: '璇疯緭鍏ョ櫥褰曡处鍙�'} - ], - name: [ - {required: true, message: '璇疯緭鍏ョ湡瀹炲鍚�'} - ], - password: [ - {required: true, message: '璇疯緭鍏ョ櫥褰曞瘑鐮�'}, - {validator: (rule, value, callback) => { - if (this.form.password2 !== '') { - this.$refs.dialogForm.validateField('password2'); - } - callback(); - }} - ], - password2: [ - {required: true, message: '璇峰啀娆¤緭鍏ュ瘑鐮�'}, - {validator: (rule, value, callback) => { - if (value !== this.form.password) { - callback(new Error('涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�!')); - }else{ - callback(); - } - }} - ], - dept: [ - {required: true, message: '璇烽�夋嫨鎵�灞為儴闂�'} - ], - group: [ - {required: true, message: '璇烽�夋嫨鎵�灞炶鑹�', trigger: 'change'} - ] + addDictRules: { + code:[{required: true, message: '璇疯緭鍏ュ瓧鍏哥紪鍙�'}], + dictValue:[{required: true, message: '璇疯緭鍏ュ瓧鍏稿悕绉�'}], + sort:[{required: true, message: '璇疯緭鍏ュ瓧鍏告帓搴�'}], + dictKey:[{required: true, message: '璇疯緭鍏ュ瓧鍏搁敭鍊�'}], }, //鎵�闇�鏁版嵁閫夐」 groups: [], @@ -125,6 +111,10 @@ // this.getDept() }, methods: { + parentIdChange(val) { + var $parentId = this.$refs.parentTree.getCurrentNode().title; + this.formAddMenu.$parentId = $parentId; + }, //鏄剧ず open(mode='add'){ this.mode = mode; @@ -141,39 +131,64 @@ this.depts = res.data; }, //琛ㄥ崟鎻愪氦鏂规硶 - submit(){ + allocationSubmit(){ + var obj = Object.assign({},this.addAllocationForm); + if(obj.isSealed === true) { + obj.$isSealed = "鏄�"; + obj.isSealed = "1"; + }else { + obj.$isSealed = "鍚�"; + obj.isSealed = "0"; + } 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/dict/submit",obj).then(res=> { + this.isSaveing = false; + if(res.code == 200) { + this.$emit('success', this.addAllocationForm, this.mode); + this.visible = false; + this.$message.success("鎿嶄綔鎴愬姛"); + }else { + this.$alert(res.message, "鎻愮ず", {type: 'error'}); + } + }) }else{ return false; } }) }, + showDict() { + this.$HTTP.get("/api/blade-system/dict/tree?code=DICT").then(res=> { + if(res.code == 200) { + res.data.forEach(item=> { + if(item.id == this.addAllocationForm.parentId) { + this.addAllocationForm.$parentId = item.title; + } + }) + this.parentData = res.data; + } + }) + }, //琛ㄥ崟娉ㄥ叆鏁版嵁 setData(data){ - this.form.id = data.id - this.form.userName = data.userName - this.form.avatar = data.avatar - this.form.name = data.name - this.form.group = data.group - this.form.dept = data.dept - //鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘� - //Object.assign(this.form, data) + //console.log(data.code,data.parentId,data) + this.addAllocationForm.code = data.code; + this.addAllocationForm.parentId = data.id; + if(data.mode == "edit" || data.mode == "show") { + if(data.isSealed == "1") { + data.isSealed = true; + }else { + data.isSealed = false; + } + Object.assign(this.addAllocationForm, data); + } + this.showDict(); //鑾峰彇鎵�鏈夊瓧鍏� } } } </script> <style> -</style> +</style> \ No newline at end of file -- Gitblit v1.9.3