From fd7586c8d91473d2850af1e48b12f1a289e6b8d1 Mon Sep 17 00:00:00 2001 From: gaoshp <291585735@qq.com> Date: 星期四, 13 六月 2024 00:10:43 +0800 Subject: [PATCH] 新增文件 --- src/views/console/system/allocationDialog.vue | 204 ++++++++++++++++++++++++++++++++------------------ 1 files changed, 131 insertions(+), 73 deletions(-) diff --git a/src/views/console/system/allocationDialog.vue b/src/views/console/system/allocationDialog.vue index 50e8aeb..041fb0a 100644 --- a/src/views/console/system/allocationDialog.vue +++ b/src/views/console/system/allocationDialog.vue @@ -2,47 +2,44 @@ * @Author: lzhe lzhe@example.com * @Date: 2024-03-26 10:28:33 * @LastEditors: lzhe lzhe@example.com - * @LastEditTime: 2024-03-29 15:35:43 + * @LastEditTime: 2024-04-02 18:28:33 * @FilePath: /smart-web/src/views/master/person/main/index.vue * @Description: 杩欐槸榛樿璁剧疆,璇疯缃甡customMade`, 鎵撳紑koroFileHeader鏌ョ湅閰嶇疆 杩涜璁剧疆: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE --> <template> - <el-dialog title="瀛楀吀鍚嶇О瀛楀吀閰嶇疆" v-model="visible" :width="800" destroy-on-close @closed="$emit('closed')"> + <el-dialog title="瀛楀吀鍚嶇О瀛楀吀閰嶇疆" v-model="visible" :width="1000" destroy-on-close @closed="$emit('closed')"> <div class="dict-main"> - <el-form :inline="true" :model="searchData" abel-width="120px"> + <el-form :inline="true" :model="searchData" label-width="80px"> <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-option label="Zone one" value="shanghai" /> - <el-option label="Zone two" value="beijing" /> - </el-select> + <el-input v-model="searchData.dictValue" placeholder="瀛楀吀鍚嶇О" clearable></el-input> </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="searchModalclick">鎼滅储</el-button> + <el-button @click="searchClearModalBtn">娓呯┖</el-button> </el-form-item> </el-form> <div> <div class="dict-Btn"> <div class="dict-btn-bottom"> - <el-button type="primary" @click="addPerson">+ 鏂板</el-button> - <el-button type="danger" plain @click="delPerson">鍒犻櫎</el-button> + <el-button type="primary" @click="addAllocation">+ 鏂板</el-button> + <el-button type="danger" plain @click="delAllocation">鍒犻櫎</el-button> </div> </div> <div class="dict-table"> - <el-table ref="multipleTableRef" :data="tableData" border style="width: 100%" class="multipleTableRef" @selection-change="handleSelectionChange"> + <el-table ref="modalTeTableRef" :data="allocationTableData" border style="width: 100%" class="modalTeTableRef" row-key="id" @selection-change="modalSelectionChange" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"> <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 fixed="right" label="鎿嶄綔"> + <el-table-column prop="code" label="瀛楀吀缂栧彿" width="220"></el-table-column> + <el-table-column prop="dictValue" label="瀛楀吀鍚嶇О"></el-table-column> + <el-table-column prop="dictKey" label="瀛楀吀閿��"></el-table-column> + <el-table-column prop="isSealed" label="灏佸瓨" width="60"> + <template #default="scope"> + <div>{{scope.row.isSealed == 0?"鍚�":"鏄�"}}</div> + </template> + </el-table-column> + <el-table-column fixed="right" label="鎿嶄綔" width="160"> <template #default="scope"> <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> @@ -55,15 +52,15 @@ @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"> </el-pagination> </div> </div> </div> - <SubitemAdd-dict v-if="dialog.save" ref="SubitemAddDict" @success="handleSuccess" @closed="dialog.allocation=false"></SubitemAdd-dict> + <SubitemAdd-dict v-if="dialog.allocation" ref="SubitemAddDict" @success="allocationSuccess" @closed="dialog.allocation=false"></SubitemAdd-dict> </el-dialog> </template> @@ -73,12 +70,19 @@ emits: ['success', 'closed'], data(){ return { + oldRow: {}, + selection: [], + mode: "edit", visible: false, searchData: { - test: "" + code: "", + dictValue: "", + current: "1", + size: "15", + parentId: "" }, dialog: { - save: false + allocation: false }, leftActive: true, input: '', @@ -87,82 +91,123 @@ 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 - }] + allocationTableData: [], } }, created(){ }, mounted(){ - }, components: { SubitemAddDict }, methods: { - //鏄剧ず - open(mode='add'){ - this.mode = mode; - this.visible = true; - return this + allocationSuccess(val) { + this.searchBtn(); }, - searchBtn() {}, + searchModalclick() { + this.searchData.current = "1"; + this.searchData.size = "15"; + this.searchBtn(); + }, + searchClearModalBtn() { + this.searchData.current = "1"; + this.searchData.size = "15"; + this.searchData.code = ""; + this.searchData.dictValue = ""; + this.searchBtn(); + }, + searchBtn() { + this.$HTTP.get("/api/blade-system/dict/child-list",this.searchData).then(res=> { + if(res.code == 200) { + this.allocationTableData = res.data; + //this.total = res.data.total; + } + }) + }, //瀛楀吀閰嶇疆 table_allocation(row) { - this.addPerson(); + this.addAllocation(row,"subitem"); + }, + 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; + } + }) }, //鍒犻櫎 - table_del(row) {}, + table_del(row) { + var that = this; + this.$confirm(`纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?`, '', { + type: 'warning' + }).then(() => { + this.$HTTP.post("/api/blade-system/dict/remove?ids="+row.id).then(res=> { + if(res.code == 200) { + that.$message.success("鎿嶄綔鎴愬姛"); + that.searchBtn(); + } + }) + }).catch(() => { + + }) + }, //娣诲姞 - addPerson(){ - this.dialog.save = true + addAllocation(row,type){ + this.dialog.allocation = true; this.$nextTick(() => { - this.$refs.SubitemAddDict.open() + if(type == "subitem") { //娣诲姞瀛愰」 + this.$refs.SubitemAddDict.open('edit').setData(row) + }else { + this.$refs.SubitemAddDict.open('edit').setData(this.oldRow) + } }) }, table_edit(row){ - this.dialog.save = true + this.dialog.allocation = true + row.mode = "edit"; this.$nextTick(() => { this.$refs.SubitemAddDict.open('edit').setData(row) }) }, //鏌ョ湅 table_show(row){ - this.dialog.save = true + this.dialog.allocation = true + row.mode = "show"; this.$nextTick(() => { this.$refs.SubitemAddDict.open('show').setData(row) }) }, - handleSelectionChange() {}, - delPerson() {}, + modalSelectionChange(selection) { + this.selection = selection; + }, + delAllocation() { + 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/dict/remove?ids="+selStr).then(res=> { + if(res.code == 200) { + that.$message.success("鎿嶄綔鎴愬姛"); + that.searchModalclick(); + } + }) + }, changeDepartment() { this.departmentVisible = true; }, @@ -178,6 +223,19 @@ }, handleCurrentChange(val) { console.log(`褰撳墠椤�: ${val}`); + }, + //琛ㄥ崟娉ㄥ叆鏁版嵁 + setData(row){ + //鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘� + this.searchData.parentId = row.id; + this.oldRow = row; + this.searchBtn(); + }, + //鏄剧ず + open(mode='add'){ + this.mode = mode; + this.visible = true; + return this } } } @@ -212,7 +270,7 @@ margin-bottom: 8px; } - .multipleTableRef { + .modalTeTableRef { margin-bottom: 8px; } </style> \ No newline at end of file -- Gitblit v1.9.3