相关方入职离职
parent
faed5624b1
commit
ca1edfbb1e
|
|
@ -225,8 +225,8 @@ public class UserAddExe {
|
||||||
userCorpGateway.add(userCorpE);
|
userCorpGateway.add(userCorpE);
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
if(userDO.getCorpinfoId() != null && userDO.getCorpinfoId().equals(cmd.getCorpinfoId())){
|
if(userDO.getCorpinfoId() != null ){
|
||||||
throw new BizException("该用户在当前企业已入职,无法入职");
|
throw new BizException("固定用户在当前企业已入职,无法入职");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
package com.zcloud.basic.info.command;
|
package com.zcloud.basic.info.command;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import cn.hutool.json.JSONUtil;
|
||||||
|
import com.alibaba.cola.dto.Response;
|
||||||
import com.alibaba.cola.exception.BizException;
|
import com.alibaba.cola.exception.BizException;
|
||||||
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;
|
||||||
|
|
@ -17,6 +19,7 @@ import com.zcloud.basic.info.persistence.repository.UserRepository;
|
||||||
import com.zcloud.gbscommon.utils.Const;
|
import com.zcloud.gbscommon.utils.Const;
|
||||||
import com.zcloud.gbscommon.utils.ZcloudRedisUtil;
|
import com.zcloud.gbscommon.utils.ZcloudRedisUtil;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.dubbo.config.annotation.DubboReference;
|
import org.apache.dubbo.config.annotation.DubboReference;
|
||||||
import org.junit.platform.commons.function.Try;
|
import org.junit.platform.commons.function.Try;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
@ -33,6 +36,7 @@ import java.util.List;
|
||||||
*/
|
*/
|
||||||
@Component
|
@Component
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
|
@Slf4j
|
||||||
public class UserRemoveExe {
|
public class UserRemoveExe {
|
||||||
private final UserGateway userGateway;
|
private final UserGateway userGateway;
|
||||||
private final UserRepository userRepository;
|
private final UserRepository userRepository;
|
||||||
|
|
@ -51,7 +55,6 @@ public class UserRemoveExe {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
throw new BizException("删除失败");
|
throw new BizException("删除失败");
|
||||||
}
|
}
|
||||||
// zcloudRedisUtil.del(Const.REDIS_USER_PREFIX+id);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -80,17 +83,15 @@ public class UserRemoveExe {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 删除底座用户信息
|
|
||||||
userFacade.delete(cmd.getId());
|
|
||||||
// 删除用户表
|
// 删除用户表
|
||||||
Long userId = cmd.getId();
|
Long userId = cmd.getId();
|
||||||
userGateway.deletedUserById(userId);
|
userGateway.deletedUserById(userId);
|
||||||
// 删除user_corp表
|
// 删除user_corp表
|
||||||
userCorpRepository.removeByUserId(userId);
|
userCorpRepository.removeByUserId(userId);
|
||||||
|
|
||||||
|
log.info("删除底座用户信息,userId:{}",userId);
|
||||||
|
Response delete = userFacade.delete(cmd.getId());
|
||||||
|
log.info("删除底座用户信息,userId:{},返回结果:{}",userId, JSONUtil.toJsonStr( delete));
|
||||||
|
|
||||||
} catch (Exception e){
|
} catch (Exception e){
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ 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.jjb.saas.system.client.user.request.RoleDeptAddCmd;
|
import com.jjb.saas.system.client.user.request.RoleDeptAddCmd;
|
||||||
|
import com.jjb.saas.system.client.user.request.UserUpdateQuitCmd;
|
||||||
import com.jjb.saas.system.enums.user.UserAuditStatusEnum;
|
import com.jjb.saas.system.enums.user.UserAuditStatusEnum;
|
||||||
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.command.convertor.UserJobHandoverCoConvertor;
|
||||||
|
|
@ -235,15 +236,20 @@ public class UserUpdateExe {
|
||||||
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 处理未完成工作
|
// 处理未完成工作
|
||||||
List<UserJobHandoverDO> allJob = getUserJob(userDO.getId(), corpinfoId, userChangeRecordE.getUserChangeRecordId());
|
List<UserJobHandoverDO> allJob = getUserJob(userDO.getId(), corpinfoId, userChangeRecordE.getUserChangeRecordId());
|
||||||
if (CollUtil.isNotEmpty(allJob)) {
|
if (CollUtil.isNotEmpty(allJob)) {
|
||||||
userJobHandoverRepository.saveBatch(allJob);
|
userJobHandoverRepository.saveBatch(allJob);
|
||||||
// //TODO 离职发送,循环调用,失败的话,返回失败,
|
// // 离职发送,循环调用,失败的话,返回失败,
|
||||||
ResignatioChangeJob(allJob);
|
ResignatioChangeJob(allJob);
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO gbs 处理离职
|
// gbs 处理离职
|
||||||
|
UserUpdateQuitCmd quitCmd = new UserUpdateQuitCmd();
|
||||||
|
quitCmd.setId(userDO.getId());
|
||||||
|
log.info("GBS离职处理开始,用户id:{},企业id:{}", userDO.getId(), corpinfoId);
|
||||||
|
Response quit = userFacade.quit(quitCmd);
|
||||||
|
log.info("GBS离职处理结束,用户id:{},结果:{}", userDO.getId(), JSONUtil.toJsonStr(quit));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -300,16 +306,17 @@ public class UserUpdateExe {
|
||||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||||
userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode());
|
userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.RESIGNATION.getCode(), UserChangeRecordStatusEnum.APPROVED.getCode());
|
||||||
userChangeRecordGateway.add(userChangeRecordE);
|
userChangeRecordGateway.add(userChangeRecordE);
|
||||||
////TODO 通知GBS用户绑定租户
|
|
||||||
|
|
||||||
// TODO 人员离职,相关工作处理,有一个失败则,审批失败
|
|
||||||
|
|
||||||
//处理未完成的工作
|
//处理未完成的工作
|
||||||
//获取未完成工作
|
|
||||||
List<UserJobHandoverDO> allJob = userJobHandoverRepository.getListByChangerRecordId(userChangeRecordE.getUserChangeRecordId());
|
List<UserJobHandoverDO> allJob = userJobHandoverRepository.getListByChangerRecordId(userChangeRecordE.getUserChangeRecordId());
|
||||||
if (CollUtil.isNotEmpty(allJob)) {
|
if (CollUtil.isNotEmpty(allJob)) {
|
||||||
ResignatioChangeJob(allJob);
|
ResignatioChangeJob(allJob);
|
||||||
}
|
}
|
||||||
|
log.info("GBS离职处理开始,用户id:{}", userDO.getId());
|
||||||
|
UserUpdateQuitCmd quitCmd = new UserUpdateQuitCmd();
|
||||||
|
quitCmd.setId(userDO.getId());
|
||||||
|
Response quit = userFacade.quit(quitCmd);
|
||||||
|
log.info("GBS离职处理结束,用户id:{},结果:{}", userDO.getId(), JSONUtil.toJsonStr(quit));
|
||||||
} else {
|
} else {
|
||||||
//驳回
|
//驳回
|
||||||
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserStatus(userDO.getId(), corpinfoId, UserChangeRecordStatusEnum.PENDING.getCode());
|
UserCorpRecordDO userCorpRecordDO = userCorpRecordRepository.getInfoByUserStatus(userDO.getId(), corpinfoId, UserChangeRecordStatusEnum.PENDING.getCode());
|
||||||
|
|
@ -325,6 +332,8 @@ public class UserUpdateExe {
|
||||||
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
|
||||||
userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.ON.getCode(), UserChangeRecordStatusEnum.REJECTED.getCode());
|
userChangeRecordE.executeReviewStatus(userEOld, UserEmploymentFlagEnum.ON.getCode(), UserChangeRecordStatusEnum.REJECTED.getCode());
|
||||||
userChangeRecordGateway.add(userChangeRecordE);
|
userChangeRecordGateway.add(userChangeRecordE);
|
||||||
|
//将未完成的工作删除
|
||||||
|
userJobHandoverRepository.deleteUserJob(userDO.getId(), corpinfoId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -367,7 +376,6 @@ public class UserUpdateExe {
|
||||||
|
|
||||||
com.jjb.saas.system.client.user.request.UserAddCmd userAddCmd = new com.jjb.saas.system.client.user.request.UserAddCmd();
|
com.jjb.saas.system.client.user.request.UserAddCmd userAddCmd = new com.jjb.saas.system.client.user.request.UserAddCmd();
|
||||||
userAddCmd.setAccount(userDO.getPhone());
|
userAddCmd.setAccount(userDO.getPhone());
|
||||||
// userAddCmd.setMobile(userDO.getPhone());
|
|
||||||
userAddCmd.setName(userDO.getPhone());
|
userAddCmd.setName(userDO.getPhone());
|
||||||
RoleDeptAddCmd roleDeptAddCmd = new RoleDeptAddCmd();
|
RoleDeptAddCmd roleDeptAddCmd = new RoleDeptAddCmd();
|
||||||
Long roleId = userRepository.getDefaultRoleId();
|
Long roleId = userRepository.getDefaultRoleId();
|
||||||
|
|
@ -376,12 +384,12 @@ public class UserUpdateExe {
|
||||||
List<RoleDeptAddCmd> roleDeptAddCmdList = Collections.singletonList(roleDeptAddCmd);
|
List<RoleDeptAddCmd> roleDeptAddCmdList = Collections.singletonList(roleDeptAddCmd);
|
||||||
userAddCmd.setRoleDepts(roleDeptAddCmdList);
|
userAddCmd.setRoleDepts(roleDeptAddCmdList);
|
||||||
// userAddCmd.setTenantId(userDO.getCorpinfoId());
|
// userAddCmd.setTenantId(userDO.getCorpinfoId());
|
||||||
|
userAddCmd.setPassword(userDO.getPassword());
|
||||||
|
log.info("GBS入职处理开始,用户id:{}", userDO.getId());
|
||||||
SingleResponse<Long> gbsResult = userFacade.add(userAddCmd);
|
SingleResponse<Long> gbsResult = userFacade.add(userAddCmd);
|
||||||
|
log.info("GBS入职处理结束,用户id:{},结果:{}", userDO.getId(), JSONUtil.toJsonStr(gbsResult));
|
||||||
userDO.setId(gbsResult.getData());
|
userDO.setId(gbsResult.getData());
|
||||||
|
|
||||||
//TODO 通知GBS用户绑定租户,底座尚不支持用户绑定多个租户
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
//驳回
|
//驳回
|
||||||
//驳回
|
//驳回
|
||||||
|
|
@ -472,7 +480,7 @@ public class UserUpdateExe {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
//风险辨识检查
|
//风险辨识检查
|
||||||
ListManagerQry listManagerQry = new ListManagerQry();
|
/* ListManagerQry listManagerQry = new ListManagerQry();
|
||||||
listManagerQry.setUserId(userId);
|
listManagerQry.setUserId(userId);
|
||||||
listManagerQry.setCorpinfoId(corpinfoId);
|
listManagerQry.setCorpinfoId(corpinfoId);
|
||||||
List<ListManagerListByUserCO> riskManagerCOList = null;
|
List<ListManagerListByUserCO> riskManagerCOList = null;
|
||||||
|
|
@ -497,7 +505,7 @@ public class UserUpdateExe {
|
||||||
userJobHandoverDO.setCorpinfoId(corpinfoId);
|
userJobHandoverDO.setCorpinfoId(corpinfoId);
|
||||||
allJob.add(userJobHandoverDO);
|
allJob.add(userJobHandoverDO);
|
||||||
});
|
});
|
||||||
}
|
}*/
|
||||||
return allJob;
|
return allJob;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,5 +27,7 @@ public interface UserJobHandoverRepository extends BaseRepository<UserJobHandove
|
||||||
void processUserJobHandover(String userChangeRecordId);
|
void processUserJobHandover(String userChangeRecordId);
|
||||||
|
|
||||||
List<UserJobHandoverDO> getListByUserId(Long userId, Long corpinfoId);
|
List<UserJobHandoverDO> getListByUserId(Long userId, Long corpinfoId);
|
||||||
|
|
||||||
|
void deleteUserJob(Long id, Long corpinfoId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -90,5 +90,11 @@ 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 deleteUserJob(Long id, Long corpinfoId) {
|
||||||
|
//根据用户id和企业id删除数据
|
||||||
|
userJobHandoverMapper.delete(new QueryWrapper<UserJobHandoverDO>().eq("user_id", id).eq("corpinfo_id", corpinfoId).eq("delete_enum", "FALSE"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -173,6 +173,7 @@
|
||||||
ELSE p.post_name
|
ELSE p.post_name
|
||||||
END AS post_name,
|
END AS post_name,
|
||||||
u.id,
|
u.id,
|
||||||
|
u.password,
|
||||||
u.user_id,
|
u.user_id,
|
||||||
u.username,
|
u.username,
|
||||||
u.name,
|
u.name,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue