diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudUserFacadeImpl.java b/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudUserFacadeImpl.java index 15724769..d6a07eca 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudUserFacadeImpl.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudUserFacadeImpl.java @@ -175,10 +175,8 @@ public class ZcloudUserFacadeImpl implements ZcloudUserFacade { && !userUpdateCmd.getCorpinfoId().equals(userDO.getCorpinfoId())) { userUpdateCmd.setCorpinfoName(null); } - if (userDO != null - && userUpdateCmd.getDepartmentId() != null - && !userUpdateCmd.getDepartmentId().equals(userDO.getDepartmentId())) { - userUpdateCmd.setDepartmentName(null); + if (StringUtils.hasText(zcloudUserUpdateCmd.getDepartmentName())) { + userUpdateCmd.setDepartmentName(zcloudUserUpdateCmd.getDepartmentName()); } if (userDO != null && userUpdateCmd.getPostId() != null diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/HumanUserUpdateExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/HumanUserUpdateExe.java index 4c26b878..e67d4f85 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/HumanUserUpdateExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/HumanUserUpdateExe.java @@ -141,6 +141,7 @@ public class HumanUserUpdateExe { } fillMissingFields(userUpdateCmd, oldUserDO); + updateEmploymentFlagToInfoChange(oldUserDO); if (isResignation(userUpdateCmd)) { log.info("用户{}触发离职处理,准备检查离职前待交接任务", oldUserDO.getId()); boolean resigned = executeHumanResignation(oldUserDO); @@ -157,6 +158,7 @@ public class HumanUserUpdateExe { } log.info("用户{}在当前企业内发生部门、岗位等资料调整,直接走普通修改并同步底座", oldUserDO.getId()); + executeInsideCorpUpdate(oldUserDO, userUpdateCmd); return SingleResponse.of(oldUserDO.getId()); } @@ -280,6 +282,17 @@ public class HumanUserUpdateExe { userGateway.update(userE); log.info("用户{}仅同步rz_flag,旧值:{}, 新值:{}", oldUserDO.getId(), oldUserDO.getRzFlag(), userUpdateCmd.getRzFlag()); } + + private void updateEmploymentFlagToInfoChange(UserDO oldUserDO) { + if (Objects.equals(oldUserDO.getEmploymentFlag(), UserEmploymentFlagEnum.INFO_CHANGE.getCode())) { + return; + } + UserE userE = new UserE(); + userE.setId(oldUserDO.getId()); + userE.setEmploymentFlag(UserEmploymentFlagEnum.INFO_CHANGE.getCode()); + userGateway.update(userE); + } + /** * 完成离职收口。 * 包括更新当前任职记录、更新用户变更记录,以及调用底座离职。 diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java index 92158485..0100cb65 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java @@ -807,7 +807,7 @@ public class UserRepositoryImpl extends BaseRepositoryImpl i public List listUserByInfo(Map parmas) { QueryWrapper queryWrapperList = new QueryWrapper<>(); queryWrapperList.eq("phone", parmas.get("phone")); - queryWrapperList.eq("employment_flag",1); + queryWrapperList.in("employment_flag", Arrays.asList(1, 2)); queryWrapperList.eq("user_id_card", parmas.get("userIdCard")); queryWrapperList.eq("delete_enum", "FALSE"); queryWrapperList.orderByAsc("create_time"); @@ -819,4 +819,3 @@ public class UserRepositoryImpl extends BaseRepositoryImpl i userMapper.updateEmploymentFlagAndDeleteEnum(userId, employmentFlag, deleteEnum); } } -