朱佳吉
2024-05-09 1e9c7a02ec2b8caf7dda6000d7f0f79849df6b45
src/components/view/person-manage.vue
@@ -35,6 +35,15 @@
      padding: 20px;
   }
</style>
<style>
  .el-upload--text{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
</style>
<template>
   <div class="person_manage">
@@ -42,13 +51,13 @@
         <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" @click="opeaAdd">新增人员</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_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>
@@ -97,9 +106,11 @@
                     order: 'asc'
                  }
               },
               isIndex: false,
               showSelect: true,
               select: true,
          row: 2,
               isIndex: true,
               showSelect: false,
               select: false,
          init:false,
               do: [{
                  id: 'update',
                  font: '编辑',
@@ -118,20 +129,54 @@
                        type: 'danger',
                        label: '停用'
                     }]
                  }
               },
               selectField: {
                  state: {
                     select: [{
                        value: 1,
                        type: 'success',
                        label: '启用'
                     },{
                        value: 0,
                        type: 'danger',
                        label: '停用'
                     }]
                  },
                  roleId: {
                     select: []
                  }
               }
               },
          /* cascaderField:{
            departId:{
              tree:[]
            },
            // 字段配置
            props:{
              value:'id',
              label:'name',
              checkStrictly: true
            }
          }, */
               requiredAdd:['account','name','state','roleId','password'],
               requiredUp:['account','name','state','roleId'],
          addUpload:['pictureUrl','signatureUrl'],
          addUploadConfig:{
            accept:'.png, .jpg, .jpeg, .gif',
            url:this.$api.deviceScope.uploadFile
          },
            },
            entityCopy: {},
            upIndex: 0,
            addDia: false
            addDia: false,
            addPower: true
         }
      },
      mounted() {
      this.selectTreeList()
         this.selectRole()
         this.entityCopy = this.HaveJson(this.componentData.entity)
         this.getPower()
      },
      methods: {
         refreshTable() {
@@ -153,12 +198,46 @@
                     value: a.id
                  })
               })
               this.componentData.tagField.roleId.select = str
               this.componentData.selectField.roleId.select = str
            })
         },
         opeaAdd(){
            this.$refs.ValueTable.openAddDia(this.$api.user.addUser);
         },
      selectTreeList(){
       /* this.$axios.get(this.$api.department.selectDepartment).then(res => {
          this.componentData.cascaderField.departId.tree = this.handleTree(res.data[0].children)
            }) */
        this.$refs.ValueTable.selectList()
      },
      handleTree(arr){
        arr.forEach(a => {
          if(a.children.length==0){
            a.children = null;
          }else{
            this.handleTree(a.children)
          }
        })
        return arr
      },
         // 权限分配
         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
         }
      }
   }
</script>
</script>