Merge remote-tracking branch 'origin/main' into main
commit
905de45218
|
|
@ -246,7 +246,8 @@ public class UserAddExe {
|
|||
if(UserFlowFlagEnum.FLOW.getCode().equals(cmd.getFlowFlag())){
|
||||
//流动人员
|
||||
UserCorpE userCorpE = new UserCorpE();
|
||||
BeanUtils.copyProperties(cmd, userCorpE);
|
||||
// BeanUtils.copyProperties(userE, userCorpE);
|
||||
// userCorpE.setCorpinfoId(tenantId);
|
||||
userCorpE.initAdd(tenantId, userE);
|
||||
userCorpGateway.add(userCorpE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -81,7 +81,10 @@ public class UserUpdateExe {
|
|||
userCorpGateway.update(userCorpE);
|
||||
} else {
|
||||
UserCorpE userCorpE = new UserCorpE();
|
||||
userCorpE.initAdd(AuthContext.getTenantId(), userE);
|
||||
BeanUtils.copyProperties(oldUserE, userCorpE);
|
||||
BeanUtils.copyProperties(userE, userCorpE);
|
||||
// userCorpE.initAdd( userE,oldUserE);
|
||||
userCorpE.setId(null);
|
||||
userCorpGateway.add(userCorpE);
|
||||
BeanUtils.copyProperties(userCorpE, infoByUserId);
|
||||
}
|
||||
|
|
@ -188,10 +191,10 @@ public class UserUpdateExe {
|
|||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||
if(userCorpRecordDO!=null){
|
||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||
userCorpRecordE.executeResignation(userCorpRecordE,userE);
|
||||
userCorpRecordE.executeResignation(userCorpRecordE,userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||
userCorpRecordGateway.update(userCorpRecordE);
|
||||
}else{
|
||||
userCorpRecordE.initResignation(userE);
|
||||
userCorpRecordE.initResignation(userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||
userCorpRecordGateway.add(userCorpRecordE);
|
||||
}
|
||||
|
||||
|
|
@ -244,25 +247,32 @@ public class UserUpdateExe {
|
|||
}
|
||||
if(UserChangeRecordStatusEnum.APPROVED.getCode().equals(reviewStatus)){
|
||||
//修改企业入职记录
|
||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ON.getCode());
|
||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||
if(userCorpRecordDO!=null){
|
||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||
userCorpRecordDO.setEmploymentFlag(UserEmploymentFlagEnum.RESIGNATION.getCode());
|
||||
userCorpRecordDO.setUpdateTime(LocalDateTime.now());
|
||||
userCorpRecordRepository.updateById(userCorpRecordDO);
|
||||
userCorpRecordE.executeResignation(userCorpRecordE,userE);
|
||||
userCorpRecordE.executeResignation(userCorpRecordE,userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||
userCorpRecordGateway.update(userCorpRecordE);
|
||||
}else{
|
||||
userCorpRecordE.initResignation(userE);
|
||||
userCorpRecordE.initResignation(userE,UserEmploymentFlagEnum.RESIGNATION.getCode(),UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||
userCorpRecordGateway.add(userCorpRecordE);
|
||||
}
|
||||
// 增加用户变更记录
|
||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||
userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.RESIGNATION.getCode());
|
||||
userChangeRecordGateway.add(userChangeRecordE);
|
||||
|
||||
|
||||
}else{
|
||||
//驳回
|
||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||
if(userCorpRecordDO!=null){
|
||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||
userCorpRecordE.executeResignation(userCorpRecordE,userE,UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode());
|
||||
userCorpRecordGateway.update(userCorpRecordE);
|
||||
}else{
|
||||
userCorpRecordE.initResignation(userE,UserEmploymentFlagEnum.ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode());
|
||||
userCorpRecordGateway.add(userCorpRecordE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -297,6 +307,16 @@ public class UserUpdateExe {
|
|||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||
userChangeRecordE.executeReviewStatus(userE, UserEmploymentFlagEnum.ON.getCode());
|
||||
userChangeRecordGateway.add(userChangeRecordE);
|
||||
}else{
|
||||
//驳回
|
||||
//驳回
|
||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserId(userDO.getId(), corpinfoId, UserEmploymentFlagEnum.ENTRY_AUDIT.getCode());
|
||||
UserCorpRecordE userCorpRecordE = new UserCorpRecordE();
|
||||
if(userCorpRecordDO!=null){
|
||||
BeanUtils.copyProperties(userCorpRecordDO, userCorpRecordE);
|
||||
userCorpRecordE.executeEntryAudit(userCorpRecordE,userE,UserEmploymentFlagEnum.NOT_ON.getCode(),UserChangeRecordStatusEnum.REJECTED.getCode());
|
||||
userCorpRecordGateway.update(userCorpRecordE);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -324,6 +344,7 @@ public class UserUpdateExe {
|
|||
userE.setEmploymentFlag(UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode());
|
||||
userGateway.update(userE);
|
||||
}
|
||||
|
||||
//插入变更记录
|
||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||
userChangeRecordE.executeResignation(userE,UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode(),UserChangeRecordStatusEnum.PENDING.getCode(),employmentFlagBefore);
|
||||
|
|
|
|||
|
|
@ -72,12 +72,10 @@ public class UserChangeRecordQueryExe {
|
|||
if(userChangeRecordInfoQry.getCorpinfoId() == null){
|
||||
userChangeRecordInfoQry.setCorpinfoId(AuthContext.getTenantId());
|
||||
}
|
||||
queryWrapper.eq("corpinfo_id_before", userChangeRecordInfoQry.getCorpinfoId());
|
||||
queryWrapper.eq("user_id", userChangeRecordInfoQry.getUserId());
|
||||
queryWrapper.eq("status", UserChangeRecordStatusEnum.PENDING.getCode());
|
||||
queryWrapper.orderByDesc("create_time");
|
||||
queryWrapper.last("limit 1");
|
||||
UserChangeRecordDO userChangeRecordDO = userChangeRecordRepository.getOne(queryWrapper);
|
||||
|
||||
UserChangeRecordDO userChangeRecordDO =userChangeRecordRepository.getChangerRecordInfoById(userChangeRecordInfoQry.getUserId(), userChangeRecordInfoQry.getCorpinfoId(),UserChangeRecordStatusEnum.PENDING.getCode());
|
||||
|
||||
|
||||
if(userChangeRecordDO == null){
|
||||
return null;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.zcloud.basic.info.dto.clientobject;
|
||||
|
||||
import com.alibaba.cola.dto.ClientObject;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
|
@ -77,7 +78,10 @@ public class UserChangeRecordCO extends ClientObject {
|
|||
private Integer userStatusAfter;
|
||||
@ApiModelProperty(value = "离职原因")
|
||||
private String resignationReason;
|
||||
|
||||
//用户名称
|
||||
@ApiModelProperty(value = "用户名称")
|
||||
@TableField(exist = false)
|
||||
private String userName;
|
||||
@ApiModelProperty(value = "工作交接记录信息")
|
||||
private List<UserJobHandoverCO> userJobHandoverCOList;
|
||||
|
||||
|
|
|
|||
|
|
@ -161,7 +161,7 @@ public class UserXmfCO extends ClientObject {
|
|||
private String mappingPostName;
|
||||
private String mappingDeptName;
|
||||
// 入职状态
|
||||
@ApiModelProperty(value = "入职状态 1-在职 0-离职, 2-入职待审核, 3-离职待审核")
|
||||
@ApiModelProperty(value = "入职状态,1-在职 0-离职, 11-入职待审核, 10-离职待审核")
|
||||
private Integer employmentFlag;
|
||||
// 入职状态
|
||||
@ApiModelProperty(value = "是否流动人员,1-流动,0-固定人员")
|
||||
|
|
|
|||
|
|
@ -73,6 +73,7 @@ public class UserCorpE extends BaseE {
|
|||
this.roleId = userE.getRoleId();
|
||||
this.sort = userE.getSort();
|
||||
this.departmentLeaderFlag = userE.getDepartmentLeaderFlag();
|
||||
this.employmentFlag = userE.getEmploymentFlag();
|
||||
}
|
||||
|
||||
public void initUpdate(UserE userE) {
|
||||
|
|
|
|||
|
|
@ -79,18 +79,18 @@ public class UserCorpRecordE extends BaseE {
|
|||
this.startTime = LocalDateTime.now();
|
||||
}
|
||||
|
||||
public void executeResignation(UserCorpRecordE userCorpRecordE, UserE userE) {
|
||||
public void executeResignation(UserCorpRecordE userCorpRecordE, UserE userE,Integer employmentFlag,Integer status) {
|
||||
this.corpinfoName = userCorpRecordE.getCorpinfoName();
|
||||
this.departmentId = userE.getDepartmentId();
|
||||
this.departmentName = userE.getDepartmentName();
|
||||
this.postId = userE.getPostId();
|
||||
this.postName = userE.getPostName();
|
||||
this.employmentFlag = UserEmploymentFlagEnum.RESIGNATION.getCode();
|
||||
this.status = UserChangeRecordStatusEnum.APPROVED.getCode();
|
||||
this.employmentFlag = employmentFlag;
|
||||
this.status = status;
|
||||
this.endTime = LocalDateTime.now();
|
||||
}
|
||||
|
||||
public void initResignation(UserE userE) {
|
||||
public void initResignation(UserE userE,Integer employmentFlag,Integer status) {
|
||||
this.userId = userE.getId();
|
||||
this.corpinfoId = userE.getCorpinfoId();
|
||||
this.corpinfoName = userE.getCorpinfoName();
|
||||
|
|
@ -98,10 +98,22 @@ public class UserCorpRecordE extends BaseE {
|
|||
this.departmentName = userE.getDepartmentName();
|
||||
this.postId = userE.getPostId();
|
||||
this.postName = userE.getPostName();
|
||||
this.employmentFlag = UserEmploymentFlagEnum.RESIGNATION.getCode();
|
||||
this.status = UserChangeRecordStatusEnum.APPROVED.getCode();
|
||||
this.employmentFlag = employmentFlag;
|
||||
this.status = status;
|
||||
this.startTime = LocalDateTime.now();
|
||||
this.endTime = LocalDateTime.now();
|
||||
}
|
||||
|
||||
public void executeEntryAudit(UserCorpRecordE userCorpRecordE, UserE userE, Integer employmentFlag, Integer status) {
|
||||
this.userId = userE.getId();
|
||||
this.corpinfoId = userE.getCorpinfoId();
|
||||
this.corpinfoName = userCorpRecordE.getCorpinfoName();
|
||||
this.departmentId = userE.getDepartmentId();
|
||||
this.departmentName = userE.getDepartmentName();
|
||||
this.postId = userE.getPostId();
|
||||
this.postName = userE.getPostName();
|
||||
this.employmentFlag = employmentFlag;
|
||||
this.status = status;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -156,7 +156,9 @@ public class UserE extends BaseE {
|
|||
|
||||
|
||||
public void initAdd(Long tenantId, UserE userE) {
|
||||
userE.setUserId(Tools.get32UUID());
|
||||
if(StringUtils.isEmpty(userE.getUserId())){
|
||||
userE.setUserId(Tools.get32UUID());
|
||||
}
|
||||
userE.setTenantId(!ObjectUtils.isEmpty(userE.getTenantId()) ? userE.getTenantId() : tenantId);
|
||||
userE.setCorpinfoId(!ObjectUtils.isEmpty(userE.getCorpinfoId()) ? userE.getCorpinfoId() : tenantId);
|
||||
userE.setEmploymentFlag(1);
|
||||
|
|
|
|||
|
|
@ -77,6 +77,11 @@ public class UserChangeRecordDO extends BaseDO {
|
|||
@ApiModelProperty(value = "离职原因")
|
||||
private String resignationReason;
|
||||
|
||||
//用户名称
|
||||
@ApiModelProperty(value = "用户名称")
|
||||
@TableField(exist = false)
|
||||
private String userName;
|
||||
|
||||
public UserChangeRecordDO(String userChangeRecordId) {
|
||||
this.userChangeRecordId = userChangeRecordId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,5 +13,6 @@ import org.apache.ibatis.annotations.Mapper;
|
|||
@Mapper
|
||||
public interface UserChangeRecordMapper extends BaseMapper<UserChangeRecordDO> {
|
||||
|
||||
UserChangeRecordDO getChangerRecordInfoById(Long userId, Long corpinfoId, Integer status);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -21,5 +21,8 @@ public interface UserChangeRecordRepository extends BaseRepository<UserChangeRec
|
|||
List<UserChangeRecordDO> list(Map<String, Object> params);
|
||||
|
||||
SingleResponse<UserChangeRecordDO> getInfoById(Long id);
|
||||
|
||||
|
||||
UserChangeRecordDO getChangerRecordInfoById(Long userId, Long corpinfoId, Integer status);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -51,5 +51,10 @@ public class UserChangeRecordRepositoryImpl extends BaseRepositoryImpl<UserChang
|
|||
public SingleResponse<UserChangeRecordDO> getInfoById(Long id) {
|
||||
return SingleResponse.of(userChangeRecordMapper.selectById(id));
|
||||
}
|
||||
|
||||
@Override
|
||||
public UserChangeRecordDO getChangerRecordInfoById(Long userId, Long corpinfoId, Integer status) {
|
||||
return userChangeRecordMapper.getChangerRecordInfoById(userId, corpinfoId, status);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -3,5 +3,16 @@
|
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.zcloud.basic.info.persistence.mapper.UserChangeRecordMapper">
|
||||
<select id="getChangerRecordInfoById" resultType="com.zcloud.basic.info.persistence.dataobject.UserChangeRecordDO">
|
||||
select ucr.*,u.name as userName
|
||||
from user_change_record ucr
|
||||
left join user u on ucr.user_id = u.id
|
||||
where ucr.delete_enum = 'FALSE'
|
||||
and ucr.corpinfo_id_after =#{corpinfoId}
|
||||
and ucr.user_id =#{userId}
|
||||
and ucr.status =#{status}
|
||||
order by ucr.create_time desc
|
||||
limit 1
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
|
|
|
|||
|
|
@ -311,7 +311,7 @@
|
|||
END AS corpName,
|
||||
CASE
|
||||
WHEN u.flow_flag = 0 THEN u.department_id
|
||||
WHEN u.flow_flag = 1 THEN cpd.id
|
||||
WHEN u.flow_flag = 1 THEN cp.department_id
|
||||
END AS departmentId,
|
||||
CASE
|
||||
WHEN u.flow_flag = 0 THEN u.corpinfo_id
|
||||
|
|
@ -321,7 +321,7 @@
|
|||
user u
|
||||
LEFT JOIN user_corp cp ON u.id = cp.user_id AND cp.delete_enum = 'FALSE'
|
||||
LEFT JOIN department ud ON u.department_id = ud.id
|
||||
LEFT JOIN department cpd ON ud.parent_id = cpd.id
|
||||
LEFT JOIN department cpd ON cp.department_id = cpd.id
|
||||
AND cpd.delete_enum = 'FALSE'
|
||||
AND cp.corpinfo_id = cpd.corpinfo_id
|
||||
LEFT JOIN corp_info cu ON u.corpinfo_id = cu.id
|
||||
|
|
|
|||
Loading…
Reference in New Issue