diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserServiceImpl.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserServiceImpl.java index 0f4ab887..4c2ad470 100644 --- a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserServiceImpl.java +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserServiceImpl.java @@ -335,14 +335,13 @@ public class SysUserServiceImpl implements ISysUserService boolean isPrjUser = false;//项目单位人员 SysDept sysDept=null; try { - if(Objects.equals(user.getUserType(),"99")){ - // 根据单位递归查询项目信息 - sysDept = deptMapper.selectDeptById(user.getDeptId()); - // 是项目单位时,将人员信息加入到花名册 - if(StringUtils.isNotEmpty(sysDept.getDeptType()) && Objects.equals(sysDept.getDeptType(),"4")){ - isPrjUser = true; - } + // 根据单位递归查询项目信息 + sysDept = deptMapper.selectDeptById(user.getDeptId()); + // 是项目单位时,将人员信息加入到花名册 + if(StringUtils.isNotEmpty(sysDept.getDeptType()) && Objects.equals(sysDept.getDeptType(),"4")){ + isPrjUser = true; } + }catch (Exception e){ e.printStackTrace(); } @@ -360,9 +359,7 @@ public class SysUserServiceImpl implements ISysUserService where.setUserId(sysUser.getUserId()); where.setProjectId(user.getDeptId()); List userExts=userExtService.selectSysUserExtList(where); - if(userExts.size()>0){ - throw new ServiceException("此用户己在此项目中!"); - } + user.setUserId(sysUser.getUserId()); user.setIsActive(0l); user.setStatus("0"); @@ -371,7 +368,9 @@ public class SysUserServiceImpl implements ISysUserService comWhere.setComId(dept.getComId()); List userComs= userComMapper.selectUserComs(comWhere); if(userComs.size()==0){ - userMapper.insertUserCom(user); + if(isPrjUser) { + userMapper.insertUserCom(user); + } } sysUser.setUserName(user.getUserName()); sysUser.setComId(user.getComId()); @@ -382,20 +381,28 @@ public class SysUserServiceImpl implements ISysUserService sysUser.setUpdateTime(user.getUpdateTime()); sysUser.setPassword(user.getPassword()); rows=userMapper.updateUser(sysUser); - userExtService.updateBySysUser(sysUser); + if(isPrjUser) { + userExtService.updateBySysUser(sysUser); + } }else{//此电话号码未注册 user.setCreateBy(user.getUpdateBy()); user.setCreateTime(user.getUpdateTime()); user.setUserType("99"); rows=userMapper.insertUser(user); user.setIsActive(1l); - userMapper.insertUserCom(user); - userExtService.updateBySysUser(user); + if(isPrjUser) { + userMapper.insertUserCom(user); + userExtService.updateBySysUser(user); + } } //int rows = userMapper.insertUser(user); // 新增用户岗位关联 insertUserPost(user); // 新增用户与角色管理 + SysUserRole userRole = new SysUserRole(); + userRole.setUserId(user.getUserId()); + userRole.setDeptId(user.getDeptId()); + userRoleMapper.deleteUserRoleByUserRole(userRole); insertUserRole(user); try { if(isPrjUser) { @@ -424,7 +431,7 @@ public class SysUserServiceImpl implements ISysUserService data.put("userName",user.getNickName()); data.put("cardType","1"); data.put("cardCode",user.getCardCode()); - data.put("userSex",StringUtils.judgeGenderText(user.getCardCode())); + data.put("userSex",user.getSex()); data.put("userPicture",user.getAvatar()); data.put("userPhone",user.getPhonenumber()); return data; @@ -616,16 +623,7 @@ public class SysUserServiceImpl implements ISysUserService throw new ServiceException("所属单位选择异常,必须选择子公司及下属单位"); } user.setComId(dept.getComId()); - if(user.getComId().equals(user.getOldComId())){ - SysUser where=new SysUser(); - where.setUserId(user.getUserId()); - where.setComId(user.getOldComId()); - SysUser oldUserCom=userMapper.selectUserCom(where); - if(Objects.nonNull(oldUserCom)){ - throw new ServiceException("此用户己在此项目中!"); - } - userMapper.updateUserCom(user); - } + try { if(Objects.equals(user.getUserType(),"99")){ // 根据单位递归查询项目信息 diff --git a/yanzhu-ui-vue3/src/views/manage/proProjectInfoSubdeptsUsers/index.vue b/yanzhu-ui-vue3/src/views/manage/proProjectInfoSubdeptsUsers/index.vue index 8e677b3e..6d1381b2 100644 --- a/yanzhu-ui-vue3/src/views/manage/proProjectInfoSubdeptsUsers/index.vue +++ b/yanzhu-ui-vue3/src/views/manage/proProjectInfoSubdeptsUsers/index.vue @@ -200,7 +200,7 @@ - {{ it }} + {{ dict.label }} @@ -273,7 +273,7 @@ import useUserStore from '@/store/modules/user' import dayjs from 'dayjs' const userStore = useUserStore() const { proxy } = getCurrentInstance(); -const { sys_use_status, pro_craft_type, sys_is_del, pro_craft_post, certificate_type, educational_type } = proxy.useDict('sys_use_status', 'pro_craft_type', 'sys_is_del', 'pro_craft_post', 'certificate_type', 'educational_type'); +const { sys_use_status, pro_craft_type, sys_is_del, pro_craft_post, certificate_type, educational_type,sys_user_sex } = proxy.useDict('sys_use_status', 'pro_craft_type', 'sys_is_del', 'pro_craft_post', 'certificate_type', 'educational_type','sys_user_sex'); const proProjectInfoSubdeptsUsersList = ref([]); const open = ref(false); @@ -335,7 +335,7 @@ const data = reactive({ queryDeptGroups: [], certificateTypeOpts: "身份证".split(","), nationOpts: '汉族,壮族,满族,回族,苗族,维吾尔族,土家族,彝族,蒙古族,藏族,布依族,侗族,瑶族,朝鲜族,白族,哈尼族,哈萨克族,黎族,傣族,畲族,傈僳族,仡佬族,东乡族,高山族,拉祜族,水族,佤族,纳西族,羌族,土族,仫佬族,锡伯族,柯尔克孜族,达斡尔族,景颇族,毛南族,撒拉族,布朗族,塔吉克族,阿昌族,普米族,鄂温克族,怒族,京族,基诺族,德昂族,保安族,俄罗斯族,裕固族,乌孜别克族,门巴族,鄂伦春族,独龙族,塔塔尔族,赫哲族,珞巴族'.split(","), - sexOpts: "男,女".split(","), + isManager: false, phoneState: '', userInfo: null, @@ -605,7 +605,7 @@ function handleAdd() { form.value.comId = userStore.currentComId; form.value.projectName = userStore.currentProName; form.value.nation = data.nationOpts[0]; - form.value.sex = data.sexOpts[0]; + form.value.sex = "0"; }); } diff --git a/yanzhu-ui-vue3/src/views/system/user/index.vue b/yanzhu-ui-vue3/src/views/system/user/index.vue index 7fd2ec14..99d2631c 100644 --- a/yanzhu-ui-vue3/src/views/system/user/index.vue +++ b/yanzhu-ui-vue3/src/views/system/user/index.vue @@ -123,10 +123,12 @@ - + {{ form.dept?.deptName }} + @@ -417,7 +419,7 @@ function doRoleChange() { else { if (form.value.userType == 99) { data.rules = { - deptId: [{ required: true, message: "所属单位不能为空", trigger: "change" }], + userName: [{ required: true, message: "用户名称不能为空", trigger: "blur" }, { min: 2, max: 20, message: "用户名称长度必须介于 2 和 20 之间", trigger: "blur" }], nickName: [{ required: true, message: "用户名称不能为空", trigger: "blur" }], userType: [{ required: true, message: "用户类型不能为空", trigger: "change" }], @@ -428,7 +430,7 @@ function doRoleChange() { } } else { data.rules = { - deptId: [{ required: true, message: "所属单位不能为空", trigger: "change" }], + userName: [{ required: true, message: "用户名称不能为空", trigger: "blur" }, { min: 2, max: 20, message: "用户名称长度必须介于 2 和 20 之间", trigger: "blur" }], nickName: [{ required: true, message: "用户名称不能为空", trigger: "blur" }], userType: [{ required: true, message: "用户类型不能为空", trigger: "change" }], @@ -607,9 +609,8 @@ function handleUpdate(row) { reset(); const userId = row.userId || ids.value; getUser(userId).then(response => { - data.rules = { - deptId: [{ required: true, message: "所属单位不能为空", trigger: "change" }], + userType: [{ required: true, message: "用户类型不能为空", trigger: "change" }], roleIds: [{ required: true, message: "用户角色不能为空", trigger: "change" }], phonenumber: [{ required: true, message: "手机号码不能为空", trigger: "blur" }, { pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "请输入正确的手机号码", trigger: "blur" }]