|  | @@ -296,34 +296,44 @@
 | 
	
		
			
				|  |  |        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
 | 
	
		
			
				|  |  |          <el-row>
 | 
	
		
			
				|  |  |            <el-col :span="10">
 | 
	
		
			
				|  |  | -            <el-form-item label="用户名称" prop="username"  >
 | 
	
		
			
				|  |  | +            <el-form-item label="用户名称" prop="username">
 | 
	
		
			
				|  |  |                <el-input
 | 
	
		
			
				|  |  |                  v-model="form.username"
 | 
	
		
			
				|  |  |                  placeholder="请输入用户名"
 | 
	
		
			
				|  |  |                  maxlength="30"
 | 
	
		
			
				|  |  | -              :readonly="form.source==1"/>
 | 
	
		
			
				|  |  | +                :readonly="form.source == 1"
 | 
	
		
			
				|  |  | +              />
 | 
	
		
			
				|  |  |              </el-form-item>
 | 
	
		
			
				|  |  |            </el-col>
 | 
	
		
			
				|  |  |            <el-col :span="10">
 | 
	
		
			
				|  |  | -            <el-form-item label="用户昵称" prop="name" >
 | 
	
		
			
				|  |  | +            <el-form-item label="用户昵称" prop="name">
 | 
	
		
			
				|  |  |                <el-input
 | 
	
		
			
				|  |  |                  v-model="form.name"
 | 
	
		
			
				|  |  |                  placeholder="请输入用户昵称"
 | 
	
		
			
				|  |  |                  maxlength="30"
 | 
	
		
			
				|  |  | -              :readonly="form.source==1"/>
 | 
	
		
			
				|  |  | +                :readonly="form.source == 1"
 | 
	
		
			
				|  |  | +              />
 | 
	
		
			
				|  |  |              </el-form-item>
 | 
	
		
			
				|  |  |            </el-col>
 | 
	
		
			
				|  |  |          </el-row>
 | 
	
		
			
				|  |  |          <el-row>
 | 
	
		
			
				|  |  |            <el-col :span="10">
 | 
	
		
			
				|  |  | -            <el-form-item label="所属机构" prop="orgId" >
 | 
	
		
			
				|  |  | -              <tree-select v-model="form.orgId" :options="deptOptions" :show-count="true" :normalizer="tenantIdnormalizer"
 | 
	
		
			
				|  |  | -                :props="{ checkStrictly: true, label: 'name' }" placeholder="请选择归属机构" :disabled="form.source==1"/>
 | 
	
		
			
				|  |  | +            <el-form-item label="所属机构" prop="orgId">
 | 
	
		
			
				|  |  | +              <tree-select
 | 
	
		
			
				|  |  | +                v-model="form.orgId"
 | 
	
		
			
				|  |  | +                :options="deptOptions"
 | 
	
		
			
				|  |  | +                :show-count="true"
 | 
	
		
			
				|  |  | +                :normalizer="tenantIdnormalizer"
 | 
	
		
			
				|  |  | +                :props="{ checkStrictly: true, label: 'name' }"
 | 
	
		
			
				|  |  | +                placeholder="请选择归属机构"
 | 
	
		
			
				|  |  | +                :disabled="form.source == 1"
 | 
	
		
			
				|  |  | +              />
 | 
	
		
			
				|  |  |              </el-form-item>
 | 
	
		
			
				|  |  |            </el-col>
 | 
	
		
			
				|  |  |            <el-col :span="10">
 | 
	
		
			
				|  |  |              <el-form-item label="用户角色" prop="roleIds">
 | 
	
		
			
				|  |  |                <el-select
 | 
	
		
			
				|  |  | +              @visible-change="selectRoles"
 | 
	
		
			
				|  |  |                  style="width: 100%"
 | 
	
		
			
				|  |  |                  v-model="form.roleIds"
 | 
	
		
			
				|  |  |                  multiple
 | 
	
	
		
			
				|  | @@ -342,21 +352,22 @@
 | 
	
		
			
				|  |  |          </el-row>
 | 
	
		
			
				|  |  |          <el-row>
 | 
	
		
			
				|  |  |            <el-col :span="10">
 | 
	
		
			
				|  |  | -            <el-form-item label="手机号码" prop="phone" >
 | 
	
		
			
				|  |  | +            <el-form-item label="手机号码" prop="phone">
 | 
	
		
			
				|  |  |                <el-input
 | 
	
		
			
				|  |  |                  v-model="form.phone"
 | 
	
		
			
				|  |  |                  placeholder="请输入手机号码"
 | 
	
		
			
				|  |  |                  maxlength="11"
 | 
	
		
			
				|  |  | -              :readonly="form.source==1"/>
 | 
	
		
			
				|  |  | +                :readonly="form.source == 1"
 | 
	
		
			
				|  |  | +              />
 | 
	
		
			
				|  |  |              </el-form-item>
 | 
	
		
			
				|  |  |            </el-col>
 | 
	
		
			
				|  |  |            <el-col :span="10">
 | 
	
		
			
				|  |  | -            <el-form-item label="用户性别" >
 | 
	
		
			
				|  |  | +            <el-form-item label="用户性别">
 | 
	
		
			
				|  |  |                <el-select
 | 
	
		
			
				|  |  |                  style="width: 100%"
 | 
	
		
			
				|  |  |                  v-model="form.gender"
 | 
	
		
			
				|  |  |                  placeholder="请选择性别"
 | 
	
		
			
				|  |  | -                :disabled="form.source==1"
 | 
	
		
			
				|  |  | +                :disabled="form.source == 1"
 | 
	
		
			
				|  |  |                >
 | 
	
		
			
				|  |  |                  <el-option
 | 
	
		
			
				|  |  |                    v-for="dict in dict.type.sys_user_sex"
 | 
	
	
		
			
				|  | @@ -393,12 +404,13 @@
 | 
	
		
			
				|  |  |          </el-row>
 | 
	
		
			
				|  |  |          <el-row>
 | 
	
		
			
				|  |  |            <el-col :span="14">
 | 
	
		
			
				|  |  | -            <el-form-item label="状态" >
 | 
	
		
			
				|  |  | +            <el-form-item label="状态">
 | 
	
		
			
				|  |  |                <el-radio-group v-model="form.isLock">
 | 
	
		
			
				|  |  |                  <el-radio
 | 
	
		
			
				|  |  |                    v-for="dict in dict.type.sys_normal_disable"
 | 
	
		
			
				|  |  |                    :key="`${dict.value}`"
 | 
	
		
			
				|  |  | -                  :label="dict.value" :disabled="form.source==1"
 | 
	
		
			
				|  |  | +                  :label="dict.value"
 | 
	
		
			
				|  |  | +                  :disabled="form.source == 1"
 | 
	
		
			
				|  |  |                    >{{ dict.label }}</el-radio
 | 
	
		
			
				|  |  |                  >
 | 
	
		
			
				|  |  |                </el-radio-group>
 | 
	
	
		
			
				|  | @@ -466,6 +478,7 @@ import {
 | 
	
		
			
				|  |  |    updateUser,
 | 
	
		
			
				|  |  |    resetUserPwd,
 | 
	
		
			
				|  |  |    changeUserStatus,
 | 
	
		
			
				|  |  | +  selectrolesByOrgId,
 | 
	
		
			
				|  |  |  } from "@/api/system/user";
 | 
	
		
			
				|  |  |  import { getToken } from "@/utils/auth";
 | 
	
		
			
				|  |  |  import { deptTreeSelect } from "@/api/system/public";
 | 
	
	
		
			
				|  | @@ -568,17 +581,21 @@ export default {
 | 
	
		
			
				|  |  |            { required: true, message: "用户角色不能为空", trigger: "blur" },
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          password: [
 | 
	
		
			
				|  |  | -          { required: true, message: '密码不能为空', trigger: 'blur' },
 | 
	
		
			
				|  |  | -          { min: 8, message: '密码至少为8位', trigger: 'blur' },
 | 
	
		
			
				|  |  | +          { required: true, message: "密码不能为空", trigger: "blur" },
 | 
	
		
			
				|  |  | +          { min: 8, message: "密码至少为8位", trigger: "blur" },
 | 
	
		
			
				|  |  |            {
 | 
	
		
			
				|  |  |              validator: (rule, value, callback) => {
 | 
	
		
			
				|  |  | -              if (!/[a-z]/.test(value) || !/[A-Z]/.test(value) || !/\d/.test(value)) {
 | 
	
		
			
				|  |  | -                callback(new Error('密码必须包含大小写字母和数字'));
 | 
	
		
			
				|  |  | +              if (
 | 
	
		
			
				|  |  | +                !/[a-z]/.test(value) ||
 | 
	
		
			
				|  |  | +                !/[A-Z]/.test(value) ||
 | 
	
		
			
				|  |  | +                !/\d/.test(value)
 | 
	
		
			
				|  |  | +              ) {
 | 
	
		
			
				|  |  | +                callback(new Error("密码必须包含大小写字母和数字"));
 | 
	
		
			
				|  |  |                } else {
 | 
	
		
			
				|  |  |                  callback();
 | 
	
		
			
				|  |  |                }
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            trigger: 'blur',
 | 
	
		
			
				|  |  | +            trigger: "blur",
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          orgId: [
 | 
	
	
		
			
				|  | @@ -614,6 +631,12 @@ export default {
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    mounted() {},
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  | +    selectRoles(){
 | 
	
		
			
				|  |  | +      selectrolesByOrgId({orgId:this.form.orgId}).then((res)=>{
 | 
	
		
			
				|  |  | +        // console.log(res);
 | 
	
		
			
				|  |  | +        this.roleOptions=res.data;
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  |      /** 查询机构树数据 */
 | 
	
		
			
				|  |  |      getDeptTree() {
 | 
	
		
			
				|  |  |        deptTreeSelect().then((response) => {
 | 
	
	
		
			
				|  | @@ -821,12 +844,16 @@ export default {
 | 
	
		
			
				|  |  |      handleDelete(row) {
 | 
	
		
			
				|  |  |        console.log(row);
 | 
	
		
			
				|  |  |        const userIds = row.id || this.ids;
 | 
	
		
			
				|  |  | -      this.$modal.confirm('是否确认删除用户昵称为"' + row.name + '"的数据项?').then(function () {
 | 
	
		
			
				|  |  | -        return delUser(userIds);
 | 
	
		
			
				|  |  | -      }).then(() => {
 | 
	
		
			
				|  |  | -        this.getList();
 | 
	
		
			
				|  |  | -        this.$modal.msgSuccess("删除成功");
 | 
	
		
			
				|  |  | -      }).catch(() => { });
 | 
	
		
			
				|  |  | +      this.$modal
 | 
	
		
			
				|  |  | +        .confirm('是否确认删除用户昵称为"' + row.name + '"的数据项?')
 | 
	
		
			
				|  |  | +        .then(function () {
 | 
	
		
			
				|  |  | +          return delUser(userIds);
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +        .then(() => {
 | 
	
		
			
				|  |  | +          this.getList();
 | 
	
		
			
				|  |  | +          this.$modal.msgSuccess("删除成功");
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +        .catch(() => {});
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      /** 导出按钮操作 */
 | 
	
		
			
				|  |  |      handleExport() {
 | 
	
	
		
			
				|  | @@ -877,6 +904,4 @@ export default {
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  <style lang="scss"></style>
 | 
	
		
			
				|  |  | -<style lang="scss" scoped>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -</style>
 | 
	
		
			
				|  |  | +<style lang="scss" scoped></style>
 |