|  | @@ -22,8 +22,8 @@
 | 
	
		
			
				|  |  |            <el-table-column align='center' prop="organName"
 | 
	
		
			
				|  |  |                             label="所属部门">
 | 
	
		
			
				|  |  |            </el-table-column>
 | 
	
		
			
				|  |  | -          <el-table-column align='center' prop="lockFlag"
 | 
	
		
			
				|  |  | -                           label="状态">
 | 
	
		
			
				|  |  | +          <el-table-column align='center'
 | 
	
		
			
				|  |  | +                           label="状态" :formatter="formatLockFlag">
 | 
	
		
			
				|  |  |            </el-table-column>
 | 
	
		
			
				|  |  |            <el-table-column align='center' prop="entryDate"
 | 
	
		
			
				|  |  |                             label="入职时间">
 | 
	
	
		
			
				|  | @@ -31,13 +31,13 @@
 | 
	
		
			
				|  |  |            <el-table-column align='center' prop="demissionDate"
 | 
	
		
			
				|  |  |                             label="离职时间">
 | 
	
		
			
				|  |  |            </el-table-column>
 | 
	
		
			
				|  |  | -          <el-table-column align='center'
 | 
	
		
			
				|  |  | +          <el-table-column align='center' width="250px"
 | 
	
		
			
				|  |  |                             label="操作">
 | 
	
		
			
				|  |  |              <template slot-scope="scope">
 | 
	
		
			
				|  |  | -              <el-button type="text">重置密码</el-button>
 | 
	
		
			
				|  |  | -              <!-- /解冻 -->
 | 
	
		
			
				|  |  | -              <el-button  type="text">冻结</el-button> 
 | 
	
		
			
				|  |  | -              <el-button type="text">离职</el-button>
 | 
	
		
			
				|  |  | +              <el-button @click="roleOperation('update', scope.row)" type="text">修改</el-button>
 | 
	
		
			
				|  |  | +              <el-button @click="onStaffOperation('RESET_PASSWORD', scope.row)" type="text">重置密码</el-button>
 | 
	
		
			
				|  |  | +              <el-button @click="onStaffOperation('LOCK_UNLOCK', scope.row)" type="text">{{ scope.row.lockFlag == 1 ? '解冻' : '冻结' }}</el-button> 
 | 
	
		
			
				|  |  | +              <el-button @click="onStaffOperation('DEMISSION', scope.row)" type="text">离职</el-button>
 | 
	
		
			
				|  |  |              </template>
 | 
	
		
			
				|  |  |            </el-table-column>
 | 
	
		
			
				|  |  |          </el-table>
 | 
	
	
		
			
				|  | @@ -56,22 +56,22 @@
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="性别" prop="gender" :label-width="formLabelWidth">
 | 
	
		
			
				|  |  |            <el-select v-model="form.gender">
 | 
	
		
			
				|  |  | -            <el-option label="男" value="MAN"></el-option>
 | 
	
		
			
				|  |  | -            <el-option label="女" value="WOMAN"></el-option>
 | 
	
		
			
				|  |  | +            <el-option label="男" value="1"></el-option>
 | 
	
		
			
				|  |  | +            <el-option label="女" value="0"></el-option>
 | 
	
		
			
				|  |  |            </el-select>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="手机号" prop="phone" :label-width="formLabelWidth">
 | 
	
		
			
				|  |  | -          <el-input v-model="form.phone" autocomplete="off"></el-input>
 | 
	
		
			
				|  |  | +          <el-input v-model.number="form.phone" autocomplete="off"></el-input>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="角色分类" prop="roleName" :label-width="formLabelWidth">
 | 
	
		
			
				|  |  |            <el-select v-model="form.roleName">
 | 
	
		
			
				|  |  |              <el-option v-for="item in roleList" :key="item.value" :label="item.label" :value="item.value"></el-option>
 | 
	
		
			
				|  |  |            </el-select>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  | -        <el-form-item label="所属部门" prop="organName" :label-width="formLabelWidth">
 | 
	
		
			
				|  |  | -          <el-select v-model="form.organName">
 | 
	
		
			
				|  |  | -            <el-option label="男" value="MAN"></el-option>
 | 
	
		
			
				|  |  | -            <el-option label="女" value="WOMAN"></el-option>
 | 
	
		
			
				|  |  | +        <el-form-item label="所属部门" prop="organIDList" :label-width="formLabelWidth">
 | 
	
		
			
				|  |  | +          <el-select v-model="form.organIDList" multiple collapse-tags>
 | 
	
		
			
				|  |  | +            <el-option v-for="item in branchList" :key="item.value" 
 | 
	
		
			
				|  |  | +              :label="item.label" :value="item.value"></el-option>
 | 
	
		
			
				|  |  |            </el-select>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="工作类型" prop="jobNature" :label-width="formLabelWidth">
 | 
	
	
		
			
				|  | @@ -84,7 +84,7 @@
 | 
	
		
			
				|  |  |          <el-form-item label="入职时间" prop="entryDate" :label-width="formLabelWidth">
 | 
	
		
			
				|  |  |            <el-date-picker
 | 
	
		
			
				|  |  |              v-model="form.entryDate"
 | 
	
		
			
				|  |  | -            type="date"
 | 
	
		
			
				|  |  | +            type="date" value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  |              placeholder="选择日期">
 | 
	
		
			
				|  |  |            </el-date-picker>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
	
		
			
				|  | @@ -98,7 +98,8 @@
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  |  import pagination from '@/components/Pagination/index'
 | 
	
		
			
				|  |  | -import { queryEmployByOrganId, getUserRole, organizationQueryPage, organizationAdd } from '@/api/systemManage'
 | 
	
		
			
				|  |  | +import { queryEmployByOrganId, employeeOperate, getUserRole, employeeAdd, employeeUpdate } from '@/api/systemManage'
 | 
	
		
			
				|  |  | +import { branchQueryPage } from '@/api/specialSetting'
 | 
	
		
			
				|  |  |  import store from '@/store'
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  |    components: { pagination },
 | 
	
	
		
			
				|  | @@ -117,6 +118,7 @@ export default {
 | 
	
		
			
				|  |  |        roleStatus: false,
 | 
	
		
			
				|  |  |        formActionTitle: 'create',
 | 
	
		
			
				|  |  |        roleList: [], // 角色列表
 | 
	
		
			
				|  |  | +      branchList: [], // 分部列表
 | 
	
		
			
				|  |  |        formTitle: {
 | 
	
		
			
				|  |  |          create: '添加员工',
 | 
	
		
			
				|  |  |          update: '修改员工'
 | 
	
	
		
			
				|  | @@ -127,7 +129,7 @@ export default {
 | 
	
		
			
				|  |  |          gender: null,
 | 
	
		
			
				|  |  |          phone: null,
 | 
	
		
			
				|  |  |          roleName: null,
 | 
	
		
			
				|  |  | -        organName: null,
 | 
	
		
			
				|  |  | +        organIDList: [],
 | 
	
		
			
				|  |  |          jobNature: null,
 | 
	
		
			
				|  |  |          entryDate: null
 | 
	
		
			
				|  |  |        },
 | 
	
	
		
			
				|  | @@ -136,9 +138,9 @@ export default {
 | 
	
		
			
				|  |  |          gender: [{required: true, message: '请选择性别', trigger: 'change'}],
 | 
	
		
			
				|  |  |          phone: [{ type: 'number', required: true, message: '手机号输入有误', trigger: 'blur'}],
 | 
	
		
			
				|  |  |          roleName: [{required: true, message: '请选择分类', trigger: 'change'}],
 | 
	
		
			
				|  |  | -        organName: [{required: true, message: '请选择所属部门', trigger: 'change'}],
 | 
	
		
			
				|  |  | +        organIDList: [{type: 'array', required: true, message: '请选择所属部门', trigger: 'change'}],
 | 
	
		
			
				|  |  |          jobNature: [{required: true, message: '请选择工作类型', trigger: 'change'}],
 | 
	
		
			
				|  |  | -        entryDate: [{ type: 'date', required: true, message: '请选择入职时间', trigger: 'blur'}],
 | 
	
		
			
				|  |  | +        entryDate: [{ required: true, message: '请选择入职时间', trigger: 'blur'}],
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    },
 | 
	
	
		
			
				|  | @@ -150,18 +152,14 @@ export default {
 | 
	
		
			
				|  |  |      onRoleSubmit(formName) {
 | 
	
		
			
				|  |  |        this.$refs[formName].validate((valid) => {
 | 
	
		
			
				|  |  |          if (valid) {
 | 
	
		
			
				|  |  | +          this.form.organIDList = this.form.organIDList.join(',')
 | 
	
		
			
				|  |  |            if(this.formActionTitle == 'create') {
 | 
	
		
			
				|  |  | -            organizationAdd(this.form).then(res => {
 | 
	
		
			
				|  |  | -              if(res.code == 200) {
 | 
	
		
			
				|  |  | -                this.$message({
 | 
	
		
			
				|  |  | -                  message: '添加成功',
 | 
	
		
			
				|  |  | -                  type: 'success'
 | 
	
		
			
				|  |  | -                })
 | 
	
		
			
				|  |  | -                this.roleStatus = false
 | 
	
		
			
				|  |  | -                this.getList()
 | 
	
		
			
				|  |  | -              } else {
 | 
	
		
			
				|  |  | -                this.$message.error(res.msg)
 | 
	
		
			
				|  |  | -              }
 | 
	
		
			
				|  |  | +            employeeAdd(this.form).then(res => {
 | 
	
		
			
				|  |  | +              this.messageTips('添加', res)
 | 
	
		
			
				|  |  | +            })
 | 
	
		
			
				|  |  | +          } else if(this.formActionTitle == 'update') {
 | 
	
		
			
				|  |  | +            employeeUpdate(this.form).then(res => {
 | 
	
		
			
				|  |  | +              this.messageTips('修改', res)
 | 
	
		
			
				|  |  |              })
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  |          } else {
 | 
	
	
		
			
				|  | @@ -169,6 +167,18 @@ export default {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | +    messageTips(title, res) {
 | 
	
		
			
				|  |  | +      if(res.code == 200) {
 | 
	
		
			
				|  |  | +        this.$message({
 | 
	
		
			
				|  |  | +          message: title + '成功',
 | 
	
		
			
				|  |  | +          type: 'success'
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +        this.branchStatus = false
 | 
	
		
			
				|  |  | +        this.getList()
 | 
	
		
			
				|  |  | +      } else {
 | 
	
		
			
				|  |  | +        this.$message.error(res.msg)
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  |      getList () {
 | 
	
		
			
				|  |  |        queryEmployByOrganId({ organId: this.organId }).then(res => {
 | 
	
		
			
				|  |  |          if(res.code == 200 && res.data) {
 | 
	
	
		
			
				|  | @@ -187,24 +197,66 @@ export default {
 | 
	
		
			
				|  |  |            })
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  | -      organizationQueryPage({ // 获取分部
 | 
	
		
			
				|  |  | +      branchQueryPage({ // 获取分部
 | 
	
		
			
				|  |  |          delFlag: 0,
 | 
	
		
			
				|  |  |          rows: 9999
 | 
	
		
			
				|  |  |        }).then(res => {
 | 
	
		
			
				|  |  | -        // console.log(res)
 | 
	
		
			
				|  |  | +        if(res.code == 200 && res.data && res.data.rows) {
 | 
	
		
			
				|  |  | +          res.data.rows.forEach(item => {
 | 
	
		
			
				|  |  | +            this.branchList.push({
 | 
	
		
			
				|  |  | +              label: item.name,
 | 
	
		
			
				|  |  | +              value: item.id
 | 
	
		
			
				|  |  | +            })
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    roleOperation(type) {
 | 
	
		
			
				|  |  | +    roleOperation(type, data) {
 | 
	
		
			
				|  |  |        this.formActionTitle = type
 | 
	
		
			
				|  |  |        this.roleStatus = true
 | 
	
		
			
				|  |  |        // 修改的时候
 | 
	
		
			
				|  |  |        if(type == 'update') {
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +        this.form = {
 | 
	
		
			
				|  |  | +          id: data.id,
 | 
	
		
			
				|  |  | +          username: data.username,
 | 
	
		
			
				|  |  | +          gender: data.gender,
 | 
	
		
			
				|  |  | +          phone: Number(data.phone),
 | 
	
		
			
				|  |  | +          roleName: data.roleName,
 | 
	
		
			
				|  |  | +          organIDList: data.organIDList ? data.organIDList : [],
 | 
	
		
			
				|  |  | +          jobNature: data.jobNature,
 | 
	
		
			
				|  |  | +          entryDate: data.entryDate
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      onFormClose(formName) { // 关闭弹窗重置验证
 | 
	
		
			
				|  |  |        this.$refs[formName].clearValidate()
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | +    formatLockFlag(row) {
 | 
	
		
			
				|  |  | +      let reuslt = ['正常', '冻结']
 | 
	
		
			
				|  |  | +      if(row.demissionDate) {
 | 
	
		
			
				|  |  | +        return '离职'
 | 
	
		
			
				|  |  | +      } else {
 | 
	
		
			
				|  |  | +        return reuslt[row.lockFlag]
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    onStaffOperation(type, data) {
 | 
	
		
			
				|  |  | +      employeeOperate({ 
 | 
	
		
			
				|  |  | +        employeeId: data.id,
 | 
	
		
			
				|  |  | +        operate: type
 | 
	
		
			
				|  |  | +      }).then(res => {
 | 
	
		
			
				|  |  | +        console.log(res)
 | 
	
		
			
				|  |  | +        if(res.code == 200) {
 | 
	
		
			
				|  |  | +          this.$message({
 | 
	
		
			
				|  |  | +            message: '更改成功',
 | 
	
		
			
				|  |  | +            type: 'success'
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +          this.roleStatus = false
 | 
	
		
			
				|  |  | +          this.getList()
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +          this.$message.error(res.msg)
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  </script>
 |