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