From 5c5eccdb11df86dbd0200ffa316cddb7a671d839 Mon Sep 17 00:00:00 2001
From: 李林 <z1292839451@163.com>
Date: 星期六, 23 十二月 2023 23:11:26 +0800
Subject: [PATCH] 框架引入

---
 src/components/view/person-manage.vue |  128 +++++++++++++++++++++++++++++++++++-------
 1 files changed, 106 insertions(+), 22 deletions(-)

diff --git a/src/components/view/person-manage.vue b/src/components/view/person-manage.vue
index 289d313..89674b0 100644
--- a/src/components/view/person-manage.vue
+++ b/src/components/view/person-manage.vue
@@ -3,28 +3,36 @@
 		height: 60px;
 		line-height: 60px;
 	}
-	
-	.search{
+
+	.search {
 		background-color: #fff;
 		height: 80px;
 		display: flex;
 		align-items: center;
 	}
-	
-	.search_thing{
+
+	.search_thing {
 		width: 350px;
 		display: flex;
 		align-items: center;
 	}
-	
-	.search_label{
+
+	.search_label {
 		width: 110px;
 		font-size: 14px;
 		text-align: right;
 	}
-	
-	.search_input{
+
+	.search_input {
 		width: calc(100% - 110px);
+	}
+
+	.table {
+		margin-top: 10px;
+		background-color: #fff;
+		width: calc(100% - 40px);
+		height: calc(100% - 60px - 80px - 10px - 40px);
+		padding: 20px;
 	}
 </style>
 
@@ -34,20 +42,21 @@
 			<el-row class="title">
 				<el-col :span="12" style="padding-left: 20px;">浜哄憳绠$悊</el-col>
 				<el-col :span="12" style="text-align: right;">
-					<el-button size="medium" type="primary">鏂板浜哄憳</el-button>
+					<el-button size="medium" type="primary" @click="opeaAdd">鏂板浜哄憳</el-button>
 				</el-col>
 			</el-row>
 		</div>
 		<div class="search">
 			<div class="search_thing">
 				<div class="search_label">瀹㈡埛鍚嶇О锛�</div>
-				<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="search.customer"></el-input></div>
+				<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
+						v-model="componentData.entity.name" @keyup.enter.native="refreshTable()"></el-input></div>
 			</div>
 			<div class="search_thing">
 				<div class="search_label">璐﹀彿鐘舵�侊細</div>
 				<div class="search_input">
-					<el-select size="small" v-model="search.state" style="width: 100%;">
-						<el-option label="鍏ㄩ儴" :value="2"></el-option>
+					<el-select size="small" v-model="componentData.entity.state" style="width: 100%;">
+						<el-option label="鍏ㄩ儴" :value="null"></el-option>
 						<el-option label="鍚敤" :value="1"></el-option>
 						<el-option label="鍋滅敤" :value="0"></el-option>
 					</el-select>
@@ -55,25 +64,100 @@
 			</div>
 			<div class="search_thing">
 				<div class="search_label">鍏徃鍚嶇О锛�</div>
-				<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="search.company"></el-input></div>
+				<div class="search_input">
+					<el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="componentData.entity.company" @keyup.enter.native="refreshTable()"></el-input>
+				</div>
 			</div>
 			<div class="search_thing" style="padding-left: 30px;">
-				<el-button size="small">閲� 缃�</el-button>
-				<el-button size="small" type="primary">鏌� 璇�</el-button>
+				<el-button size="small" @click="refresh()">閲� 缃�</el-button>
+				<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
 			</div>
+		</div>
+		<div class="table">
+			<ValueTable ref="ValueTable" :url="$api.user.selectUserList" :upUrl="$api.user.updateUser" :componentData="componentData" :key="upIndex" @upUser="upUser"/>
 		</div>
 	</div>
 </template>
 
 <script>
-	export default{
+	import ValueTable from '../tool/value-table.vue'
+	export default {
+		components: {
+			ValueTable
+		},
 		data() {
-			return{
-				search: {
-					customer: null,
-					state: 2,
-					company: null
-				}
+			return {
+				componentData: {
+					entity: {
+						name: null,
+						state: null,
+						company: null,
+						orderBy:{
+							field: 'id',
+							order: 'asc'
+						}
+					},
+					isIndex: false,
+					showSelect: true,
+					select: true,
+					do: [{
+						id: 'update',
+						font: '缂栬緫',
+						type: 'text',
+						method: 'doDiy',
+						field:['createUserName','updateUserName','roleName','瑙掕壊=roleId','瀵嗙爜=password']
+					}],
+					tagField: {
+						state: {
+							select: [{
+								value: 1,
+								type: 'success',
+								label: '鍚敤'
+							},{
+								value: 0,
+								type: 'danger',
+								label: '鍋滅敤'
+							}]
+						},
+						roleId: {
+							select: []
+						}
+					}
+				},
+				entityCopy: {},
+				upIndex: 0,
+				addDia: false
+			}
+		},
+		mounted() {
+			this.selectRole()
+			this.entityCopy = this.HaveJson(this.componentData.entity)
+		},
+		methods: {
+			refreshTable() {
+				this.$refs['ValueTable'].selectList()
+			},
+			refresh() {
+				this.componentData.entity = this.HaveJson(this.entityCopy)
+				this.upIndex++
+			},
+			upUser(row){
+				console.log(row);
+			},
+			selectRole(){
+				this.$axios.get(this.$api.user.selectRoleList).then(res=>{
+					var str = []
+					res.data.forEach(a=>{
+						str.push({
+							label: a.name,
+							value: a.id
+						})
+					})
+					this.componentData.tagField.roleId.select = str
+				})
+			},
+			opeaAdd(){
+				this.$refs.ValueTable.openAddDia(this.$api.user.addUser);
 			}
 		}
 	}

--
Gitblit v1.9.3