From b28a825dd4dee120f70398308c04cf97fa0688d8 Mon Sep 17 00:00:00 2001 From: lzhe <181968431@qq.com> Date: 星期一, 01 四月 2024 23:35:53 +0800 Subject: [PATCH] 1 --- src/views/console/system/addMenu.vue | 12 ++ src/views/console/system/addDict.vue | 97 ++++++------------ src/router/index.js | 2 src/views/console/system/dict.vue | 102 ++++++++++--------- src/views/console/system/menu.vue | 38 ++++++- 5 files changed, 130 insertions(+), 121 deletions(-) diff --git a/src/router/index.js b/src/router/index.js index 7ba9ab5..d0735c0 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -81,7 +81,7 @@ if (to.matched.length == 0) { router.push(to.fullPath); } - console.log(menuRouter,router,8899) + console.log(menuRouter,router) isGetRouter = true; } beforeEach(to, from) diff --git a/src/views/console/system/addDict.vue b/src/views/console/system/addDict.vue index e37b9dc..9a0a522 100644 --- a/src/views/console/system/addDict.vue +++ b/src/views/console/system/addDict.vue @@ -1,37 +1,37 @@ <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="addDictForm" :rules="addDictRules" :disabled="mode=='show'" 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="addDictForm.code" placeholder="瀛楀吀缂栧彿" clearable></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="addDictForm.dictValue" placeholder="瀛楀吀鍚嶇О" clearable></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="addDictForm.sort" placeholder="瀛楀吀鎺掑簭" clearable></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="addDictForm.isSealed" /> </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="addDictForm.remark" placeholder="瀛楀吀澶囨敞" clearable></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="dictSubmit()">淇� 瀛�</el-button> </template> </el-dialog> </template> @@ -51,50 +51,18 @@ visible: false, isSaveing: false, //琛ㄥ崟鏁版嵁 - form: { - id:"", - userName: "", - avatar: "", - name: "", - dept: "", - group: [] + addDictForm: { + code: "", + dictValue: "", + sort: "", + isSealed: "", + remark: "" }, //楠岃瘉瑙勫垯 - 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: '璇疯緭鍏ュ瓧鍏告帓搴�'}] }, //鎵�闇�鏁版嵁閫夐」 groups: [], @@ -131,19 +99,20 @@ this.depts = res.data; }, //琛ㄥ崟鎻愪氦鏂规硶 - submit(){ + dictSubmit(){ 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",this.addDictForm).then(res=> { + this.isSaveing = false; + if(res.code == 200) { + this.$emit('success', this.addDictForm, this.mode); + this.visible = false; + this.$message.success("鎿嶄綔鎴愬姛"); + }else { + this.$alert(res.message, "鎻愮ず", {type: 'error'}); + } + }) }else{ return false; } diff --git a/src/views/console/system/addMenu.vue b/src/views/console/system/addMenu.vue index 0d9761b..f94a368 100644 --- a/src/views/console/system/addMenu.vue +++ b/src/views/console/system/addMenu.vue @@ -97,6 +97,7 @@ emits: ['success', 'closed'], data() { return { + fixed: false, parentData: {}, categoryList: [ {label: 0,id: "0",value: "APP"}, @@ -168,6 +169,7 @@ parentIdChange(val) { var $parentId = this.$refs.parentTree.getCurrentNode().title; this.formAddMenu.$parentId = $parentId; + alert(4) }, belongApplicationChange(val) { var $belongApplication = this.applicationList.find(option=>option.code === val).name; @@ -240,9 +242,15 @@ }, //琛ㄥ崟娉ㄥ叆鏁版嵁 setData(data){ + if(data.parentId == "0") { + data.parentId = ""; + } //鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘� - console.log(data) - Object.assign(this.formAddMenu, data) + if(data.fixed) { //鏂板瀛愰」 + this.formAddMenu.parentId = data.id; + }else { + Object.assign(this.formAddMenu, data); + } } } } diff --git a/src/views/console/system/dict.vue b/src/views/console/system/dict.vue index 92e39e1..2f05ad4 100644 --- a/src/views/console/system/dict.vue +++ b/src/views/console/system/dict.vue @@ -10,21 +10,17 @@ <div class="dict-main"> <el-form :inline="true" :model="searchData" abel-width="120px"> <el-form-item label="瀛楀吀缂栧彿"> - <el-input v-model="searchData.test" placeholder="瀛楀吀缂栧彿" clearable /> + <el-input v-model="searchData.code" placeholder="瀛楀吀缂栧彿" clearable /> </el-form-item> <el-form-item label="瀛楀吀鍚嶇О"> - <el-select - v-model="searchData.test" - placeholder="瀛楀吀鍚嶇О" - clearable - > + <el-select v-model="searchData.dictValue" placeholder="瀛楀吀鍚嶇О" clearable> <el-option label="Zone one" value="shanghai" /> <el-option label="Zone two" value="beijing" /> </el-select> </el-form-item> <el-form-item> - <el-button type="primary" @click="searchBtn">鎼滅储</el-button> - <el-button @click="searchBtn">娓呯┖</el-button> + <el-button type="primary" @click="searchclick">鎼滅储</el-button> + <el-button @click="searchClearBtn">娓呯┖</el-button> </el-form-item> </el-form> <div> @@ -37,10 +33,14 @@ <div class="dict-table"> <el-table ref="multipleTableRef" :data="tableData" border style="width: 100%" class="multipleTableRef" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" /> - <el-table-column prop="date" label="瀛楀吀缂栧彿"></el-table-column> - <el-table-column prop="name" label="瀛楀吀鍚嶇О"></el-table-column> - <el-table-column prop="name" label="瀛楀吀鎺掑簭"></el-table-column> - <el-table-column prop="name" label="灏佸瓨"></el-table-column> + <el-table-column prop="code" label="瀛楀吀缂栧彿"></el-table-column> + <el-table-column prop="dictValue" label="瀛楀吀鍚嶇О"></el-table-column> + <el-table-column prop="sort" label="瀛楀吀鎺掑簭"></el-table-column> + <el-table-column prop="isSealed" label="灏佸瓨"> + <template #default="scope"> + <div>{{scope.row.isSealed == 0?"鍚�":"鏄�"}}</div> + </template> + </el-table-column> <el-table-column fixed="right" label="鎿嶄綔"> <template #default="scope"> <el-button text type="primary" size="small" @click="table_show(scope.row, scope.$index)">鏌ョ湅</el-button> @@ -51,19 +51,20 @@ </el-table-column> </el-table> <el-pagination + style="margin-top: 12px;" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage4" - :page-sizes="[100, 200, 300, 400]" - :page-size="100" + :page-sizes="[15, 50, 100]" + :page-size="15" layout="total, sizes, prev, pager, next, jumper" - :total="400"> + :total="total"> </el-pagination> </div> </div> </div> - <save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSuccess" @closed="dialog.save=false"></save-dialog> + <save-dialog v-if="dialog.save" ref="saveDialog" @success="addDictSuccess" @closed="dialog.save=false"></save-dialog> <allocation-dialog v-if="dialog.allocation" ref="allocationDialog" @success="handleSuccess" @closed="dialog.allocation=false"></allocation-dialog> </template> <script> @@ -73,8 +74,12 @@ name: "allocation", data(){ return { + total: 0, searchData: { - test: "" + code: "", + dictValue: "", + current: "1", + size: "15" }, dialog: { save: false, @@ -87,48 +92,44 @@ label: '榛勯噾绯�' }], input3: '', - tableData: [{ - date: '2016-05-02', - name: '鐜嬪皬铏�', - province: '涓婃捣', - city: '鏅檧鍖�', - address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�', - zip: 200333 - }, { - date: '2016-05-04', - name: '鐜嬪皬铏�', - province: '涓婃捣', - city: '鏅檧鍖�', - address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1517 寮�', - zip: 200333 - }, { - date: '2016-05-01', - name: '鐜嬪皬铏�', - province: '涓婃捣', - city: '鏅檧鍖�', - address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1519 寮�', - zip: 200333 - }, { - date: '2016-05-03', - name: '鐜嬪皬铏�', - province: '涓婃捣', - city: '鏅檧鍖�', - address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1516 寮�', - zip: 200333 - }] + tableData: [] } }, created(){ }, mounted(){ - + this.searchBtn(); }, components: { saveDialog,allocationDialog }, methods: { - searchBtn() {}, + addDictSuccess(addDictForm) { + this.searchClearBtn(); + }, + searchClearBtn() { + this.searchData = { + code: "", + dictValue: "", + current: "1", + size: "15" + } + this.searchBtn(); + }, + searchclick() { + this.searchData.current = "1"; + this.searchData.size = "15"; + this.searchBtn(); + }, + searchBtn() { + this.$HTTP.get("/api/blade-system/dict/parent-list",this.searchData).then(res=> { + if(res.code == 200) { + this.tableData = res.data.records; + this.total = res.data.total; + } + }) + }, //瀛楀吀閰嶇疆 table_allocation(row) { this.dialog.allocation = true; @@ -172,9 +173,14 @@ }, handleSizeChange(val) { console.log(`姣忛〉 ${val} 鏉); + this.searchData.current = "1"; + this.searchData.size = val; + this.searchBtn(); }, handleCurrentChange(val) { console.log(`褰撳墠椤�: ${val}`); + this.searchData.current = val; + this.searchBtn(); } } } diff --git a/src/views/console/system/menu.vue b/src/views/console/system/menu.vue index 4fd6ad5..ea69a17 100644 --- a/src/views/console/system/menu.vue +++ b/src/views/console/system/menu.vue @@ -72,7 +72,7 @@ <el-button text type="primary" size="small" @click="table_show(scope.row, scope.$index)">鏌ョ湅</el-button> <el-button type="text" size="small" @click="table_edit(scope.row, scope.$index)">缂栬緫</el-button> <el-button text type="primary" size="small" @click="table_del(scope.row, scope.$index)">鍒犻櫎</el-button> - <el-button text type="primary" size="small" @click="addPerson(scope.row, scope.$index)">鏂板瀛愰」</el-button> + <el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index,'fixed')">鏂板瀛愰」</el-button> </template> </el-table-column> </el-table> @@ -88,6 +88,7 @@ name: "allocation", data(){ return { + selection: [], applicationList: [], searchData: { name: "", @@ -123,7 +124,7 @@ methods: { handleSuccess(formAddMenu) { this.searchData.parentId = formAddMenu.parentId; - this.searchBtn(); + this.searchClearBtn(); }, tableLoad(row,treeNode,resolve) { this.searchData.parentId= row.id; @@ -177,7 +178,7 @@ this.$HTTP.post("/api/blade-system/menu/remove?ids="+row.id).then(res=> { if(res.code == 200) { that.$message.success("鎿嶄綔鎴愬姛"); - that.searchBtn(); + that.searchclick(); } }) }).catch(() => { @@ -191,12 +192,15 @@ this.$refs.saveDialog.open() }) }, - table_edit(row){ + table_edit(row,index,fixed){ this.dialog.save = true this.$HTTP.get("/api/blade-system/menu/detail?id="+row.id).then(res=> { if(res.code == 200) { this.dialog.save = true; this.$nextTick(() => { + if(fixed) { //鍒ゆ柇鏂板瀛愰」 + res.data.fixed = "fixed"; + } this.$refs.saveDialog.open('edit').setData(res.data); }) } @@ -209,8 +213,30 @@ this.$refs.saveDialog.open('show').setData(row) }) }, - handleSelectionChange() {}, - delPerson() {}, + handleSelectionChange(selection) { + this.selection = selection; + }, + delPerson() { + if(this.selection.length == 0) { + this.$message({ + message: '璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�', + type: 'warning' + }); + return; + } + var selStr = ""; + this.selection.map(item=> { + selStr += item.id + "," + }) + selStr = selStr.replace(/,$/, ''); + var that = this; + this.$HTTP.post("/api/blade-system/menu/remove?ids="+selStr).then(res=> { + if(res.code == 200) { + that.$message.success("鎿嶄綔鎴愬姛"); + that.searchclick(); + } + }) + }, changeDepartment() { this.departmentVisible = true; }, -- Gitblit v1.9.3