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