From c91ea4d8cda53c0f319c9f4306ff03e7c774bca0 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期五, 15 三月 2024 16:03:56 +0800
Subject: [PATCH] 业务管理:检验任务(update)
---
src/components/view/person-manage.vue | 163 +++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 141 insertions(+), 22 deletions(-)
diff --git a/src/components/view/person-manage.vue b/src/components/view/person-manage.vue
index 289d313..6b6a58d 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" v-if="addPower">鏂板浜哄憳</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_label">鐢ㄦ埛鍚嶏細</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,135 @@
</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: true,
+ showSelect: false,
+ select: false,
+ 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: '鍋滅敤'
+ }]
+ }
+ },
+ selectField: {
+ state: {
+ select: [{
+ value: 1,
+ type: 'success',
+ label: '鍚敤'
+ },{
+ value: 0,
+ type: 'danger',
+ label: '鍋滅敤'
+ }]
+ },
+ roleId: {
+ select: []
+ }
+ },
+ requiredAdd:['account','name','state','roleId','password'],
+ requiredUp:['account','name','state','roleId']
+ },
+ entityCopy: {},
+ upIndex: 0,
+ addDia: false,
+ addPower: true
+ }
+ },
+ mounted() {
+ this.selectRole()
+ this.entityCopy = this.HaveJson(this.componentData.entity)
+ this.getPower()
+ },
+ 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.selectField.roleId.select = str
+ })
+ },
+ opeaAdd(){
+ this.$refs.ValueTable.openAddDia(this.$api.user.addUser);
+ },
+ // 鏉冮檺鍒嗛厤
+ getPower(){
+ let power = JSON.parse(sessionStorage.getItem('power'))
+ let up = false
+ let add = false
+ for (var i = 0; i < power.length; i++) {
+ if(power[i].menuMethod=='updateUser'){
+ up = true
+ }
+ if(power[i].menuMethod=='addUser'){
+ add = true
+ }
}
+ if(!up){
+ this.componentData.do.splice(0, 1)
+ }
+ this.addPower = add
}
}
}
--
Gitblit v1.9.3