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/dict.vue |  179 ++++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 116 insertions(+), 63 deletions(-)

diff --git a/src/views/console/system/dict.vue b/src/views/console/system/dict.vue
index 92e39e1..4e755a9 100644
--- a/src/views/console/system/dict.vue
+++ b/src/views/console/system/dict.vue
@@ -2,45 +2,46 @@
  * @Author: lzhe lzhe@example.com
  * @Date: 2024-03-26 10:28:33
  * @LastEditors: lzhe lzhe@example.com
- * @LastEditTime: 2024-03-29 15:31:38
+ * @LastEditTime: 2024-04-02 17:48:31
  * @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>
 	<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="searchclick">鎼滅储</el-button>
+				<el-button @click="searchClearBtn">娓呯┖</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="addData">+ 鏂板</el-button>
+					<el-button type="danger" plain @click="delData">鍒犻櫎</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-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="瀛楀吀缂栧彿">
+						<template #default="scope">
+							<el-check-tag type="info" checked @change="table_allocation(scope.row, scope.$index)">{{scope.row.code}}</el-check-tag>
+						</template>
+					</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,20 +52,21 @@
 					</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>
-	<allocation-dialog v-if="dialog.allocation" ref="allocationDialog" @success="handleSuccess" @closed="dialog.allocation=false"></allocation-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" :getModalData="getModalData" @success="handleSuccess" @closed="dialog.allocation=false"></allocation-dialog>
 </template>
 <script>
 	import saveDialog from './addDict'
@@ -73,8 +75,14 @@
 		name: "allocation",
 		data(){
 			return {
+				getModalData: [],
+				selection: [],
+				total: 0,
 				searchData: {
-					test: ""
+					code: "",
+					dictValue: "",
+					current: "1",
+					size: "15"
 				},
 				dialog: {
 					save: false,
@@ -87,59 +95,72 @@
 					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() {},
+			codeClick() {
+				
+			},
+			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;
 				this.$nextTick(() => {
-					this.$refs.allocationDialog.open()
+					this.$refs.allocationDialog.open('edit').setData(row);
 				})
 			},
 			//鍒犻櫎
-			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(){
+			addData(){
 				this.dialog.save = true
 				this.$nextTick(() => {
 					this.$refs.saveDialog.open()
@@ -147,8 +168,13 @@
 			},
 			table_edit(row){
 				this.dialog.save = true
-				this.$nextTick(() => {
-					this.$refs.saveDialog.open('edit').setData(row)
+				this.$HTTP.get("/api/blade-system/dict/detail?id="+row.id).then(res=> {
+					if(res.code == 200) {
+						this.dialog.save = true;
+						this.$nextTick(() => {
+							this.$refs.saveDialog.open('edit').setData(res.data);
+						})
+					}
 				})
 			},
 			//鏌ョ湅
@@ -158,8 +184,30 @@
 					this.$refs.saveDialog.open('show').setData(row)
 				})
 			},
-			handleSelectionChange() {},
-			delPerson() {},
+			handleSelectionChange(selection) {
+				this.selection = selection;
+			},
+			delData() {
+				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.searchclick();
+					}
+				})
+			},
 			changeDepartment() {
 				this.departmentVisible = true;
 			},
@@ -172,9 +220,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();
 			}
 		}
 	}

--
Gitblit v1.9.3