Merge remote-tracking branch 'origin/main' into main
commit
683a681e10
|
|
@ -2,6 +2,7 @@ package com.zcloud.basic.info;
|
||||||
|
|
||||||
import com.jjb.saas.base.starter.bootstart.JJBSpringbootApplication;
|
import com.jjb.saas.base.starter.bootstart.JJBSpringbootApplication;
|
||||||
import com.jjb.saas.facade.starter.annotation.EnableFacadeRpcClient;
|
import com.jjb.saas.facade.starter.annotation.EnableFacadeRpcClient;
|
||||||
|
import com.jjb.saas.framework.event.consumer.EnableConsumer;
|
||||||
import org.springframework.boot.SpringApplication;
|
import org.springframework.boot.SpringApplication;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -13,6 +14,7 @@ import org.springframework.boot.SpringApplication;
|
||||||
mapperPackages = {"com.zcloud.basic.info.persistence.mapper"}
|
mapperPackages = {"com.zcloud.basic.info.persistence.mapper"}
|
||||||
)
|
)
|
||||||
//@EnableFacadeRpcClient
|
//@EnableFacadeRpcClient
|
||||||
|
@EnableConsumer
|
||||||
public class Application {
|
public class Application {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
|
|
||||||
|
|
@ -2,29 +2,26 @@ package com.zcloud.basic.info.event;
|
||||||
|
|
||||||
import com.jjb.saas.framework.event.consumer.MessageConsumer;
|
import com.jjb.saas.framework.event.consumer.MessageConsumer;
|
||||||
import com.jjb.saas.framework.event.consumer.MsgConsumer;
|
import com.jjb.saas.framework.event.consumer.MsgConsumer;
|
||||||
import com.jjb.saas.framework.event.dto.BaseEvent;
|
import com.zcloud.gbscommon.event.user.ZcUserResignation;
|
||||||
import com.jjb.saas.framework.event.producer.RemoteEventPublisher;
|
|
||||||
import com.jjb.saas.system.client.user.event.UserAddEvent;
|
|
||||||
import com.zcloud.gbscommon.event.user.ZcUserEvent;
|
|
||||||
import lombok.Data;
|
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author lin
|
* @author lin
|
||||||
*/
|
*/
|
||||||
@Component
|
@Component
|
||||||
@MsgConsumer(tag = "zcloud:user:ev")
|
@MsgConsumer(tag = "zcloud:user:resignation")
|
||||||
public class UserUpdateAuditStatusConsumer implements MessageConsumer<ZcUserEvent> {
|
public class UserUpdateAuditStatusConsumer implements MessageConsumer<ZcUserResignation> {
|
||||||
// private RemoteEventPublisher eventPublisher;
|
/* private RemoteEventPublisher eventPublisher;
|
||||||
|
|
||||||
// public UserUpdateAuditStatusConsumer(RemoteEventPublisher eventPublisher) {
|
public UserUpdateAuditStatusConsumer(RemoteEventPublisher eventPublisher) {
|
||||||
// this.eventPublisher = eventPublisher;
|
this.eventPublisher = eventPublisher;
|
||||||
// }
|
}*/
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void consume(ZcUserEvent event) {
|
public void consume(ZcUserResignation event) {
|
||||||
|
|
||||||
System.out.println(event.getName());
|
System.out.println(event.getUserId());
|
||||||
|
System.out.println(event.getCorpinfoId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,16 +10,24 @@ import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
import com.zcloud.basic.info.api.UserServiceI;
|
import com.zcloud.basic.info.api.UserServiceI;
|
||||||
import com.zcloud.basic.info.dto.*;
|
import com.zcloud.basic.info.dto.*;
|
||||||
import com.zcloud.basic.info.dto.clientobject.UserCO;
|
import com.zcloud.basic.info.dto.clientobject.UserCO;
|
||||||
|
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
|
||||||
import com.zcloud.basic.info.plan.DockingRZUserPlanJob;
|
import com.zcloud.basic.info.plan.DockingRZUserPlanJob;
|
||||||
import com.zcloud.basic.info.dto.clientobject.UserXmfCO;
|
import com.zcloud.basic.info.dto.clientobject.UserXmfCO;
|
||||||
import com.zcloud.gbscommon.translateaop.TranslateField;
|
import com.zcloud.gbscommon.translateaop.TranslateField;
|
||||||
|
import com.zcloud.gbscommon.zclouduser.facade.ZcloudUserJobFacade;
|
||||||
|
import com.zcloud.gbscommon.zclouduser.request.ZcloudUserJobQry;
|
||||||
|
import com.zcloud.gbscommon.zclouduser.response.ZcloudUserJobCo;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.apache.dubbo.config.annotation.DubboReference;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -35,6 +43,9 @@ import javax.servlet.http.HttpServletResponse;
|
||||||
public class UserController {
|
public class UserController {
|
||||||
private final UserServiceI userService;
|
private final UserServiceI userService;
|
||||||
private final TranslateField translateField;
|
private final TranslateField translateField;
|
||||||
|
// @DubboReference
|
||||||
|
// private List<ZcloudUserJobFacade> userJobFacadeList;
|
||||||
|
|
||||||
@ApiOperation("新增用户")
|
@ApiOperation("新增用户")
|
||||||
@PostMapping("/test")
|
@PostMapping("/test")
|
||||||
public SingleResponse<UserCO> test(@RequestBody UserCO cmd) {
|
public SingleResponse<UserCO> test(@RequestBody UserCO cmd) {
|
||||||
|
|
@ -82,6 +93,21 @@ public class UserController {
|
||||||
@ApiOperation("详情")
|
@ApiOperation("详情")
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public SingleResponse<UserCO> getInfoById(@PathVariable("id") Long id) {
|
public SingleResponse<UserCO> getInfoById(@PathVariable("id") Long id) {
|
||||||
|
/* ZcloudUserJobQry zcloudUserJobQry = new ZcloudUserJobQry();
|
||||||
|
zcloudUserJobQry.setUserId(11L);
|
||||||
|
zcloudUserJobQry.setCorpinfoId(123L);
|
||||||
|
List<ZcloudUserJobCo> allJob = new ArrayList<>();
|
||||||
|
userJobFacadeList.forEach(userJobFacade -> {
|
||||||
|
try {
|
||||||
|
MultiResponse<ZcloudUserJobCo> userJob = userJobFacade.getUserJob(zcloudUserJobQry);
|
||||||
|
List<ZcloudUserJobCo> data = userJob.getData();
|
||||||
|
|
||||||
|
allJob.addAll(data);
|
||||||
|
}catch (Exception e){
|
||||||
|
System.out.println( e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
System.out.println(allJob);*/
|
||||||
return userService.getInfoById(id);
|
return userService.getInfoById(id);
|
||||||
}
|
}
|
||||||
@ApiOperation("获取当前登录人信息")
|
@ApiOperation("获取当前登录人信息")
|
||||||
|
|
|
||||||
|
|
@ -1,32 +1,37 @@
|
||||||
package com.zcloud.basic.info.command;
|
package com.zcloud.basic.info.command;
|
||||||
|
|
||||||
|
import com.alibaba.cola.dto.MultiResponse;
|
||||||
import com.alibaba.cola.dto.Response;
|
import com.alibaba.cola.dto.Response;
|
||||||
import com.alibaba.cola.exception.BizException;
|
import com.alibaba.cola.exception.BizException;
|
||||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
import com.jjb.saas.system.client.user.facade.UserFacade;
|
import com.jjb.saas.system.client.user.facade.UserFacade;
|
||||||
import com.zcloud.basic.info.constant.RedisConstant;
|
import com.zcloud.basic.info.constant.RedisConstant;
|
||||||
|
import com.zcloud.basic.info.command.convertor.UserJobHandoverCoConvertor;
|
||||||
import com.zcloud.basic.info.domain.enums.UserChangeRecordStatusEnum;
|
import com.zcloud.basic.info.domain.enums.UserChangeRecordStatusEnum;
|
||||||
import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum;
|
import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum;
|
||||||
import com.zcloud.basic.info.domain.enums.UserFlowFlagEnum;
|
import com.zcloud.basic.info.domain.enums.UserFlowFlagEnum;
|
||||||
|
import com.zcloud.basic.info.domain.enums.UserJobStatusEnum;
|
||||||
import com.zcloud.basic.info.domain.gateway.*;
|
import com.zcloud.basic.info.domain.gateway.*;
|
||||||
import com.zcloud.basic.info.domain.model.*;
|
import com.zcloud.basic.info.domain.model.*;
|
||||||
import com.zcloud.basic.info.dto.*;
|
import com.zcloud.basic.info.dto.*;
|
||||||
|
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
|
||||||
import com.zcloud.basic.info.persistence.dataobject.*;
|
import com.zcloud.basic.info.persistence.dataobject.*;
|
||||||
import com.zcloud.basic.info.persistence.repository.*;
|
import com.zcloud.basic.info.persistence.repository.*;
|
||||||
import com.zcloud.gbscommon.utils.Const;
|
|
||||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
|
||||||
import com.zcloud.gbscommon.utils.ZcloudRedisUtil;
|
import com.zcloud.gbscommon.utils.ZcloudRedisUtil;
|
||||||
|
import com.zcloud.gbscommon.zclouduser.facade.ZcloudUserJobFacade;
|
||||||
|
import com.zcloud.gbscommon.zclouduser.request.ZcloudUserJobQry;
|
||||||
|
import com.zcloud.gbscommon.zclouduser.response.ZcloudUserJobCo;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.catalina.User;
|
import org.apache.catalina.User;
|
||||||
import org.apache.dubbo.config.annotation.DubboReference;
|
import org.apache.dubbo.config.annotation.DubboReference;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.util.ObjectUtils;
|
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.util.ArrayList;
|
||||||
import java.util.Map;
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -37,6 +42,7 @@ import java.util.Map;
|
||||||
*/
|
*/
|
||||||
@Component
|
@Component
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
|
@Slf4j
|
||||||
public class UserUpdateExe {
|
public class UserUpdateExe {
|
||||||
private final UserGateway userGateway;
|
private final UserGateway userGateway;
|
||||||
|
|
||||||
|
|
@ -51,9 +57,16 @@ public class UserUpdateExe {
|
||||||
private final DepartmentRepository departmentRepository;
|
private final DepartmentRepository departmentRepository;
|
||||||
private final UserCorpRecordRepository userCorpRecordRepository;
|
private final UserCorpRecordRepository userCorpRecordRepository;
|
||||||
private final UserCorpRecordGateway userCorpRecordGateway;
|
private final UserCorpRecordGateway userCorpRecordGateway;
|
||||||
|
private final UserJobHandoverRepository userJobHandoverRepository;
|
||||||
|
private final UserJobHandoverCoConvertor userJobHandoverCoConvertor;
|
||||||
@DubboReference
|
@DubboReference
|
||||||
private UserFacade userFacade;
|
private UserFacade userFacade;
|
||||||
private ZcloudRedisUtil zcloudRedisUtil;
|
private ZcloudRedisUtil zcloudRedisUtil;
|
||||||
|
// @DubboReference
|
||||||
|
// private List<ZcloudUserJobFacade> userJobFacadeList;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void execute(UserUpdateCmd userUpdateCmd) {
|
public void execute(UserUpdateCmd userUpdateCmd) {
|
||||||
|
|
@ -164,47 +177,49 @@ public class UserUpdateExe {
|
||||||
//获取用户信息,并更新离职状态为离职
|
//获取用户信息,并更新离职状态为离职
|
||||||
UserDO userDO = userRepository.getInfoById(userResignationCmd.getUserId());
|
UserDO userDO = userRepository.getInfoById(userResignationCmd.getUserId());
|
||||||
//
|
//
|
||||||
UserE userE=null;
|
UserE userE = null;
|
||||||
Long corpinfoId = userResignationCmd.getCorpinfoId()==null?AuthContext.getTenantId():userResignationCmd.getCorpinfoId();
|
Long corpinfoId = userResignationCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : userResignationCmd.getCorpinfoId();
|
||||||
Integer employmentFlagBefore;
|
Integer employmentFlagBefore;
|
||||||
if(UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())){
|
if (UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())) {
|
||||||
UserCorpDO userCorpDO = userCorpRepository.getInfoByUserId(userDO.getId(), corpinfoId);
|
UserCorpDO userCorpDO = userCorpRepository.getInfoByUserId(userDO.getId(), corpinfoId);
|
||||||
if (userCorpDO == null) {
|
if (userCorpDO == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
employmentFlagBefore = userCorpDO.getEmploymentFlag();
|
employmentFlagBefore = userCorpDO.getEmploymentFlag();
|
||||||
userE=userCorpRepository.executeResignation(userCorpDO, corpinfoId,UserEmploymentFlagEnum.RESIGNATION.getCode());
|
userE = userCorpRepository.executeResignation(userCorpDO, corpinfoId, UserEmploymentFlagEnum.RESIGNATION.getCode());
|
||||||
}else{
|
} else {
|
||||||
userE = new UserE();
|
userE = new UserE();
|
||||||
BeanUtils.copyProperties(userDO, userE);
|
BeanUtils.copyProperties(userDO, userE);
|
||||||
employmentFlagBefore = userDO.getEmploymentFlag();
|
employmentFlagBefore = userDO.getEmploymentFlag();
|
||||||
userE.setEmploymentFlag(UserEmploymentFlagEnum.RESIGNATION.getCode());
|
userE.setEmploymentFlag(UserEmploymentFlagEnum.RESIGNATION.getCode());
|
||||||
userGateway.update(userE);
|
userGateway.update(userE);
|
||||||
}
|
}
|
||||||
if(userE==null){
|
if (userE == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
//修改企业入职记录
|
//修改企业入职记录
|
||||||
|
|
||||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId,UserEmploymentFlagEnum.ON.getCode());
|
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ON.getCode());
|
||||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||||
if(userCorpRecordDO!=null){
|
if (userCorpRecordDO != null) {
|
||||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||||
userCorpRecordE.executeResignation(userCorpRecordE,userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
userCorpRecordE.executeResignation(userCorpRecordE, userE, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||||
userCorpRecordGateway.update(userCorpRecordE);
|
userCorpRecordGateway.update(userCorpRecordE);
|
||||||
}else{
|
} else {
|
||||||
userCorpRecordE.initResignation(userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
userCorpRecordE.initResignation(userE, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||||
userCorpRecordGateway.add(userCorpRecordE);
|
userCorpRecordGateway.add(userCorpRecordE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 增加用户变更记录
|
// 增加用户变更记录
|
||||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||||
userChangeRecordE.executeResignation(userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode(),employmentFlagBefore);
|
userChangeRecordE.executeResignation(userE, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode(), employmentFlagBefore);
|
||||||
userChangeRecordGateway.add(userChangeRecordE);
|
userChangeRecordGateway.add(userChangeRecordE);
|
||||||
//TODO 处理未完成工作
|
//TODO 处理未完成工作
|
||||||
|
List<UserJobHandoverDO> allJob = getUserJob(userDO.getId(),corpinfoId,userChangeRecordE.getUserChangeRecordId());
|
||||||
|
userJobHandoverRepository.saveBatch(allJob);
|
||||||
|
//离职发送方mq消息
|
||||||
|
userRepository.sendResignationMq(userResignationCmd.getUserId(),corpinfoId);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void executeReviewStatus(UserReviewStatusCmd userReviewStatusCmd) {
|
public void executeReviewStatus(UserReviewStatusCmd userReviewStatusCmd) {
|
||||||
|
|
@ -216,11 +231,11 @@ public class UserUpdateExe {
|
||||||
switch (employmentFlagEnum) {
|
switch (employmentFlagEnum) {
|
||||||
case ENTRY_AUDIT:
|
case ENTRY_AUDIT:
|
||||||
//入职待审核
|
//入职待审核
|
||||||
ReviewEntryAudit(userDO,userReviewStatusCmd);
|
ReviewEntryAudit(userDO, userReviewStatusCmd);
|
||||||
break;
|
break;
|
||||||
case RESIGNATION_AUDIT:
|
case RESIGNATION_AUDIT:
|
||||||
//离职待审核
|
//离职待审核
|
||||||
ReviewResignationAudit(userDO,userReviewStatusCmd);
|
ReviewResignationAudit(userDO, userReviewStatusCmd);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
throw new IllegalArgumentException("审核记录已完成");
|
throw new IllegalArgumentException("审核记录已完成");
|
||||||
|
|
@ -231,7 +246,7 @@ public class UserUpdateExe {
|
||||||
private void ReviewResignationAudit(UserDO userDO, UserReviewStatusCmd userReviewStatusCmd) {
|
private void ReviewResignationAudit(UserDO userDO, UserReviewStatusCmd userReviewStatusCmd) {
|
||||||
Integer reviewStatus = userReviewStatusCmd.getReviewStatus();
|
Integer reviewStatus = userReviewStatusCmd.getReviewStatus();
|
||||||
//TODO 驳回需要待处理,暂时按照只能通过处理
|
//TODO 驳回需要待处理,暂时按照只能通过处理
|
||||||
Integer employmentFlag = UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)?UserEmploymentFlagEnum.RESIGNATION.getCode():UserEmploymentFlagEnum.ON.getCode();
|
Integer employmentFlag = UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus) ? UserEmploymentFlagEnum.RESIGNATION.getCode() : UserEmploymentFlagEnum.ON.getCode();
|
||||||
UserE userE = null;
|
UserE userE = null;
|
||||||
Long corpinfoId = userReviewStatusCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : userReviewStatusCmd.getCorpinfoId();
|
Long corpinfoId = userReviewStatusCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : userReviewStatusCmd.getCorpinfoId();
|
||||||
if (UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())) {
|
if (UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())) {
|
||||||
|
|
@ -245,41 +260,41 @@ public class UserUpdateExe {
|
||||||
if (userE == null) {
|
if (userE == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)){
|
if (UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)) {
|
||||||
//修改企业入职记录
|
//修改企业入职记录
|
||||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
||||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||||
if(userCorpRecordDO!=null){
|
if (userCorpRecordDO != null) {
|
||||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||||
userCorpRecordE.executeResignation(userCorpRecordE,userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
userCorpRecordE.executeResignation(userCorpRecordE, userE, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||||
userCorpRecordGateway.update(userCorpRecordE);
|
userCorpRecordGateway.update(userCorpRecordE);
|
||||||
}else{
|
} else {
|
||||||
userCorpRecordE.initResignation(userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
userCorpRecordE.initResignation(userE, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||||
userCorpRecordGateway.add(userCorpRecordE);
|
userCorpRecordGateway.add(userCorpRecordE);
|
||||||
}
|
}
|
||||||
// 增加用户变更记录
|
// 发送mq消息 ,人员离职
|
||||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
userRepository.sendResignationMq(userE.getId(),corpinfoId);
|
||||||
userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.RESIGNATION.getCode());
|
//处理未完成的工作
|
||||||
userChangeRecordGateway.add(userChangeRecordE);
|
userJobHandoverRepository.processUserJobHandover(userCorpRecordE.getUserCorpRecordId());
|
||||||
}else{
|
} else {
|
||||||
//驳回
|
//驳回
|
||||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
||||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||||
if(userCorpRecordDO!=null){
|
if (userCorpRecordDO != null) {
|
||||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||||
userCorpRecordE.executeResignation(userCorpRecordE,userE,UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode());
|
userCorpRecordE.executeResignation(userCorpRecordE, userE, UserEmploymentFlagEnum.ON.getCode(), UserChangeRecordStatusEnum.REJECTED.getCode());
|
||||||
userCorpRecordGateway.update(userCorpRecordE);
|
userCorpRecordGateway.update(userCorpRecordE);
|
||||||
}else{
|
} else {
|
||||||
userCorpRecordE.initResignation(userE,UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode());
|
userCorpRecordE.initResignation(userE, UserEmploymentFlagEnum.ON.getCode(), UserChangeRecordStatusEnum.REJECTED.getCode());
|
||||||
userCorpRecordGateway.add(userCorpRecordE);
|
userCorpRecordGateway.add(userCorpRecordE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ReviewEntryAudit(UserDO userDO,UserReviewStatusCmd userReviewStatusCmd) {
|
private void ReviewEntryAudit(UserDO userDO, UserReviewStatusCmd userReviewStatusCmd) {
|
||||||
Integer reviewStatus = userReviewStatusCmd.getReviewStatus();
|
Integer reviewStatus = userReviewStatusCmd.getReviewStatus();
|
||||||
//TODO 驳回需要待处理,暂时按照只能通过处理
|
//TODO 驳回需要待处理,暂时按照只能通过处理
|
||||||
Integer employmentFlag = UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)?UserEmploymentFlagEnum.ON.getCode():UserEmploymentFlagEnum.NOT_ON.getCode();
|
Integer employmentFlag = UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus) ? UserEmploymentFlagEnum.ON.getCode() : UserEmploymentFlagEnum.NOT_ON.getCode();
|
||||||
UserE userE = null;
|
UserE userE = null;
|
||||||
Long corpinfoId = userReviewStatusCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : userReviewStatusCmd.getCorpinfoId();
|
Long corpinfoId = userReviewStatusCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : userReviewStatusCmd.getCorpinfoId();
|
||||||
if (UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())) {
|
if (UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())) {
|
||||||
|
|
@ -293,7 +308,7 @@ public class UserUpdateExe {
|
||||||
if (userE == null) {
|
if (userE == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)){
|
if (UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)) {
|
||||||
//增加企业入职记录
|
//增加企业入职记录
|
||||||
//增加用户入职企业. 驳回不增加下边信息
|
//增加用户入职企业. 驳回不增加下边信息
|
||||||
CorpInfoDO corpInfoDO = corpInfoRepository.getById(userE.getCorpinfoId());
|
CorpInfoDO corpInfoDO = corpInfoRepository.getById(userE.getCorpinfoId());
|
||||||
|
|
@ -301,20 +316,20 @@ public class UserUpdateExe {
|
||||||
|
|
||||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||||
BeanUtils.copyProperties(userDO, userCorpRecordE);
|
BeanUtils.copyProperties(userDO, userCorpRecordE);
|
||||||
userCorpRecordE.initAdd(userE,corpInfoDO.getCorpName(),departmentDO.getName());
|
userCorpRecordE.initAdd(userE, corpInfoDO.getCorpName(), departmentDO.getName());
|
||||||
userCorpRecordGateway.add(userCorpRecordE);
|
userCorpRecordGateway.add(userCorpRecordE);
|
||||||
// 增加用户变更记录
|
// 增加用户变更记录
|
||||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||||
userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.ON.getCode());
|
userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.ON.getCode());
|
||||||
userChangeRecordGateway.add(userChangeRecordE);
|
userChangeRecordGateway.add(userChangeRecordE);
|
||||||
}else{
|
} else {
|
||||||
//驳回
|
//驳回
|
||||||
//驳回
|
//驳回
|
||||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ENTRY_AUDIT.getCode());
|
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ENTRY_AUDIT.getCode());
|
||||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||||
if(userCorpRecordDO!=null){
|
if (userCorpRecordDO != null) {
|
||||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||||
userCorpRecordE.executeEntryAudit(userCorpRecordE,userE,UserEmploymentFlagEnum.NOT_ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode());
|
userCorpRecordE.executeEntryAudit(userCorpRecordE, userE, UserEmploymentFlagEnum.NOT_ON.getCode(), UserChangeRecordStatusEnum.REJECTED.getCode());
|
||||||
userCorpRecordGateway.update(userCorpRecordE);
|
userCorpRecordGateway.update(userCorpRecordE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -324,20 +339,20 @@ public class UserUpdateExe {
|
||||||
public void appUserResignation(AppUserResignationCmd appUserResignationCmd) {
|
public void appUserResignation(AppUserResignationCmd appUserResignationCmd) {
|
||||||
//更新状态,添加记录
|
//更新状态,添加记录
|
||||||
UserDO userDO = userRepository.getInfoById(appUserResignationCmd.getId());
|
UserDO userDO = userRepository.getInfoById(appUserResignationCmd.getId());
|
||||||
if(userDO==null){
|
if (userDO == null) {
|
||||||
throw new IllegalArgumentException("用户信息不存在");
|
throw new IllegalArgumentException("用户信息不存在");
|
||||||
}
|
}
|
||||||
UserE userE = null;
|
UserE userE = null;
|
||||||
Long corpinfoId = appUserResignationCmd.getCorpinfoId()==null?AuthContext.getTenantId():appUserResignationCmd.getCorpinfoId();
|
Long corpinfoId = appUserResignationCmd.getCorpinfoId() == null ? AuthContext.getTenantId() : appUserResignationCmd.getCorpinfoId();
|
||||||
Integer employmentFlagBefore = null;
|
Integer employmentFlagBefore = null;
|
||||||
if(UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())){
|
if (UserFlowFlagEnum.FLOW.getCode().equals(userDO.getFlowFlag())) {
|
||||||
UserCorpDO userCorpDO = userCorpRepository.getInfoByUserId(userDO.getId(), corpinfoId);
|
UserCorpDO userCorpDO = userCorpRepository.getInfoByUserId(userDO.getId(), corpinfoId);
|
||||||
if (userCorpDO == null) {
|
if (userCorpDO == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
employmentFlagBefore = userCorpDO.getEmploymentFlag();
|
employmentFlagBefore = userCorpDO.getEmploymentFlag();
|
||||||
userE=userCorpRepository.executeResignation(userCorpDO, corpinfoId,UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
userE = userCorpRepository.executeResignation(userCorpDO, corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
||||||
}else{
|
} else {
|
||||||
userE = new UserE();
|
userE = new UserE();
|
||||||
BeanUtils.copyProperties(userDO, userE);
|
BeanUtils.copyProperties(userDO, userE);
|
||||||
employmentFlagBefore = userDO.getEmploymentFlag();
|
employmentFlagBefore = userDO.getEmploymentFlag();
|
||||||
|
|
@ -347,9 +362,34 @@ public class UserUpdateExe {
|
||||||
|
|
||||||
//插入变更记录
|
//插入变更记录
|
||||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||||
userChangeRecordE.executeResignation(userE,UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode(),UserChangeRecordStatusEnum.PENDING.getCode(),employmentFlagBefore);
|
userChangeRecordE.executeResignation(userE, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode(), UserChangeRecordStatusEnum.PENDING.getCode(), employmentFlagBefore);
|
||||||
userChangeRecordGateway.add(userChangeRecordE);
|
userChangeRecordGateway.add(userChangeRecordE);
|
||||||
//TODO 处理未完成工作
|
//TODO 处理未完成工作
|
||||||
|
|
||||||
|
List<UserJobHandoverDO> allJob = getUserJob(userDO.getId(),corpinfoId,userChangeRecordE.getUserChangeRecordId());
|
||||||
|
userJobHandoverRepository.saveBatch(allJob);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
private List<UserJobHandoverDO> getUserJob(Long userId, Long corpinfoId, String userChangeRecordId) {
|
||||||
|
ZcloudUserJobQry zcloudUserJobQry = new ZcloudUserJobQry();
|
||||||
|
zcloudUserJobQry.setUserId(userId);
|
||||||
|
zcloudUserJobQry.setCorpinfoId(corpinfoId);
|
||||||
|
List<UserJobHandoverDO> allJob = new ArrayList<>();
|
||||||
|
/* userJobFacadeList.forEach(userJobFacade -> {
|
||||||
|
try {
|
||||||
|
MultiResponse<ZcloudUserJobCo> userJob = userJobFacade.getUserJob(zcloudUserJobQry);
|
||||||
|
List<ZcloudUserJobCo> data = userJob.getData();
|
||||||
|
List<UserJobHandoverDO> 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;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,7 +1,9 @@
|
||||||
package com.zcloud.basic.info.command.convertor;
|
package com.zcloud.basic.info.command.convertor;
|
||||||
|
|
||||||
|
import com.zcloud.basic.info.domain.model.UserJobHandoverE;
|
||||||
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
|
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
|
||||||
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
|
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
|
||||||
|
import com.zcloud.gbscommon.zclouduser.response.ZcloudUserJobCo;
|
||||||
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -20,5 +22,7 @@ public interface UserJobHandoverCoConvertor {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<UserJobHandoverCO> converDOsToCOs(List<UserJobHandoverDO> userJobHandoverDOs);
|
List<UserJobHandoverCO> converDOsToCOs(List<UserJobHandoverDO> userJobHandoverDOs);
|
||||||
|
|
||||||
|
List<UserJobHandoverDO> converCosToDOs(List<ZcloudUserJobCo> data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -104,6 +104,7 @@ public class UserQueryExe {
|
||||||
userCO.setSort(userCorpDO.getSort());
|
userCO.setSort(userCorpDO.getSort());
|
||||||
userCO.setCorpinfoId(userCorpDO.getCorpinfoId());
|
userCO.setCorpinfoId(userCorpDO.getCorpinfoId());
|
||||||
}
|
}
|
||||||
|
|
||||||
return SingleResponse.of(userCO);
|
return SingleResponse.of(userCO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -103,9 +103,7 @@ public class CorpInfoServiceImpl implements CorpInfoServiceI {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResponse<CorpUserMiddleCO> corpUserMiddlePage(CorpUserMiddleQry qry) {
|
public PageResponse<CorpUserMiddleCO> corpUserMiddlePage(CorpUserMiddleQry qry) {
|
||||||
|
|
||||||
return corpInfoQueryExe.corpUserMiddlePage(qry);
|
return corpInfoQueryExe.corpUserMiddlePage(qry);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -45,5 +45,20 @@ public class CorpUserMiddleQry extends PageQuery {
|
||||||
private String eqType;
|
private String eqType;
|
||||||
@ApiModelProperty(value = "选取形式", name = "selectFrom")
|
@ApiModelProperty(value = "选取形式", name = "selectFrom")
|
||||||
private String selectFrom;
|
private String selectFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "所属省编码", name = "province", required = true)
|
||||||
|
private String eqProvince;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "所属市级编码", name = "city", required = true)
|
||||||
|
private String eqCity;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "所属区县编码", name = "country", required = true)
|
||||||
|
private String eqCountry;
|
||||||
|
@ApiModelProperty(value = "所属乡镇街道编码", name = "street", required = true)
|
||||||
|
private String eqStreet;
|
||||||
|
@ApiModelProperty(value = "所属村居委会编码", name = "village", required = true)
|
||||||
|
private String eqVillage;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,8 +44,8 @@ public class UserJobHandoverAddCmd extends Command {
|
||||||
@NotEmpty(message = "工作内容不能为空")
|
@NotEmpty(message = "工作内容不能为空")
|
||||||
private String workContent;
|
private String workContent;
|
||||||
|
|
||||||
@ApiModelProperty(value = "交接状态,10:关闭任务", name = "handoverStatus", required = true)
|
@ApiModelProperty(value = "交接状态,1:关闭任务", name = "handoverStatus", required = true)
|
||||||
@NotNull(message = "交接状态,10:关闭任务不能为空")
|
@NotNull(message = "交接状态,1:关闭任务不能为空")
|
||||||
private Integer handoverStatus;
|
private Integer handoverStatus;
|
||||||
|
|
||||||
@ApiModelProperty(value = "交接人企业id", name = "handoverCompanyId", required = true)
|
@ApiModelProperty(value = "交接人企业id", name = "handoverCompanyId", required = true)
|
||||||
|
|
|
||||||
|
|
@ -45,8 +45,8 @@ public class UserJobHandoverUpdateCmd extends Command {
|
||||||
@ApiModelProperty(value = "工作内容", name = "workContent", required = true)
|
@ApiModelProperty(value = "工作内容", name = "workContent", required = true)
|
||||||
@NotEmpty(message = "工作内容不能为空")
|
@NotEmpty(message = "工作内容不能为空")
|
||||||
private String workContent;
|
private String workContent;
|
||||||
@ApiModelProperty(value = "交接状态,10:关闭任务", name = "handoverStatus", required = true)
|
@ApiModelProperty(value = "交接状态,1:关闭任务", name = "handoverStatus", required = true)
|
||||||
@NotNull(message = "交接状态,10:关闭任务不能为空")
|
@NotNull(message = "交接状态,1:关闭任务不能为空")
|
||||||
private Integer handoverStatus;
|
private Integer handoverStatus;
|
||||||
@ApiModelProperty(value = "交接人企业id", name = "handoverCompanyId", required = true)
|
@ApiModelProperty(value = "交接人企业id", name = "handoverCompanyId", required = true)
|
||||||
@NotNull(message = "交接人企业id不能为空")
|
@NotNull(message = "交接人企业id不能为空")
|
||||||
|
|
|
||||||
|
|
@ -181,10 +181,12 @@ public class CorpInfoCO extends ClientObject {
|
||||||
private LocalDate licenseEnd;
|
private LocalDate licenseEnd;
|
||||||
//开户人idaccount_contact_id
|
//开户人idaccount_contact_id
|
||||||
@ApiModelProperty(value = "开户人id")
|
@ApiModelProperty(value = "开户人id")
|
||||||
private String accountContactId;
|
private Long accountContactId;
|
||||||
//开户人姓名 account_contact_name
|
//开户人姓名 account_contact_name
|
||||||
@ApiModelProperty(value = "开户人姓名")
|
@ApiModelProperty(value = "开户人姓名")
|
||||||
private String accountContactName;
|
private String accountContactName;
|
||||||
|
@ApiModelProperty(value = "租户名称")
|
||||||
|
private String tenantName;
|
||||||
//有无职业卫生信息,1:是,0:否
|
//有无职业卫生信息,1:是,0:否
|
||||||
@ApiModelProperty(value = "有无职业卫生信息,1:是,0:否")
|
@ApiModelProperty(value = "有无职业卫生信息,1:是,0:否")
|
||||||
private Integer whetherHygieneFlag;
|
private Integer whetherHygieneFlag;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.zcloud.basic.info.dto.clientobject;
|
package com.zcloud.basic.info.dto.clientobject;
|
||||||
|
|
||||||
import com.alibaba.cola.dto.ClientObject;
|
import com.alibaba.cola.dto.ClientObject;
|
||||||
|
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
@ -85,7 +86,8 @@ public class CorpUserMiddleCO extends ClientObject {
|
||||||
|
|
||||||
@ApiModelProperty(value = "选取形式")
|
@ApiModelProperty(value = "选取形式")
|
||||||
private String selectfromString;
|
private String selectfromString;
|
||||||
|
@ApiModelProperty(value = "租户名称")
|
||||||
|
private String tenantName;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,8 +38,8 @@ public class UserJobHandoverCO extends ClientObject {
|
||||||
//工作内容
|
//工作内容
|
||||||
@ApiModelProperty(value = "工作内容")
|
@ApiModelProperty(value = "工作内容")
|
||||||
private String workContent;
|
private String workContent;
|
||||||
//交接状态,10:关闭任务
|
//交接状态,1:关闭任务
|
||||||
@ApiModelProperty(value = "交接状态,10:关闭任务")
|
@ApiModelProperty(value = "交接状态,1:关闭任务")
|
||||||
private Integer handoverStatus;
|
private Integer handoverStatus;
|
||||||
//交接人企业id
|
//交接人企业id
|
||||||
@ApiModelProperty(value = "交接人企业id")
|
@ApiModelProperty(value = "交接人企业id")
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
package com.zcloud.basic.info.domain.enums;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
public enum UserJobStatusEnum {
|
||||||
|
//交接状态,0:未处理1:关闭任务
|
||||||
|
UNTREATED(0, "未处理"),
|
||||||
|
|
||||||
|
CLOSE_TASK(1, "关闭任务"),
|
||||||
|
|
||||||
|
;
|
||||||
|
private final Integer code;
|
||||||
|
private final String name;
|
||||||
|
|
||||||
|
UserJobStatusEnum(Integer code, String name) {
|
||||||
|
this.code = code;
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -2,6 +2,8 @@ package com.zcloud.basic.info.domain.gateway;
|
||||||
|
|
||||||
import com.zcloud.basic.info.domain.model.UserJobHandoverE;
|
import com.zcloud.basic.info.domain.model.UserJobHandoverE;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* web-domain
|
* web-domain
|
||||||
*
|
*
|
||||||
|
|
@ -26,5 +28,6 @@ public interface UserJobHandoverGateway {
|
||||||
Boolean deletedUserJobHandoverById(Long id);
|
Boolean deletedUserJobHandoverById(Long id);
|
||||||
|
|
||||||
Boolean deletedUserJobHandoverByIds(Long[] id);
|
Boolean deletedUserJobHandoverByIds(Long[] id);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -138,9 +138,11 @@ public class CorpInfoE extends BaseE {
|
||||||
//营业执照结束时间
|
//营业执照结束时间
|
||||||
private LocalDate licenseEnd;
|
private LocalDate licenseEnd;
|
||||||
//开户人id
|
//开户人id
|
||||||
private String accountContactId;
|
private Long accountContactId;
|
||||||
//开户人姓名
|
//开户人姓名
|
||||||
private String accountContactName;
|
private String accountContactName;
|
||||||
|
|
||||||
|
private String tenantName;
|
||||||
//有无职业卫生信息,1:是,0:否
|
//有无职业卫生信息,1:是,0:否
|
||||||
private Integer whetherHygieneFlag;
|
private Integer whetherHygieneFlag;
|
||||||
//有无重大危险源,1:是,0:否
|
//有无重大危险源,1:是,0:否
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ public class UserJobHandoverE extends BaseE {
|
||||||
private String workProject;
|
private String workProject;
|
||||||
//工作内容
|
//工作内容
|
||||||
private String workContent;
|
private String workContent;
|
||||||
//交接状态,10:关闭任务
|
//交接状态,1:关闭任务
|
||||||
private Integer handoverStatus;
|
private Integer handoverStatus;
|
||||||
//交接人企业id
|
//交接人企业id
|
||||||
private Long handoverCompanyId;
|
private Long handoverCompanyId;
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package com.zcloud.basic.info.gatewayimpl;
|
||||||
|
|
||||||
import com.alibaba.cola.dto.Response;
|
import com.alibaba.cola.dto.Response;
|
||||||
import com.alibaba.cola.exception.BizException;
|
import com.alibaba.cola.exception.BizException;
|
||||||
|
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
import com.jjb.saas.system.client.tenant.facade.TenantFacade;
|
import com.jjb.saas.system.client.tenant.facade.TenantFacade;
|
||||||
import com.jjb.saas.system.client.tenant.request.OtaTenantAddCmd;
|
import com.jjb.saas.system.client.tenant.request.OtaTenantAddCmd;
|
||||||
import com.zcloud.basic.info.domain.gateway.CorpInfoGateway;
|
import com.zcloud.basic.info.domain.gateway.CorpInfoGateway;
|
||||||
|
|
@ -47,9 +48,10 @@ public class CorpInfoGatewayImpl implements CorpInfoGateway {
|
||||||
d.setCorpinfoId(Tools.get32UUID());
|
d.setCorpinfoId(Tools.get32UUID());
|
||||||
}
|
}
|
||||||
if(!CorpInfoE.isCorp()){
|
if(!CorpInfoE.isCorp()){
|
||||||
d.setAccountContactId(corpInfoE.getAccountContactId());
|
d.setAccountContactId(AuthContext.getUserId());
|
||||||
d.setAccountContactName(corpInfoE.getAccountContactName());
|
d.setAccountContactName(AuthContext.getName());
|
||||||
}
|
}
|
||||||
|
d.setTenantName(AuthContext.getCurrentUser().getTenantName());
|
||||||
corpInfoRepository.saveCorp(d);
|
corpInfoRepository.saveCorp(d);
|
||||||
// corpInfoRepository.save(d);
|
// corpInfoRepository.save(d);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* web-infrastructure
|
* web-infrastructure
|
||||||
|
|
@ -46,5 +47,7 @@ public class UserJobHandoverGatewayImpl implements UserJobHandoverGateway {
|
||||||
public Boolean deletedUserJobHandoverByIds(Long[] ids) {
|
public Boolean deletedUserJobHandoverByIds(Long[] ids) {
|
||||||
return userJobHandoverRepository.removeByIds(Collections.singletonList(ids));
|
return userJobHandoverRepository.removeByIds(Collections.singletonList(ids));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -188,10 +188,12 @@ public class CorpInfoDO extends BaseDO {
|
||||||
private LocalDate licenseEnd;
|
private LocalDate licenseEnd;
|
||||||
//开户人idaccount_contact_id
|
//开户人idaccount_contact_id
|
||||||
@ApiModelProperty(value = "开户人id")
|
@ApiModelProperty(value = "开户人id")
|
||||||
private String accountContactId;
|
private Long accountContactId;
|
||||||
//开户人姓名 account_contact_name
|
//开户人姓名 account_contact_name
|
||||||
@ApiModelProperty(value = "开户人姓名")
|
@ApiModelProperty(value = "开户人姓名")
|
||||||
private String accountContactName;
|
private String accountContactName;
|
||||||
|
@ApiModelProperty(value = "租户名称")
|
||||||
|
private String tenantName;
|
||||||
//有无职业卫生信息,1:是,0:否
|
//有无职业卫生信息,1:是,0:否
|
||||||
@ApiModelProperty(value = "有无职业卫生信息,1:是,0:否")
|
@ApiModelProperty(value = "有无职业卫生信息,1:是,0:否")
|
||||||
private Integer whetherHygieneFlag;
|
private Integer whetherHygieneFlag;
|
||||||
|
|
|
||||||
|
|
@ -38,8 +38,8 @@ public class UserJobHandoverDO extends BaseDO {
|
||||||
//工作内容
|
//工作内容
|
||||||
@ApiModelProperty(value = "工作内容")
|
@ApiModelProperty(value = "工作内容")
|
||||||
private String workContent;
|
private String workContent;
|
||||||
//交接状态,10:关闭任务
|
//交接状态,1:关闭任务
|
||||||
@ApiModelProperty(value = "交接状态,10:关闭任务")
|
@ApiModelProperty(value = "交接状态,1:关闭任务")
|
||||||
private Integer handoverStatus;
|
private Integer handoverStatus;
|
||||||
//交接人企业id
|
//交接人企业id
|
||||||
@ApiModelProperty(value = "交接人企业id")
|
@ApiModelProperty(value = "交接人企业id")
|
||||||
|
|
|
||||||
|
|
@ -23,5 +23,7 @@ public interface UserJobHandoverRepository extends BaseRepository<UserJobHandove
|
||||||
SingleResponse<UserJobHandoverDO> getInfoById(Long id);
|
SingleResponse<UserJobHandoverDO> getInfoById(Long id);
|
||||||
|
|
||||||
List<UserJobHandoverDO> getListByChangerRecordId(String userChangeRecordId);
|
List<UserJobHandoverDO> getListByChangerRecordId(String userChangeRecordId);
|
||||||
|
|
||||||
|
void processUserJobHandover(String userCorpRecordId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -73,5 +73,7 @@ public interface UserRepository extends BaseRepository<UserDO> {
|
||||||
void saveUserXgf(UserDO d);
|
void saveUserXgf(UserDO d);
|
||||||
|
|
||||||
PageResponse<UserDO> listXgf(Map<String, Object> params);
|
PageResponse<UserDO> listXgf(Map<String, Object> params);
|
||||||
|
|
||||||
|
void sendResignationMq(Long userId, Long corpinfoId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -81,6 +81,7 @@ public class UserCorpRepositoryImpl extends BaseRepositoryImpl<UserCorpMapper, U
|
||||||
userCorpMapper.updateById(userCorpDO);
|
userCorpMapper.updateById(userCorpDO);
|
||||||
UserE userE = new UserE();
|
UserE userE = new UserE();
|
||||||
BeanUtils.copyProperties(userCorpDO, userE);
|
BeanUtils.copyProperties(userCorpDO, userE);
|
||||||
|
userE.setId(userCorpDO.getUserId());
|
||||||
return userE;
|
return userE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
package com.zcloud.basic.info.persistence.repository.impl;
|
package com.zcloud.basic.info.persistence.repository.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.jjb.saas.framework.repository.common.PageHelper;
|
import com.jjb.saas.framework.repository.common.PageHelper;
|
||||||
|
import com.zcloud.basic.info.domain.enums.UserJobStatusEnum;
|
||||||
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
|
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
|
||||||
import com.zcloud.basic.info.persistence.mapper.UserJobHandoverMapper;
|
import com.zcloud.basic.info.persistence.mapper.UserJobHandoverMapper;
|
||||||
import com.zcloud.basic.info.persistence.repository.UserJobHandoverRepository;
|
import com.zcloud.basic.info.persistence.repository.UserJobHandoverRepository;
|
||||||
|
|
@ -61,5 +63,23 @@ public class UserJobHandoverRepositoryImpl extends BaseRepositoryImpl<UserJobHan
|
||||||
List<UserJobHandoverDO> result = userJobHandoverMapper.selectList(queryWrapper);
|
List<UserJobHandoverDO> result = userJobHandoverMapper.selectList(queryWrapper);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void processUserJobHandover(String userCorpRecordId) {
|
||||||
|
//根据user_change_record_id 修改状态
|
||||||
|
LambdaUpdateWrapper<UserJobHandoverDO> updateWrapper = new LambdaUpdateWrapper<>();
|
||||||
|
// 设置更新条件
|
||||||
|
updateWrapper.eq(UserJobHandoverDO::getUserChangeRecordId, userCorpRecordId);
|
||||||
|
updateWrapper.eq(UserJobHandoverDO::getHandoverStatus, UserJobStatusEnum.UNTREATED.getCode());
|
||||||
|
|
||||||
|
// 设置要更新的字段
|
||||||
|
updateWrapper.set(UserJobHandoverDO::getHandoverStatus, UserJobStatusEnum.CLOSE_TASK.getCode());
|
||||||
|
|
||||||
|
// 执行更新
|
||||||
|
userJobHandoverMapper.update(null, updateWrapper);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
package com.zcloud.basic.info.persistence.repository.impl;
|
package com.zcloud.basic.info.persistence.repository.impl;
|
||||||
|
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
|
||||||
import com.alibaba.cola.dto.MultiResponse;
|
import com.alibaba.cola.dto.MultiResponse;
|
||||||
import com.alibaba.cola.dto.PageResponse;
|
import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.alibaba.cola.dto.Response;
|
import com.alibaba.cola.dto.Response;
|
||||||
|
|
@ -13,28 +12,29 @@ import com.jjb.saas.auth.client.account.facade.AccountFacade;
|
||||||
import com.jjb.saas.auth.client.account.request.AccountPasswordCheckCmd;
|
import com.jjb.saas.auth.client.account.request.AccountPasswordCheckCmd;
|
||||||
import com.jjb.saas.framework.auth.model.SSOUser;
|
import com.jjb.saas.framework.auth.model.SSOUser;
|
||||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
|
import com.jjb.saas.framework.event.producer.RemoteEventPublisher;
|
||||||
import com.jjb.saas.framework.repository.common.PageHelper;
|
import com.jjb.saas.framework.repository.common.PageHelper;
|
||||||
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
|
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
|
||||||
import com.jjb.saas.system.client.role.facade.RoleFacade;
|
import com.jjb.saas.system.client.role.facade.RoleFacade;
|
||||||
import com.jjb.saas.system.client.role.response.RoleCO;
|
import com.jjb.saas.system.client.role.response.RoleCO;
|
||||||
import com.jjb.saas.system.client.system.facade.SystemFacade;
|
|
||||||
import com.jjb.saas.system.client.tenant.facade.TenantFacade;
|
|
||||||
import com.jjb.saas.system.client.user.facade.UserFacade;
|
import com.jjb.saas.system.client.user.facade.UserFacade;
|
||||||
import com.jjb.saas.system.client.user.request.*;
|
import com.jjb.saas.system.client.user.request.*;
|
||||||
import com.zcloud.basic.info.domain.enums.UserFlowFlagEnum;
|
|
||||||
import com.zcloud.basic.info.domain.model.UserCorpE;
|
|
||||||
import com.zcloud.basic.info.domain.model.UserE;
|
import com.zcloud.basic.info.domain.model.UserE;
|
||||||
import com.zcloud.basic.info.persistence.dataobject.DepartmentLeaderStatictiscDO;
|
import com.zcloud.basic.info.persistence.dataobject.DepartmentLeaderStatictiscDO;
|
||||||
import com.zcloud.basic.info.persistence.dataobject.UserDO;
|
import com.zcloud.basic.info.persistence.dataobject.UserDO;
|
||||||
import com.zcloud.basic.info.persistence.mapper.UserMapper;
|
import com.zcloud.basic.info.persistence.mapper.UserMapper;
|
||||||
import com.zcloud.basic.info.persistence.repository.UserRepository;
|
import com.zcloud.basic.info.persistence.repository.UserRepository;
|
||||||
|
import com.zcloud.gbscommon.event.consttag.EventTagConst;
|
||||||
|
import com.zcloud.gbscommon.event.user.ZcUserResignation;
|
||||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||||
import com.zcloud.gbscommon.utils.Query;
|
import com.zcloud.gbscommon.utils.Query;
|
||||||
import com.zcloud.gbscommon.utils.Tools;
|
import com.zcloud.gbscommon.utils.Tools;
|
||||||
import com.zcloud.gbscommon.utils.UuidUtil;
|
import com.zcloud.gbscommon.utils.UuidUtil;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.dubbo.config.annotation.DubboReference;
|
import org.apache.dubbo.config.annotation.DubboReference;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.util.ObjectUtils;
|
import org.springframework.util.ObjectUtils;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
@ -53,6 +53,7 @@ import java.util.stream.Collectors;
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
|
@Slf4j
|
||||||
public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> implements UserRepository {
|
public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> implements UserRepository {
|
||||||
private final UserMapper userMapper;
|
private final UserMapper userMapper;
|
||||||
|
|
||||||
|
|
@ -63,7 +64,8 @@ public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> i
|
||||||
|
|
||||||
@DubboReference(check = false)
|
@DubboReference(check = false)
|
||||||
private AccountFacade accountFacade;
|
private AccountFacade accountFacade;
|
||||||
|
@Autowired
|
||||||
|
private RemoteEventPublisher remoteEventPublisher;
|
||||||
@Override
|
@Override
|
||||||
public PageResponse<UserDO> listPage(Map<String, Object> params) {
|
public PageResponse<UserDO> listPage(Map<String, Object> params) {
|
||||||
IPage<UserDO> iPage = new Query<UserDO>().getPage(params);
|
IPage<UserDO> iPage = new Query<UserDO>().getPage(params);
|
||||||
|
|
@ -408,5 +410,18 @@ public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> i
|
||||||
IPage<UserDO> result = userMapper.listXgf(iPage, params);
|
IPage<UserDO> result = userMapper.listXgf(iPage, params);
|
||||||
return PageHelper.pageToResponse(result, result.getRecords());
|
return PageHelper.pageToResponse(result, result.getRecords());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void sendResignationMq(Long userId, Long corpinfoId) {
|
||||||
|
try{
|
||||||
|
ZcUserResignation message = new ZcUserResignation();
|
||||||
|
message.setUserId(userId);
|
||||||
|
message.setCorpinfoId(corpinfoId);
|
||||||
|
remoteEventPublisher.sendMessage(message, EventTagConst.userResignationTag);
|
||||||
|
}catch (Exception e){
|
||||||
|
log.error("发送离职消息失败, userId: {}, corpinfoId: {}", userId, corpinfoId, e);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,21 @@
|
||||||
<if test="params.likeCorpName != null and params.likeCorpName.trim() != ''">
|
<if test="params.likeCorpName != null and params.likeCorpName.trim() != ''">
|
||||||
AND c.corp_name like concat('%',#{params.likeCorpName},'%')
|
AND c.corp_name like concat('%',#{params.likeCorpName},'%')
|
||||||
</if>
|
</if>
|
||||||
|
<if test="params.eqProvince != null and params.eqProvince.trim() != ''">
|
||||||
|
AND c.province = #{params.eqProvince}
|
||||||
|
</if>
|
||||||
|
<if test="params.eqCity != null and params.eqCity.trim() != ''">
|
||||||
|
AND c.city = #{params.eqCity}
|
||||||
|
</if>
|
||||||
|
<if test="params.eqCountry != null and params.eqCountry.trim() != ''">
|
||||||
|
AND c.country = #{params.eqCountry}
|
||||||
|
</if>
|
||||||
|
<if test="params.eqStreet != null and params.eqStreet.trim() != ''">
|
||||||
|
AND c.street = #{params.eqStreet}
|
||||||
|
</if>
|
||||||
|
<if test="params.eqVillage != null and params.eqVillage.trim() != ''">
|
||||||
|
AND c.village = #{params.eqVillage}
|
||||||
|
</if>
|
||||||
group by c.id
|
group by c.id
|
||||||
ORDER BY
|
ORDER BY
|
||||||
c.corp_order ASC,
|
c.corp_order ASC,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue