diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/app/AppCorpInfoController.java b/web-adapter/src/main/java/com/zcloud/basic/info/app/AppCorpInfoController.java new file mode 100644 index 0000000..5eda9e0 --- /dev/null +++ b/web-adapter/src/main/java/com/zcloud/basic/info/app/AppCorpInfoController.java @@ -0,0 +1,55 @@ +package com.zcloud.basic.info.app; + + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.Response; +import com.alibaba.cola.dto.SingleResponse; +import com.jjb.saas.framework.auth.model.SSOUser; +import com.jjb.saas.framework.auth.utils.AuthContext; +import com.jjb.saas.security.starter.api.co.DecryptCmd; +import com.zcloud.basic.info.api.CorpInfoServiceI; +import com.zcloud.basic.info.dto.*; +import com.zcloud.basic.info.dto.clientobject.CorpDepartmentCO; +import com.zcloud.basic.info.dto.clientobject.CorpInfoCO; +import com.zcloud.basic.info.dto.clientobject.CorpUserMiddleCO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +/** + * web-adapter + * + * @Author zhaokai + * @Date 2025-10-29 16:02:16 + */ +@Api(tags = "企业信息") +@RequestMapping("/${application.gateway}/app/corpInfo") +@RestController +@AllArgsConstructor +public class AppCorpInfoController { + private final CorpInfoServiceI corpInfoService; + + + + @ApiOperation("获取企业列表") + @PostMapping("/list") + public PageResponse page(@Validated @RequestBody CorpInfoPageQry qry) { + return corpInfoService.listPage(qry); + } + + @ApiOperation("详情") + @PostMapping("/info/{id}") + public SingleResponse getInfoById(@PathVariable("id") Long id) { + if(id==null){ + SSOUser ssoUser = AuthContext.getCurrentUser(); + id = ssoUser.getTenantId(); + } + return SingleResponse.of(corpInfoService.info(id)); + } + + +} + diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserController.java b/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserController.java index 5635860..e0305df 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserController.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserController.java @@ -1,6 +1,7 @@ package com.zcloud.basic.info.app; +import com.alibaba.cola.dto.MultiResponse; import com.alibaba.cola.dto.Response; import com.alibaba.cola.dto.SingleResponse; import com.jjb.saas.framework.auth.model.SSOUser; @@ -8,6 +9,8 @@ import com.jjb.saas.framework.auth.utils.AuthContext; import com.zcloud.basic.info.api.ProblemFeedbackServiceI; import com.zcloud.basic.info.api.UserServiceI; import com.zcloud.basic.info.dto.*; +import com.zcloud.basic.info.dto.clientobject.CorpFormCO; +import com.zcloud.basic.info.dto.clientobject.CorpInfoCO; import com.zcloud.basic.info.dto.clientobject.ProblemFeedbackCO; import com.zcloud.basic.info.dto.clientobject.UserCO; import com.zcloud.gbscommon.translateaop.TranslateField; @@ -43,6 +46,7 @@ public class AppUserController { return userService.sendPhoneCode(cmd); } + @ApiOperation("密码找回") @PostMapping("/passwordRecover") public SingleResponse passwordRecover(@Validated @RequestBody AppUserRegisterCmd cmd) { @@ -55,6 +59,7 @@ public class AppUserController { return userService.register(cmd); } + @ApiOperation("完善个人信息(不包括企业,部门,岗位)") @PostMapping("/perfectUserInfo") public SingleResponse perfectUserInfo(@Validated @RequestBody AppUserInfoCmd cmd) { @@ -107,6 +112,15 @@ public class AppUserController { userService.logOut(cmd); return SingleResponse.buildSuccess(); } - + @ApiOperation("app游客登录") + @PostMapping("/login") + public MultiResponse login(@Validated @RequestBody UserAppLoginCmd cmd) { + return MultiResponse.of(userService.login(cmd)); + } + @ApiOperation("app获取用户在职企业") + @PostMapping("/getUserCorpList/{id}") + public MultiResponse getUserCorpList(@PathVariable("id") Long id) { + return MultiResponse.of(userService.getUserCorpList(id)); + } } diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserCorpRecordController.java b/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserCorpRecordController.java index 3d27d15..7905c11 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserCorpRecordController.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/app/AppUserCorpRecordController.java @@ -10,6 +10,7 @@ import com.zcloud.basic.info.dto.clientobject.UserCorpRecordCO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; /** @@ -28,7 +29,7 @@ public class AppUserCorpRecordController { @ApiOperation("就职单位记录分页") @PostMapping("/list") - public PageResponse page(@RequestBody UserCorpRecordPageQry qry) { + public PageResponse page(@Validated @RequestBody UserCorpRecordPageQry qry) { return userCorpRecordService.listPage(qry); } @@ -39,6 +40,5 @@ public class AppUserCorpRecordController { return SingleResponse.of(userCorpRecordService.getInfoById(id)); } - } diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpController.java b/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpController.java index 42c598f..482a14d 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpController.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpController.java @@ -46,31 +46,7 @@ public class UserCorpController { return userCorpService.listPage(qry); } - @ApiOperation("所有数据") - @GetMapping("/listAll") - public MultiResponse listAll() { - return MultiResponse.of(new ArrayList()); - } - @ApiOperation("详情") - @GetMapping("/{id}") - public SingleResponse getInfoById(@PathVariable("id") Long id) { - return SingleResponse.of(new UserCorpCO()); - } - - @ApiOperation("删除") - @DeleteMapping("/{id}") - public Response remove(@PathVariable("id") Long id) { - userCorpService.remove(id); - return SingleResponse.buildSuccess(); - } - - @ApiOperation("删除多个") - @DeleteMapping("/ids") - public Response removeBatch(@RequestParam Long[] ids) { - userCorpService.removeBatch(ids); - return SingleResponse.buildSuccess(); - } @ApiOperation("修改") @PutMapping("/edit") diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpRecordController.java b/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpRecordController.java index 9c1eebb..7577085 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpRecordController.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/web/UserCorpRecordController.java @@ -46,32 +46,6 @@ public class UserCorpRecordController { return userCorpRecordService.listPage(qry); } - @ApiOperation("所有数据") - @GetMapping("/listAll") - public MultiResponse listAll() { - return MultiResponse.of(new ArrayList()); - } - - @ApiOperation("详情") - @GetMapping("/{id}") - public SingleResponse getInfoById(@PathVariable("id") Long id) { - return SingleResponse.of(new UserCorpRecordCO()); - } - - @ApiOperation("删除") - @DeleteMapping("/{id}") - public Response remove(@PathVariable("id") Long id) { - userCorpRecordService.remove(id); - return SingleResponse.buildSuccess(); - } - - @ApiOperation("删除多个") - @DeleteMapping("/ids") - public Response removeBatch(@RequestParam Long[] ids) { - userCorpRecordService.removeBatch(ids); - return SingleResponse.buildSuccess(); - } - @ApiOperation("修改") @PutMapping("/edit") public SingleResponse edit(@Validated @RequestBody UserCorpRecordUpdateCmd userCorpRecordUpdateCmd) { diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java index 3e56032..7b97736 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java @@ -63,6 +63,7 @@ public class UserAddExe { private final UserChangeRecordGateway userChangeRecordGateway; private final UserCorpRecordGateway userCorpRecordGateway; private ZcloudRedisUtil zcloudRedisUtil; + private final UserCorpRecordRepository userCorpRecordRepository; @Transactional(rollbackFor = Exception.class) @@ -138,8 +139,16 @@ public class UserAddExe { BeanUtils.copyProperties(cmd, userE); // 3-相关方 userE.setUserType(3); - if(UserFlowFlagEnum.FIXED.getCode().equals(cmd.getFlowFlag())){ - userE.setEmploymentFlag(UserEmploymentFlagEnum.NOT_ON.getCode()); + UserDO userDO = userRepository.getById(cmd.getId()); + if(userDO == null){ + throw new BizException("用户不存在"); + } + if(userDO.getFlowFlag()!=null && !userDO.getFlowFlag().equals(cmd.getFlowFlag())){ + // 已完善,与旧数据对比 + List userCorpRecordDOList = userCorpRecordRepository.getInfoListByUserId(cmd.getId()); + if(CollUtil.isNotEmpty(userCorpRecordDOList)){ + throw new BizException("该用户尚有未离职企业,不能修人员流动状态"); + } } userGateway.update(userE); @@ -157,10 +166,6 @@ public class UserAddExe { if(CollUtil.isNotEmpty(userCorpDOS)){ throw new BizException("该用户在当前企业存在未离职信息,无法入职"); } - /** - * 如果是离职的话, 则将离职改为入职 - */ - // 把user表和user_corp表相关企业,部门,岗位数据补充完整 UserE userE = new UserE(); diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/UserRemoveExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/UserRemoveExe.java index d0f1146..a6d9213 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/UserRemoveExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/UserRemoveExe.java @@ -5,10 +5,13 @@ import com.alibaba.cola.exception.BizException; import com.jjb.saas.system.client.user.facade.UserFacade; import com.zcloud.basic.info.constant.RedisConstant; import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum; +import com.zcloud.basic.info.domain.enums.UserFlowFlagEnum; import com.zcloud.basic.info.domain.gateway.UserGateway; import com.zcloud.basic.info.dto.AppUserLogOutCmd; import com.zcloud.basic.info.persistence.dataobject.UserCorpDO; +import com.zcloud.basic.info.persistence.dataobject.UserCorpRecordDO; import com.zcloud.basic.info.persistence.dataobject.UserDO; +import com.zcloud.basic.info.persistence.repository.UserCorpRecordRepository; import com.zcloud.basic.info.persistence.repository.UserCorpRepository; import com.zcloud.basic.info.persistence.repository.UserRepository; import com.zcloud.gbscommon.utils.Const; @@ -38,6 +41,7 @@ public class UserRemoveExe { private UserFacade userFacade; // @Autowired private ZcloudRedisUtil zcloudRedisUtil; + private final UserCorpRecordRepository userCorpRecordRepository; @Transactional(rollbackFor = Exception.class) public boolean execute(Long id) { @@ -64,6 +68,19 @@ public class UserRemoveExe { zcloudRedisUtil.del(RedisConstant.PHONE_CODE_KEY + userDO.getPhone()); try { + //TODO 处理所有未完成的工作,如果是非固定人员,包括所有企业的未完成工作 + // 如果是固定人员,判断是否离职 + if(UserFlowFlagEnum.FIXED.equals(userDO.getEmploymentFlag().toString())&&UserEmploymentFlagEnum.ON.equals(userDO.getEmploymentFlag().toString())){ + throw new BizException("您目前还有未离职信息,无法直接注销,请先在\"就职单位\"页面中离职"); + }else if(UserFlowFlagEnum.FIXED.equals(userDO.getEmploymentFlag().toString())){ + List userCorpDOS = userCorpRepository.getONCorpInfo(cmd.getId()); + if(CollUtil.isNotEmpty(userCorpDOS)){ + throw new BizException("您目前还有未离职信息,无法直接注销,请先在\"就职单位\"页面中离职"); + } + + } + + // 删除底座用户信息 userFacade.delete(cmd.getId()); // 删除用户表 @@ -71,6 +88,10 @@ public class UserRemoveExe { userGateway.deletedUserById(userId); // 删除user_corp表 userCorpRepository.removeByUserId(userId); + + + + } catch (Exception e){ e.printStackTrace(); throw new BizException("删除失败"); diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/UserUpdateExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/UserUpdateExe.java index c732ec5..c16e6ce 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/UserUpdateExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/UserUpdateExe.java @@ -7,6 +7,7 @@ import com.alibaba.cola.dto.SingleResponse; import com.alibaba.cola.exception.BizException; import com.jjb.saas.framework.auth.utils.AuthContext; import com.jjb.saas.system.client.user.facade.UserFacade; +import com.jjb.saas.system.enums.user.UserAuditStatusEnum; import com.zcloud.basic.info.constant.RedisConstant; import com.zcloud.basic.info.command.convertor.UserJobHandoverCoConvertor; import com.zcloud.basic.info.domain.enums.*; @@ -83,32 +84,21 @@ public class UserUpdateExe { UserDO userDO = userRepository.getInfoById(userUpdateCmd.getId()); UserE oldUserE = new UserE(); BeanUtils.copyProperties(userDO, oldUserE); - boolean transferPositionFlag = userE.verifyTransferPosition(oldUserE, userE); - String corpName = null; + // boolean transferPositionFlag = userE.verifyTransferPosition(oldUserE, userE); + boolean transferFlowFlag = userE.verifyTransferFlow(oldUserE, userE); + if(transferFlowFlag){ + List userCorpRecordDOList = userCorpRecordRepository.getInfoListByUserId(userDO.getId()); + if(CollUtil.isNotEmpty(userCorpRecordDOList)){ + throw new BizException("该用户尚有未离职企业,不能修人员流动状态"); + } + } boolean res = userGateway.update(userE); // 保存履职记录 if (!res) { throw new BizException("修改失败"); } - UserCorpDO infoByUserId = userCorpRepository.getInfoByUserId(userDO.getId(), AuthContext.getTenantId()); - if (UserFlowFlagEnum.FLOW.getCode().equals(userUpdateCmd.getFlowFlag())) { - //流动人员,修改部门企业等信息 - if (infoByUserId != null) { - UserCorpE userCorpE = new UserCorpE(); - BeanUtils.copyProperties(infoByUserId, userCorpE); - userCorpE.initUpdate(userE); - userCorpGateway.update(userCorpE); - } else { - UserCorpE userCorpE = new UserCorpE(); - BeanUtils.copyProperties(oldUserE, userCorpE); - BeanUtils.copyProperties(userE, userCorpE); -// userCorpE.initAdd( userE,oldUserE); - userCorpE.setId(null); - userCorpGateway.add(userCorpE); - BeanUtils.copyProperties(userCorpE, infoByUserId); - } - } + /* if (transferPositionFlag) { //保存用户变更记录 CorpInfoDO corpInfoDO = corpInfoRepository.getById(userE.getCorpinfoId()); @@ -243,6 +233,8 @@ public class UserUpdateExe { // //TODO 离职发送,循环调用,失败的话,返回失败, ResignatioChangeJob(allJob); } + + //TODO gbs 处理离职 } @@ -251,19 +243,12 @@ public class UserUpdateExe { //获取用户信息,并更新审核状态 UserDO userDO = userRepository.getInfoById(userReviewStatusCmd.getUserId()); // - UserEmploymentFlagEnum employmentFlagEnum = UserEmploymentFlagEnum.getByCode(userReviewStatusCmd.getEmploymentFlag()); - Integer employmentFlagAfter = null; - switch (employmentFlagEnum) { - case ENTRY_AUDIT: - //入职待审核 - ReviewEntryAudit(userDO, userReviewStatusCmd); - break; - case RESIGNATION_AUDIT: - //离职待审核 - ReviewResignationAudit(userDO, userReviewStatusCmd); - break; - default: - throw new IllegalArgumentException("审核记录已完成"); + if(UserEmploymentFlagEnum.ENTRY_AUDIT.getCode().equals(userReviewStatusCmd.getEmploymentFlag())){ + //入职待审核 + ReviewEntryAudit(userDO, userReviewStatusCmd); + }else if(UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode().equals(userReviewStatusCmd.getEmploymentFlag())){ + //离职待审核 + ReviewResignationAudit(userDO, userReviewStatusCmd); } } @@ -275,7 +260,6 @@ public class UserUpdateExe { */ private void ReviewResignationAudit(UserDO userDO, UserReviewStatusCmd userReviewStatusCmd) { Integer reviewStatus = userReviewStatusCmd.getReviewStatus(); - //TODO 驳回需要待处理,暂时按照只能通过处理 Integer employmentFlag = UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus) ? UserEmploymentFlagEnum.RESIGNATION.getCode() : UserEmploymentFlagEnum.ON.getCode(); UserE userE = null; Long corpinfoId = userReviewStatusCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : userReviewStatusCmd.getCorpinfoId(); @@ -290,9 +274,11 @@ public class UserUpdateExe { if (userE == null) { return; } + UserE userEOld = new UserE(); + BeanUtils.copyProperties(userDO, userEOld); if (UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)) { //修改企业入职记录 - UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode()); + UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserStatus(userDO.getId(), corpinfoId, UserChangeRecordStatusEnum.PENDING.getCode()); UserCorpRecordE userCorpRecordE = new UserCorpRecordE(); if (userCorpRecordDO != null) { BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE); @@ -303,7 +289,7 @@ public class UserUpdateExe { userCorpRecordGateway.add(userCorpRecordE); } UserChangeRecordE userChangeRecordE = new UserChangeRecordE(); - userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode()); + userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode()); userChangeRecordGateway.add(userChangeRecordE); ////TODO 通知GBS用户绑定租户 @@ -317,7 +303,7 @@ public class UserUpdateExe { } } else { //驳回 - UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode()); + UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserStatus(userDO.getId(), corpinfoId, UserChangeRecordStatusEnum.PENDING.getCode()); UserCorpRecordE userCorpRecordE = new UserCorpRecordE(); if (userCorpRecordDO != null) { BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE); @@ -328,14 +314,15 @@ public class UserUpdateExe { userCorpRecordGateway.add(userCorpRecordE); } UserChangeRecordE userChangeRecordE = new UserChangeRecordE(); - userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode()); + userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode()); userChangeRecordGateway.add(userChangeRecordE); } } + //入职待审核 private void ReviewEntryAudit(UserDO userDO, UserReviewStatusCmd userReviewStatusCmd) { Integer reviewStatus = userReviewStatusCmd.getReviewStatus(); - //TODO 驳回需要待处理,暂时按照只能通过处理 + // 驳回需要待处理, Integer employmentFlag = UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus) ? UserEmploymentFlagEnum.ON.getCode() : UserEmploymentFlagEnum.NOT_ON.getCode(); UserE userE = null; Long corpinfoId = userReviewStatusCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : userReviewStatusCmd.getCorpinfoId(); @@ -350,27 +337,21 @@ public class UserUpdateExe { if (userE == null) { return; } + UserE userEOld = new UserE(); + BeanUtils.copyProperties(userDO, userEOld); if (UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)) { - //增加企业入职记录 //增加用户入职企业. 驳回不增加下边信息 - /* CorpInfoDO corpInfoDO = corpInfoRepository.getById(userE.getCorpinfoId()); - DepartmentDO departmentDO = departmentRepository.getById(userE.getDepartmentId()); - - UserCorpRecordE userCorpRecordE = new UserCorpRecordE(); - BeanUtils.copyProperties(userDO, userCorpRecordE); - userCorpRecordE.initAdd(userE, corpInfoDO.getCorpName(), departmentDO.getName()); - userCorpRecordGateway.add(userCorpRecordE);*/ - UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ENTRY_AUDIT.getCode()); + UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserStatus(userDO.getId(), corpinfoId, UserChangeRecordStatusEnum.PENDING.getCode()); UserCorpRecordE userCorpRecordE = new UserCorpRecordE(); if (userCorpRecordDO != null) { BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE); userCorpRecordE.executeEntryAudit(userCorpRecordE, userE, UserEmploymentFlagEnum.ON.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode()); userCorpRecordGateway.update(userCorpRecordE); } - // 增加用户变更记录 ,获取变更记录 UserChangeRecordE userChangeRecordE = new UserChangeRecordE(); - userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode()); + + userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode()); userCorpRecordE.setStartTime( LocalDateTime.now()); userChangeRecordGateway.add(userChangeRecordE); @@ -379,7 +360,7 @@ public class UserUpdateExe { } else { //驳回 //驳回 - UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ENTRY_AUDIT.getCode()); + UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserStatus(userDO.getId(), corpinfoId, UserChangeRecordStatusEnum.PENDING.getCode()); UserCorpRecordE userCorpRecordE = new UserCorpRecordE(); if (userCorpRecordDO != null) { BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE); @@ -387,7 +368,7 @@ public class UserUpdateExe { userCorpRecordGateway.update(userCorpRecordE); } UserChangeRecordE userChangeRecordE = new UserChangeRecordE(); - userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.NOT_ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode()); + userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.NOT_ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode()); userChangeRecordGateway.add(userChangeRecordE); } @@ -409,6 +390,8 @@ public class UserUpdateExe { } employmentFlagBefore = userCorpDO.getEmploymentFlag(); userE = userCorpRepository.executeResignation(userCorpDO, corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode()); + userCorpDO.setEmploymentFlag(UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode()); + userCorpRepository.updateById(userCorpDO); } else { userE = new UserE(); BeanUtils.copyProperties(userDO, userE); @@ -416,12 +399,14 @@ public class UserUpdateExe { userE.setEmploymentFlag(UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode()); userGateway.update(userE); } - + UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ON.getCode()); + userCorpRecordDO.setStatus(UserChangeRecordStatusEnum.PENDING.getCode()); + userCorpRecordRepository.updateById(userCorpRecordDO); //插入变更记录 UserChangeRecordE userChangeRecordE = new UserChangeRecordE(); - userChangeRecordE.executeResignation(userE, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode(), UserChangeRecordStatusEnum.PENDING.getCode(), employmentFlagBefore); + userChangeRecordE.executeResignation(userE, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.PENDING.getCode(), employmentFlagBefore); userChangeRecordGateway.add(userChangeRecordE); - //TODO 处理未完成工作 + // 处理未完成工作 List allJob = getUserJob(userDO.getId(),corpinfoId,userChangeRecordE.getUserChangeRecordId()); if(CollUtil.isNotEmpty(allJob)){ userJobHandoverRepository.saveBatch(allJob); @@ -459,20 +444,6 @@ public class UserUpdateExe { allJob.add(userJobHandoverDO); }); } - //循环获取所有未完成工作 - /* userJobFacadeList.forEach(userJobFacade -> { - try { - MultiResponse userJob = userJobFacade.getUserJob(zcloudUserJobQry); - List data = userJob.getData(); - List userJobHandoverEList = userJobHandoverCoConvertor.converCosToDOs( data); - userJobHandoverEList.forEach(userJobHandoverE -> { - userJobHandoverE.setUserChangeRecordId(userChangeRecordId); - }); - allJob.addAll(userJobHandoverEList); - }catch (Exception e){ - log.error("获取用户未完成工作失败, userId: {}, corpinfoId: {},类信息{}", userId, corpinfoId,userJobFacade.getClass(),e); - } - });*/ return allJob; } private void ResignatioChangeJob(List allJob) { @@ -485,14 +456,12 @@ public class UserUpdateExe { cmd.setUserId(info.getUserId()); //隐患信息,需要传入企业id cmd.setDeptId(info.getCorpinfoId()); - SingleResponse singleResponse = zcloudHiddenFacade.updateHiddenByUserId(cmd); + zcloudHiddenFacade.updateHiddenByUserId(cmd); userJobHandoverRepository.processUserJobHandover(info.getUserChangeRecordId()); //隐患出异常是直接抛异常 break; } - - }); diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/query/UserQueryExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/query/UserQueryExe.java index 5afe7f2..a5c7113 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/query/UserQueryExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/query/UserQueryExe.java @@ -9,14 +9,20 @@ import com.alibaba.cola.exception.BizException; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.jjb.saas.framework.auth.model.SSOUser; import com.jjb.saas.framework.auth.utils.AuthContext; +import com.zcloud.basic.info.command.convertor.CorpInfoCoConvertor; import com.zcloud.basic.info.command.convertor.UserCoConvertor; +import com.zcloud.basic.info.domain.enums.UserFlowFlagEnum; import com.zcloud.basic.info.domain.gateway.UserGateway; import com.zcloud.basic.info.domain.model.UserE; import com.zcloud.basic.info.dto.*; +import com.zcloud.basic.info.dto.clientobject.CorpDepartmentCO; +import com.zcloud.basic.info.dto.clientobject.CorpInfoCO; import com.zcloud.basic.info.dto.clientobject.UserCO; import com.zcloud.basic.info.dto.clientobject.UserXmfCO; +import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO; import com.zcloud.basic.info.persistence.dataobject.UserCorpDO; import com.zcloud.basic.info.persistence.dataobject.UserDO; +import com.zcloud.basic.info.persistence.repository.CorpInfoRepository; import com.zcloud.basic.info.persistence.repository.UserCorpRepository; import com.zcloud.basic.info.persistence.repository.UserRepository; import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity; @@ -28,6 +34,7 @@ import org.springframework.stereotype.Component; import javax.servlet.http.HttpServletResponse; import java.util.*; +import java.util.stream.Collectors; /** @@ -43,6 +50,8 @@ public class UserQueryExe { private final UserGateway userGateway; private final UserCoConvertor userCoConvertor; private final UserCorpRepository userCorpRepository; + private final CorpInfoRepository corpInfoRepository; + private final CorpInfoCoConvertor corpInfoCoConvertor; /** * 分页 @@ -202,5 +211,61 @@ public class UserQueryExe { return PageResponse.of(userXmfCOList, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); } + + public List login(UserAppLoginCmd cmd) { + //返回企业列表 + UserDO userDO = userRepository.getByPhone(cmd.getPhone()); + if(userDO == null){ + throw new BizException("手机号不存在"); + } + //判断密码是否正确 + UserE userE = new UserE(); + userE.setPassword(userDO.getPassword()); + userE.encryptionPassword(); + if(!userE.getPassword().equals(userDO.getPassword())){ + throw new BizException("密码错误"); + } + //判断是流动人员还是固定人员 + if(UserFlowFlagEnum.FIXED.getCode().equals(userDO.getFlowFlag()) && userDO.getCorpinfoId() != null){ + CorpInfoDO corpInfoDO = corpInfoRepository.getById(userDO.getCorpinfoId()); + CorpInfoCO corpInfoCO = new CorpInfoCO(); + BeanUtils.copyProperties(corpInfoDO, corpInfoCO); + return Arrays.asList(corpInfoCO); + } + if(UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())){ + List userCorpDOS = userCorpRepository.getONCorpInfo(userDO.getId()); + if(CollUtil.isEmpty(userCorpDOS)){ + return null; + } + List corpinfoIds = userCorpDOS.stream().map(UserCorpDO::getCorpinfoId).collect(Collectors.toList()); + List corpInfoDOList = corpInfoRepository.getByIdList(corpinfoIds); + List corpInfoCOS = corpInfoCoConvertor.converDOsToCOs(corpInfoDOList); + return corpInfoCOS; + } + return null; + } + + public List getUserCorpList(Long id) { + //返回企业列表 + UserDO userDO = userRepository.getById(id); + //判断是流动人员还是固定人员 + if(UserFlowFlagEnum.FIXED.getCode().equals(userDO.getFlowFlag()) && userDO.getCorpinfoId() != null){ + CorpInfoDO corpInfoDO = corpInfoRepository.getById(userDO.getCorpinfoId()); + CorpInfoCO corpInfoCO = new CorpInfoCO(); + BeanUtils.copyProperties(corpInfoDO, corpInfoCO); + return Arrays.asList(corpInfoCO); + } + if(UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())){ + List userCorpDOS = userCorpRepository.getONCorpInfo(userDO.getId()); + if(CollUtil.isEmpty(userCorpDOS)){ + return null; + } + List corpinfoIds = userCorpDOS.stream().map(UserCorpDO::getCorpinfoId).collect(Collectors.toList()); + List corpInfoDOList = corpInfoRepository.getByIdList(corpinfoIds); + List corpInfoCOS = corpInfoCoConvertor.converDOsToCOs(corpInfoDOList); + return corpInfoCOS; + } + return null; + } } diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/UserCorpServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/UserCorpServiceImpl.java index 447937b..a988ea8 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/service/UserCorpServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/basic/info/service/UserCorpServiceImpl.java @@ -36,7 +36,6 @@ public class UserCorpServiceImpl implements UserCorpServiceI { @Override public SingleResponse add(UserCorpAddCmd cmd) { - userCorpAddExe.execute(cmd); return SingleResponse.buildSuccess(); } diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/UserServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/UserServiceImpl.java index 73028d6..065efb2 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/service/UserServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/basic/info/service/UserServiceImpl.java @@ -11,6 +11,7 @@ import com.zcloud.basic.info.command.UserRemoveExe; import com.zcloud.basic.info.command.UserUpdateExe; import com.zcloud.basic.info.command.query.UserQueryExe; import com.zcloud.basic.info.dto.*; +import com.zcloud.basic.info.dto.clientobject.CorpInfoCO; import com.zcloud.basic.info.dto.clientobject.UserCO; import com.zcloud.basic.info.dto.clientobject.UserXmfCO; import lombok.AllArgsConstructor; @@ -207,5 +208,16 @@ public class UserServiceImpl implements UserServiceI { public void checkOnboarding(AppUserLogOutCmd cmd) { userRemoveExe.executeCheckOnboarding(cmd); } + + @Override + public List login(UserAppLoginCmd cmd) { + return userQueryExe.login(cmd); + + } + + @Override + public List getUserCorpList(Long id) { + return userQueryExe.getUserCorpList(id); + } } diff --git a/web-client/src/main/java/com/zcloud/basic/info/api/UserServiceI.java b/web-client/src/main/java/com/zcloud/basic/info/api/UserServiceI.java index 1eda23f..a135a0d 100644 --- a/web-client/src/main/java/com/zcloud/basic/info/api/UserServiceI.java +++ b/web-client/src/main/java/com/zcloud/basic/info/api/UserServiceI.java @@ -6,6 +6,7 @@ import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.Response; import com.alibaba.cola.dto.SingleResponse; import com.zcloud.basic.info.dto.*; +import com.zcloud.basic.info.dto.clientobject.CorpInfoCO; import com.zcloud.basic.info.dto.clientobject.UserCO; import com.zcloud.basic.info.dto.clientobject.UserXmfCO; import org.springframework.web.multipart.MultipartFile; @@ -81,5 +82,9 @@ public interface UserServiceI { void logOut(AppUserLogOutCmd cmd); void checkOnboarding(AppUserLogOutCmd cmd); + + List login(UserAppLoginCmd cmd); + + List getUserCorpList(Long id); } diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/UserAppLoginCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/UserAppLoginCmd.java new file mode 100644 index 0000000..2ccf831 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/basic/info/dto/UserAppLoginCmd.java @@ -0,0 +1,27 @@ +package com.zcloud.basic.info.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; + + +/** + * web-client + * + * @Author zhangyue + * @Date 2025-11-04 14:07:36 + */ +@Data +public class UserAppLoginCmd { + + @ApiModelProperty(value = "手机号", name = "phone", required = true) + @NotEmpty(message = "手机号不能为空") + private String phone; + //密码 + @ApiModelProperty(value = "密码", name = "password", required = true) + @NotEmpty(message = "密码不能为空") + private String password; + +} + diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/UserCorpRecordPageQry.java b/web-client/src/main/java/com/zcloud/basic/info/dto/UserCorpRecordPageQry.java index b4918e2..159a312 100644 --- a/web-client/src/main/java/com/zcloud/basic/info/dto/UserCorpRecordPageQry.java +++ b/web-client/src/main/java/com/zcloud/basic/info/dto/UserCorpRecordPageQry.java @@ -1,8 +1,11 @@ package com.zcloud.basic.info.dto; import com.alibaba.cola.dto.PageQuery; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotNull; + /** * web-client @@ -23,6 +26,9 @@ public class UserCorpRecordPageQry extends PageQuery { * - `le`: 小于等于比较查询 * - `ne`: 不等比较查询,对应SQL的!=操作符 */ - private String likeUserCorpRecordId; + + @ApiModelProperty("不等于的入职状态,(就职企业传0),1-在职 0-离职, 11-入职待审核, 10-离职待审核") + @NotNull(message = "状态不能为空") + private Integer neEmploymentFlag; } diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/UserReviewStatusCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/UserReviewStatusCmd.java index 1157b15..5a02597 100644 --- a/web-client/src/main/java/com/zcloud/basic/info/dto/UserReviewStatusCmd.java +++ b/web-client/src/main/java/com/zcloud/basic/info/dto/UserReviewStatusCmd.java @@ -3,6 +3,7 @@ package com.zcloud.basic.info.dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotNull; import java.io.Serializable; @@ -26,15 +27,18 @@ public class UserReviewStatusCmd implements Serializable { * - `ne`: 不等比较查询,对应SQL的!=操作符 */ @ApiModelProperty(value = "用户id") + @NotNull(message = "用户不能为空") private Long userId; //企业id @ApiModelProperty(value = "企业id") + @NotNull(message = "企业不能为空") private Long corpinfoId; //审核状态 @ApiModelProperty(value = "审核状态,2-通过,3-驳回") + @NotNull(message = "审核状态不能为空") private Integer reviewStatus; //审核状态 - @ApiModelProperty(value = "入职状态,1-在职 0-离职, 11-入职待审核, 10-离职待审核") + @ApiModelProperty(value = "入职状态,1-在职 0-离职,") private Integer employmentFlag; diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CorpUseFlagEnum.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CorpUseFlagEnum.java new file mode 100644 index 0000000..85d3184 --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CorpUseFlagEnum.java @@ -0,0 +1,18 @@ +package com.zcloud.basic.info.domain.enums; + +import lombok.Getter; +//是否启用,1:启用,0:关闭 +@Getter +public enum CorpUseFlagEnum { + NO(0,"关闭"), + YES(1,"启用"), + ; + + private final Integer code; + private final String name; + + CorpUseFlagEnum(Integer code,String name) { + this.code = code; + this.name = name; + } +} diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserEmploymentFlagEnum.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserEmploymentFlagEnum.java index bb6080f..2710423 100644 --- a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserEmploymentFlagEnum.java +++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserEmploymentFlagEnum.java @@ -22,7 +22,6 @@ public enum UserEmploymentFlagEnum { END_OF_LABOR_DISPATCH(8, "劳务派遣结束"), ENTRY_AUDIT(11, "入职待审核"), RESIGNATION_AUDIT(10, "离职待审核"), -// REJECT(12, "驳回"), ; private final Integer code; private final String desc; diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserChangeRecordE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserChangeRecordE.java index 1e7f34a..f31f124 100644 --- a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserChangeRecordE.java +++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserChangeRecordE.java @@ -79,7 +79,7 @@ public class UserChangeRecordE extends BaseE { this.setDepartmentNameAfter(departmentName); this.setPostIdAfter(userE.getPostId()); this.setPostNameAfter(userE.getPostName()); - this.setUserStatusAfter(UserEmploymentFlagEnum.ENTRY_AUDIT.getCode()); + this.setUserStatusAfter(UserEmploymentFlagEnum.ON.getCode()); this.setStatus(UserChangeRecordStatusEnum.PENDING.getCode()); } diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserCorpRecordE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserCorpRecordE.java index e28374d..9ba3e59 100644 --- a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserCorpRecordE.java +++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserCorpRecordE.java @@ -87,7 +87,7 @@ public class UserCorpRecordE extends BaseE { this.departmentName = departmentName; this.postId = userE.getPostId(); this.postName = userE.getPostName(); - this.employmentFlag = UserEmploymentFlagEnum.ENTRY_AUDIT.getCode(); + this.employmentFlag = UserEmploymentFlagEnum.NOT_ON.getCode(); this.status = UserChangeRecordStatusEnum.PENDING.getCode(); } diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java index 88972ec..327bcdd 100644 --- a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java +++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java @@ -286,5 +286,15 @@ public class UserE extends BaseE { this.setCorpinfoId(userCorpE.getCorpinfoId()); this.setEmploymentFlag(userCorpE.getEmploymentFlag()); } + + public boolean verifyTransferFlow(UserE oldUserE, UserE newUserE) { + if(newUserE.getFlowFlag() == null){ + return false; + } + if (!oldUserE.getFlowFlag().equals(newUserE.getFlowFlag())) { + return true; + } + return false; + } } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/UserDO.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/UserDO.java index 22f6fd3..3bba7ee 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/UserDO.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/UserDO.java @@ -35,6 +35,7 @@ public class UserDO extends BaseDO { @ApiModelProperty(value = "企业名称") @TableField(exist = false) private String corpinfoName; + //是否主账号1是0否 @ApiModelProperty(value = "是否主账号1是0否") private Integer mainCorpFlag; @@ -134,7 +135,6 @@ public class UserDO extends BaseDO { //密码 @ApiModelProperty(value = "密码") - @TableField(exist = false) private String password; //密码 @ApiModelProperty(value = "新密码") diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java index 01cdf28..8d15aa2 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java @@ -33,5 +33,7 @@ public interface CorpInfoRepository extends BaseRepository { PageResponse corpUserMiddlePage(Map parmas); CorpInfoDO getCorpInfoByCorpName(String corpName); + + List getByIdList(List corpinfoIds); } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRecordRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRecordRepository.java index fc9091d..6f42a00 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRecordRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRecordRepository.java @@ -4,6 +4,8 @@ import com.alibaba.cola.dto.PageResponse; import com.jjb.saas.framework.repository.repo.BaseRepository; import com.zcloud.basic.info.persistence.dataobject.UserCorpRecordDO; +import javax.validation.constraints.NotNull; +import java.util.List; import java.util.Map; /** @@ -16,5 +18,8 @@ public interface UserCorpRecordRepository extends BaseRepository listPage(Map params); UserCorpRecordDO getInfoByUserId(Long id, Long corpinfoId, Integer code); + UserCorpRecordDO getInfoByUserStatus(Long id, Long corpinfoId, Integer status); + + List getInfoListByUserId(Long id); } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRepository.java index 19615e8..b13c287 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserCorpRepository.java @@ -5,6 +5,7 @@ import com.jjb.saas.framework.repository.repo.BaseRepository; import com.zcloud.basic.info.domain.model.UserE; import com.zcloud.basic.info.persistence.dataobject.UserCorpDO; +import javax.validation.constraints.NotNull; import java.util.List; import java.util.Map; @@ -33,5 +34,6 @@ public interface UserCorpRepository extends BaseRepository { void removeByUserId(Long userId); + List getONCorpInfo(@NotNull(message = "用户id不能为空") Long id); } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java index e8680d9..9aed7be 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java @@ -23,6 +23,7 @@ import com.jjb.saas.system.client.unit.request.OpeUnitUpdateCmd; import com.jjb.saas.system.client.user.facade.UserFacade; import com.jjb.saas.system.client.user.request.UserUpdateCmd; import com.zcloud.basic.info.domain.enums.CorpTypeEnum; +import com.zcloud.basic.info.domain.enums.CorpUseFlagEnum; import com.zcloud.basic.info.domain.enums.MenuEnum; import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO; import com.zcloud.basic.info.persistence.mapper.CorpInfoMapper; @@ -203,5 +204,13 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl getByIdList(List corpinfoIds) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.in("id", corpinfoIds); + queryWrapper.eq("use_flag", CorpUseFlagEnum.YES.getCode()); + return corpInfoMapper.selectList(queryWrapper); + } } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRecordRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRecordRepositoryImpl.java index a19dd90..fdb96fe 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRecordRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRecordRepositoryImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.jjb.saas.framework.repository.common.PageHelper; import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum; import com.zcloud.basic.info.persistence.dataobject.UserCorpRecordDO; import com.zcloud.basic.info.persistence.mapper.UserCorpRecordMapper; import com.zcloud.basic.info.persistence.repository.UserCorpRecordRepository; @@ -13,6 +14,7 @@ import com.zcloud.gbscommon.utils.Query; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import java.util.List; import java.util.Map; /** @@ -44,5 +46,23 @@ public class UserCorpRecordRepositoryImpl extends BaseRepositoryImpl queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("user_id", id); + queryWrapper.eq("corpinfo_id", corpinfoId); + queryWrapper.eq("status", status); + return userCorpRecordMapper.selectOne(queryWrapper); + } + + //获取用户下未离职的企业 + @Override + public List getInfoListByUserId(Long id) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("user_id", id); + queryWrapper.ne("employment_flag", UserEmploymentFlagEnum.RESIGNATION.getCode()); + return userCorpRecordMapper.selectList(queryWrapper); + } } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRepositoryImpl.java index 848a801..a35d222 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserCorpRepositoryImpl.java @@ -8,6 +8,7 @@ import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum; import com.zcloud.basic.info.domain.model.UserE; import com.zcloud.basic.info.persistence.dataobject.UserCorpDO; +import com.zcloud.basic.info.persistence.dataobject.UserCorpRecordDO; import com.zcloud.basic.info.persistence.mapper.UserCorpMapper; import com.zcloud.basic.info.persistence.repository.UserCorpRepository; import com.zcloud.gbscommon.utils.PageQueryHelper; @@ -108,6 +109,13 @@ public class UserCorpRepositoryImpl extends BaseRepositoryImpl getONCorpInfo(Long id) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("user_id", id); + queryWrapper.eq("employment_flag", UserEmploymentFlagEnum.ON.getCode()); + return userCorpMapper.selectList(queryWrapper); + } } 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 dd73b4e..48b1638 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 @@ -363,6 +363,12 @@ public class UserRepositoryImpl extends BaseRepositoryImpl i @Override public void changePassword(Long id, String password) { + //更新本地密码 + UserDO userDOUpdate = new UserDO(); + userDOUpdate.setId(id); + userDOUpdate.setPassword(password); + updateById(userDOUpdate); + //更新gbs密码 UserUpdatePasswordCmd userUpdatePasswordCmd = new UserUpdatePasswordCmd(); userUpdatePasswordCmd.setId(id); userUpdatePasswordCmd.setPassword(password); @@ -426,6 +432,11 @@ public class UserRepositoryImpl extends BaseRepositoryImpl i return Response.buildFailure("原密码不正确"); } } + //更新本地密码 + UserDO userDOUpdate = new UserDO(); + userDOUpdate.setId(userDO.getId()); + userDOUpdate.setPassword(userDO.getNewPassword()); + updateById(userDOUpdate); // 更新密码 UserUpdatePasswordCmd userUpdatePasswordCmd = new UserUpdatePasswordCmd();