Commit 9c4411a0 authored by hongguangwu's avatar hongguangwu

Merge remote-tracking branch 'origin/MVP1.7.12' into MVP1.7.12

parents a1376379 3e59a93d
...@@ -61,7 +61,7 @@ public class LGuaziOfferRecord extends BaseEntity { ...@@ -61,7 +61,7 @@ public class LGuaziOfferRecord extends BaseEntity {
/** /**
* 记录来源 * 记录来源
* (1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信;5:(系统触发)收集短信发送成功;6:(系统触发)C端采集提交; * (1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信;5:(系统触发)收集短信发送成功;6:(系统触发)C端采集提交;
* 7:档案审核;9:发起合同申请10:合同审核通过;11:合同归档;12:发送合同下载短信) * 7:档案审核;9:发起合同申请10:合同审核通过;11:(系统触发)合同归档;12:发送合同下载短信)
*/ */
@Length(max = 2, message = "记录来源不能超过2个字符") @Length(max = 2, message = "记录来源不能超过2个字符")
@Schema(description = "记录来源(1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信;5:(系统触发)收集短信发送成功;6:(系统触发)C端采集提交;7:档案审核通过;9:发起合同申请10:合同审核通过;11:合同归档;12:发送合同下载短信)") @Schema(description = "记录来源(1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信;5:(系统触发)收集短信发送成功;6:(系统触发)C端采集提交;7:档案审核通过;9:发起合同申请10:合同审核通过;11:合同归档;12:发送合同下载短信)")
......
...@@ -44,7 +44,7 @@ public interface LGuaziOfferRecordService extends IService<LGuaziOfferRecord> { ...@@ -44,7 +44,7 @@ public interface LGuaziOfferRecordService extends IService<LGuaziOfferRecord> {
* 传参:记录来源(recordFrom) * 传参:记录来源(recordFrom)
* 1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信; * 1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信;
* 5:(系统触发)收集短信发送成功更新状态;6:(系统触发)C端采集提交;7:档案审核通过;8:档案审核不通过; * 5:(系统触发)收集短信发送成功更新状态;6:(系统触发)C端采集提交;7:档案审核通过;8:档案审核不通过;
* 9:发起合同申请;10:合同审核通过;11:合同归档;12:发送合同下载短信) * 9:发起合同申请;10:合同审核通过;11:(系统触发)合同归档;12:发送合同下载短信)
*/ */
void saveRecordOne(LGuaziOfferRecordVo lGuaziOfferRecordVo); void saveRecordOne(LGuaziOfferRecordVo lGuaziOfferRecordVo);
......
...@@ -20,6 +20,7 @@ package com.yifu.cloud.plus.v1.yifu.archives.service; ...@@ -20,6 +20,7 @@ package com.yifu.cloud.plus.v1.yifu.archives.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeContractInfo;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo; import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo; import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage; import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
...@@ -124,5 +125,12 @@ public interface TGzOfferInfoService extends IService<TGzOfferInfo> { ...@@ -124,5 +125,12 @@ public interface TGzOfferInfoService extends IService<TGzOfferInfo> {
*/ */
R batchUpdateStatus(TGzOfferInfoVo tGzOfferInfo); R batchUpdateStatus(TGzOfferInfoVo tGzOfferInfo);
/**
* 生成瓜子档案里的合同信息
* @param contractInfo 合同信息
* @param offerId offerId
* @param workLocation 工作地点
*/
void saveContractInfoToGzEmpInfo(TEmployeeContractInfo contractInfo, Integer offerId, String workLocation);
} }
...@@ -117,7 +117,7 @@ public class LGuaziOfferRecordServiceImpl extends ServiceImpl<LGuaziOfferRecordM ...@@ -117,7 +117,7 @@ public class LGuaziOfferRecordServiceImpl extends ServiceImpl<LGuaziOfferRecordM
// 记录来源 // 记录来源
// 1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信; // 1:手动更新状态;2:编辑offer信息;3:发送Offer查阅短信;4:发送信息收集短信;
// 5:(系统触发)收集短信发送成功更新状态;6:(系统触发)C端采集提交;7:档案审核 // 5:(系统触发)收集短信发送成功更新状态;6:(系统触发)C端采集提交;7:档案审核
// 9:发起合同申请;10:合同审核通过;11:合同归档;12:发送合同下载短信) // 9:发起合同申请;10:合同审核通过;11:(系统触发)合同归档;12:发送合同下载短信)
// 属于状态更新 // 属于状态更新
String[] statusChangeArr = {"1", "5", "6", "7", "9", "10", "11"}; String[] statusChangeArr = {"1", "5", "6", "7", "9", "10", "11"};
...@@ -175,7 +175,7 @@ public class LGuaziOfferRecordServiceImpl extends ServiceImpl<LGuaziOfferRecordM ...@@ -175,7 +175,7 @@ public class LGuaziOfferRecordServiceImpl extends ServiceImpl<LGuaziOfferRecordM
} }
// 属于系统更新的,记录创建人为 0:系统触发 // 属于系统更新的,记录创建人为 0:系统触发
String[] sysCreateArr = {"5", "6"}; String[] sysCreateArr = {"5", "6","11"};
if (ArrayUtils.contains(sysCreateArr, lGuaziOfferRecordVo.getRecordFrom())) { if (ArrayUtils.contains(sysCreateArr, lGuaziOfferRecordVo.getRecordFrom())) {
lGuaziOfferRecordVo.setCreateBy("0"); lGuaziOfferRecordVo.setCreateBy("0");
lGuaziOfferRecordVo.setCreateName("系统触发"); lGuaziOfferRecordVo.setCreateName("系统触发");
......
...@@ -103,6 +103,10 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr ...@@ -103,6 +103,10 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
private final TGzOfferInfoMapper gzOfferInfoMapper; private final TGzOfferInfoMapper gzOfferInfoMapper;
private final LGuaziOfferRecordService lGuaziOfferRecordService;
private final TGzOfferInfoService gzOfferInfoService;
/** /**
* 员工合同信息表简单分页查询 * 员工合同信息表简单分页查询
* *
...@@ -530,10 +534,10 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr ...@@ -530,10 +534,10 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
contractPreMapper.updateById(contractPre); contractPreMapper.updateById(contractPre);
} }
} }
//瓜子项目编码:皖A694302 // 瓜子项目编码:皖A694302
if (CommonConstants.GZ_DEPT_NO.equals(tEmployeeContractInfo.getDeptNo())) { if (CommonConstants.GZ_DEPT_NO.equals(tEmployeeContractInfo.getDeptNo())) {
//合同申请瓜子合同状态更新成待签署 //合同申请瓜子合同状态更新成待签署
updateGzOfferStatus(tEmployeeContractInfo.getEmpIdcard(),CommonConstants.TWELVE_STRING,CommonConstants.THIRTEEN_STRING); updateGzOfferStatus(tEmployeeContractInfo,"97",CommonConstants.THIRTEEN_STRING,user.getId(),user.getNickname());
} }
} else { } else {
// 标准合同、劳动派遣合同、其他。————社保公积金都派减,自动审核通过 // 标准合同、劳动派遣合同、其他。————社保公积金都派减,自动审核通过
...@@ -880,7 +884,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr ...@@ -880,7 +884,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
//瓜子项目编码:皖A694302 //瓜子项目编码:皖A694302
if (CommonConstants.GZ_DEPT_NO.equals(contractInfo.getDeptNo())) { if (CommonConstants.GZ_DEPT_NO.equals(contractInfo.getDeptNo())) {
//审核通过瓜子合同状态更新合同审核通过 //审核通过瓜子合同状态更新合同审核通过
updateGzOfferStatus(contractInfo.getEmpIdcard(),CommonConstants.THIRTEEN_STRING,CommonConstants.EIGHT_STRING); updateGzOfferStatus(contractInfo,CommonConstants.THIRTEEN_STRING,CommonConstants.EIGHT_STRING,user.getId(),user.getNickname());
} }
} }
if (tEmployeeContractInfo.getAuditStatus() == CommonConstants.dingleDigitIntArray[3]) { if (tEmployeeContractInfo.getAuditStatus() == CommonConstants.dingleDigitIntArray[3]) {
...@@ -978,6 +982,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr ...@@ -978,6 +982,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
@Override @Override
public R<String> filingContract(TEmployeeContractInfo tEmployeeContractInfo) { public R<String> filingContract(TEmployeeContractInfo tEmployeeContractInfo) {
if (tEmployeeContractInfo != null) { if (tEmployeeContractInfo != null) {
if ((Common.isNotNull(tEmployeeContractInfo.getContractNo()) && tEmployeeContractInfo.getContractNo().length() > 50) if ((Common.isNotNull(tEmployeeContractInfo.getContractNo()) && tEmployeeContractInfo.getContractNo().length() > 50)
|| (Common.isNotNull(tEmployeeContractInfo.getFileCabinetNo()) && tEmployeeContractInfo.getFileCabinetNo().length() > 50)) { || (Common.isNotNull(tEmployeeContractInfo.getFileCabinetNo()) && tEmployeeContractInfo.getFileCabinetNo().length() > 50)) {
...@@ -1005,7 +1010,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr ...@@ -1005,7 +1010,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
//瓜子项目编码:皖A694302 //瓜子项目编码:皖A694302
if (CommonConstants.GZ_DEPT_NO.equals(tEmployeeContractInfo.getDeptNo())) { if (CommonConstants.GZ_DEPT_NO.equals(tEmployeeContractInfo.getDeptNo())) {
//合同归档瓜子合同状态更新已归档 //合同归档瓜子合同状态更新已归档
updateGzOfferStatus(tEmployeeContractInfo.getEmpIdcard(),CommonConstants.EIGHT_STRING,CommonConstants.NINETY_NINE); updateGzOfferStatus(tEmployeeContractInfo,CommonConstants.EIGHT_STRING,CommonConstants.NINETY_NINE,"0","系统自动触发");
} }
return R.ok(); return R.ok();
} }
...@@ -1947,7 +1952,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr ...@@ -1947,7 +1952,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
//瓜子项目编码:皖A694302 //瓜子项目编码:皖A694302
if (CommonConstants.GZ_DEPT_NO.equals(contract.getDeptNo())) { if (CommonConstants.GZ_DEPT_NO.equals(contract.getDeptNo())) {
//审核通过瓜子合同状态更新成合同审核通过 //审核通过瓜子合同状态更新成合同审核通过
updateGzOfferStatus(contract.getEmpIdcard(),CommonConstants.THIRTEEN_STRING,CommonConstants.EIGHT_STRING); updateGzOfferStatus(contract,CommonConstants.THIRTEEN_STRING,CommonConstants.EIGHT_STRING,user.getId(),user.getNickname());
} }
} }
if (tEmployeeContractInfo.getAuditStatus() == CommonConstants.dingleDigitIntArray[3]) { if (tEmployeeContractInfo.getAuditStatus() == CommonConstants.dingleDigitIntArray[3]) {
...@@ -2207,16 +2212,58 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr ...@@ -2207,16 +2212,58 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
} }
//更新瓜子offer状态 //更新瓜子offer状态
public void updateGzOfferStatus(String idCard,String preStatus,String updStatus) { public void updateGzOfferStatus(TEmployeeContractInfo contractInfo,String preStatus,String updStatus, String userId, String nickname) {
if(Common.isEmpty(contractInfo)){
return;
}
TGzOfferInfo gzOfferInfo = gzOfferInfoMapper.selectOne(Wrappers.<TGzOfferInfo>query() TGzOfferInfo gzOfferInfo = gzOfferInfoMapper.selectOne(Wrappers.<TGzOfferInfo>query()
.lambda().eq(TGzOfferInfo::getNationalId, idCard) .lambda().eq(TGzOfferInfo::getNationalId, contractInfo.getEmpIdcard())
.eq(TGzOfferInfo::getOfferStatus, preStatus) .eq(TGzOfferInfo::getOfferStatus, preStatus)
.eq(TGzOfferInfo::getDelFlag,CommonConstants.ZERO_STRING) .eq(TGzOfferInfo::getDelFlag,CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL)); .last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(gzOfferInfo)) { if (Common.isNotNull(gzOfferInfo)) {
gzOfferInfo.setOfferStatus(updStatus); gzOfferInfo.setOfferStatus(updStatus);
gzOfferInfo.setUpdateBy(userId);
gzOfferInfo.setUpdateTime(LocalDateTime.now());
gzOfferInfoMapper.updateById(gzOfferInfo); gzOfferInfoMapper.updateById(gzOfferInfo);
//todo 瓜子状态变更增加操作日志
// updStatus == 8:合同审核通过 生成瓜子档案里的合同信息
if(CommonConstants.EIGHT_STRING.equals(updStatus)){
gzOfferInfoService.saveContractInfoToGzEmpInfo(contractInfo, gzOfferInfo.getId(), gzOfferInfo.getWorkLocation());
}
// 瓜子状态变更增加操作日志
// 13:待签署,8:合同审核通过,99:已归档
// 9:发起合同申请10:合同审核通过;11:(系统触发)合同归档;
String recordFrom = "";
switch (updStatus) {
case "13":
recordFrom = "9";
break;
case "8":
recordFrom = "10";
break;
default:
recordFrom = "11";
break;
}
LGuaziOfferRecordVo lGuaziOfferRecordVo = new LGuaziOfferRecordVo();
// 存变更前后的状态到 状态数组里
List<String> changeStatusList = new ArrayList<>();
changeStatusList.add(preStatus);
changeStatusList.add(updStatus);
if(changeStatusList.size() > 0){
lGuaziOfferRecordVo.setOfferId(gzOfferInfo.getId());
// 记录来源: 档案审核
lGuaziOfferRecordVo.setRecordFrom(recordFrom);
lGuaziOfferRecordVo.setChangeStatusList(changeStatusList);
lGuaziOfferRecordVo.setCreateBy(userId);
lGuaziOfferRecordVo.setCreateName(nickname);
lGuaziOfferRecordService.saveRecordOne(lGuaziOfferRecordVo);
}
} }
} }
......
...@@ -26,7 +26,6 @@ import com.alibaba.excel.read.metadata.holder.ReadRowHolder; ...@@ -26,7 +26,6 @@ import com.alibaba.excel.read.metadata.holder.ReadRowHolder;
import com.alibaba.excel.util.ListUtils; import com.alibaba.excel.util.ListUtils;
import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.metadata.WriteSheet;
import com.baomidou.lock.annotation.Lock4j; import com.baomidou.lock.annotation.Lock4j;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
...@@ -138,6 +137,8 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -138,6 +137,8 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
private final EmployeeRegistrationPreService registrationPreService; private final EmployeeRegistrationPreService registrationPreService;
private final LGuaziOfferRecordService lGuaziOfferRecordService;
@Autowired @Autowired
private OSSUtil ossUtil; private OSSUtil ossUtil;
...@@ -145,6 +146,8 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -145,6 +146,8 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
private final TGzOfferInfoMapper gzOfferInfoMapper; private final TGzOfferInfoMapper gzOfferInfoMapper;
private final TGzOfferInfoService gzOfferInfoService;
@Override @Override
public IPage<TEmployeeInfo> getPage(Page<TEmployeeInfo> page, TEmployeeInfo employeeInfo) { public IPage<TEmployeeInfo> getPage(Page<TEmployeeInfo> page, TEmployeeInfo employeeInfo) {
return baseMapper.getPage(page, employeeInfo); return baseMapper.getPage(page, employeeInfo);
...@@ -2618,6 +2621,40 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -2618,6 +2621,40 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
} }
//tEmployeeProjectService.updateContractStatus(c.getEmpId(), c.getSettleDomain(), CommonConstants.ONE_INT) //tEmployeeProjectService.updateContractStatus(c.getEmpId(), c.getSettleDomain(), CommonConstants.ONE_INT)
baseMapper.updateContractStatus(c.getEmpId(), CommonConstants.ONE_INT); baseMapper.updateContractStatus(c.getEmpId(), CommonConstants.ONE_INT);
//瓜子项目编码:皖A694302
if (CommonConstants.GZ_DEPT_NO.equals(c.getDeptNo())) {
//审核通过瓜子合同状态更新合同审核通过
TGzOfferInfo gzOfferInfo = gzOfferInfoMapper.selectOne(Wrappers.<TGzOfferInfo>query()
.lambda().eq(TGzOfferInfo::getNationalId, c.getEmpIdcard())
.eq(TGzOfferInfo::getOfferStatus, CommonConstants.THIRTEEN_STRING)
.eq(TGzOfferInfo::getDelFlag,CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(gzOfferInfo)) {
gzOfferInfo.setOfferStatus(CommonConstants.EIGHT_STRING);
gzOfferInfoMapper.updateById(gzOfferInfo);
// 合同审核通过 生成瓜子档案里的合同信息
gzOfferInfoService.saveContractInfoToGzEmpInfo(c, gzOfferInfo.getId(), gzOfferInfo.getWorkLocation());
// 瓜子状态变更增加操作日志
LGuaziOfferRecordVo lGuaziOfferRecordVo = new LGuaziOfferRecordVo();
// 存变更前后的状态到 状态数组里
List<String> changeStatusList = new ArrayList<>();
changeStatusList.add(CommonConstants.THIRTEEN_STRING);
changeStatusList.add(CommonConstants.EIGHT_STRING);
if(changeStatusList.size() > 0){
lGuaziOfferRecordVo.setOfferId(gzOfferInfo.getId());
// 记录来源: 档案审核
lGuaziOfferRecordVo.setRecordFrom("10");
lGuaziOfferRecordVo.setChangeStatusList(changeStatusList);
lGuaziOfferRecordVo.setCreateBy("0");
lGuaziOfferRecordVo.setCreateName("系统触发");
lGuaziOfferRecordService.saveRecordOne(lGuaziOfferRecordVo);
}
}
}
//审核不同 //审核不同
} else if (CommonConstants.ONE_STRING.equals(vo.getType())) { } else if (CommonConstants.ONE_STRING.equals(vo.getType())) {
c.setAuditStatus(CommonConstants.THREE_INT); c.setAuditStatus(CommonConstants.THREE_INT);
...@@ -2729,13 +2766,31 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -2729,13 +2766,31 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
//合同申请瓜子合同状态更新成待签署 //合同申请瓜子合同状态更新成待签署
TGzOfferInfo gzOfferInfo = gzOfferInfoMapper.selectOne(Wrappers.<TGzOfferInfo>query() TGzOfferInfo gzOfferInfo = gzOfferInfoMapper.selectOne(Wrappers.<TGzOfferInfo>query()
.lambda().eq(TGzOfferInfo::getNationalId, contract.getEmpIdcard()) .lambda().eq(TGzOfferInfo::getNationalId, contract.getEmpIdcard())
.eq(TGzOfferInfo::getOfferStatus, CommonConstants.TWELVE_STRING) .eq(TGzOfferInfo::getOfferStatus, "97")
.eq(TGzOfferInfo::getDelFlag,CommonConstants.ZERO_STRING) .eq(TGzOfferInfo::getDelFlag,CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL)); .last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(gzOfferInfo)) { if (Common.isNotNull(gzOfferInfo)) {
gzOfferInfo.setOfferStatus(CommonConstants.THIRTEEN_STRING); gzOfferInfo.setOfferStatus(CommonConstants.THIRTEEN_STRING);
gzOfferInfoMapper.updateById(gzOfferInfo); gzOfferInfoMapper.updateById(gzOfferInfo);
//todo 瓜子状态变更增加操作日志
// 瓜子状态变更增加操作日志
LGuaziOfferRecordVo lGuaziOfferRecordVo = new LGuaziOfferRecordVo();
// 存变更前后的状态到 状态数组里
List<String> changeStatusList = new ArrayList<>();
changeStatusList.add(gzOfferInfo.getOfferStatus());
changeStatusList.add(CommonConstants.THIRTEEN_STRING);
if(changeStatusList.size() > 0){
lGuaziOfferRecordVo.setOfferId(gzOfferInfo.getId());
// 记录来源: 发起合同申请
lGuaziOfferRecordVo.setRecordFrom("9");
lGuaziOfferRecordVo.setChangeStatusList(changeStatusList);
lGuaziOfferRecordVo.setCreateBy("0");
lGuaziOfferRecordVo.setCreateName("系统触发");
lGuaziOfferRecordService.saveRecordOne(lGuaziOfferRecordVo);
}
} }
} }
audit = new TEmployeeContractAudit(); audit = new TEmployeeContractAudit();
......
...@@ -31,9 +31,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -31,9 +31,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeContractInfo;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzEmpInfo;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo; import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TRegisteWarningEmployee; import com.yifu.cloud.plus.v1.yifu.archives.entity.TRegisteWarningEmployee;
import com.yifu.cloud.plus.v1.yifu.archives.mapper.EmployeeRegistrationPreMapper; import com.yifu.cloud.plus.v1.yifu.archives.mapper.EmployeeRegistrationPreMapper;
import com.yifu.cloud.plus.v1.yifu.archives.mapper.TEmployeeContractInfoMapper;
import com.yifu.cloud.plus.v1.yifu.archives.mapper.TGzEmpInfoMapper;
import com.yifu.cloud.plus.v1.yifu.archives.mapper.TGzOfferInfoMapper; import com.yifu.cloud.plus.v1.yifu.archives.mapper.TGzOfferInfoMapper;
import com.yifu.cloud.plus.v1.yifu.archives.service.LGuaziOfferRecordService; import com.yifu.cloud.plus.v1.yifu.archives.service.LGuaziOfferRecordService;
import com.yifu.cloud.plus.v1.yifu.archives.service.TGzOfferInfoService; import com.yifu.cloud.plus.v1.yifu.archives.service.TGzOfferInfoService;
...@@ -59,11 +63,10 @@ import javax.servlet.http.HttpServletResponse; ...@@ -59,11 +63,10 @@ import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.time.ZoneId;
import java.util.HashMap; import java.util.*;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream; import java.util.stream.Stream;
...@@ -84,6 +87,8 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz ...@@ -84,6 +87,8 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz
private final LGuaziOfferRecordService lGuaziOfferRecordService; private final LGuaziOfferRecordService lGuaziOfferRecordService;
private final TEmployeeContractInfoMapper employeeContractInfoMapper;
@Autowired @Autowired
private UpmsDaprUtils upmsDaprUtils; private UpmsDaprUtils upmsDaprUtils;
...@@ -93,6 +98,8 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz ...@@ -93,6 +98,8 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz
// 当前Offer更新状态,无法再发起更新:5:拒绝Offer、10:取消offer、8:合同审核通过、99:已归档 // 当前Offer更新状态,无法再发起更新:5:拒绝Offer、10:取消offer、8:合同审核通过、99:已归档
private final String[] failStatusArr = {"5", "10", "8", "99"}; private final String[] failStatusArr = {"5", "10", "8", "99"};
private final TGzEmpInfoMapper gzEmpInfoMapper;
/** /**
* 瓜子offer信息接收表简单分页查询 * 瓜子offer信息接收表简单分页查询
* @param tGzOfferInfo 瓜子offer信息接收表 * @param tGzOfferInfo 瓜子offer信息接收表
...@@ -268,19 +275,11 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz ...@@ -268,19 +275,11 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz
if("97".equals(tGzOfferInfo.getOfferStatus())){ if("97".equals(tGzOfferInfo.getOfferStatus())){
// todo 1、生成人员档案信息、项目档案信息 // todo 1、生成人员档案信息、项目档案信息
// 获取瓜子和皖信的字典映射
// Map<String, Map<String,String>> relDictMap = new HashMap<>();
// R<Map<String, Map<String,String>>> relDictMapR = upmsDaprUtils.getRelValueMapByOutDictType();
// if (null != relDictMapR
// && relDictMapR.getCode() == CommonConstants.SUCCESS
// && Common.isNotNull(relDictMapR.getData())) {
// relDictMap = relDictMapR.getData();
// }
// 2、检查 该项目该人员是否有在途或审核通过或已归档的状态为“可用”的合同, // 2、检查 该项目该人员是否有在途或审核通过或已归档的状态为“可用”的合同,
// 若有则根据当前状态更新Offer状态,合同未审核通过:存【13:待签署】;合同审核通过:存【8:合同审核通过】;合同已归档:存【99:已归档】, // 若有则根据当前状态更新Offer状态,合同未审核通过:存【13:待签署】;合同审核通过:存【8:合同审核通过】;合同已归档:存【99:已归档】,
// 存合同信息; // 存合同信息;
String changeStatus = this.checkSaveContract(findInfo.getNationalId()); String changeStatus = this.checkSaveContract(findInfo.getNationalId(),findInfo.getId(), findInfo.getWorkLocation());
tGzOfferInfo.setOfferStatus(changeStatus); tGzOfferInfo.setOfferStatus(changeStatus);
} }
...@@ -300,19 +299,106 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz ...@@ -300,19 +299,106 @@ public class TGzOfferInfoServiceImpl extends ServiceImpl<TGzOfferInfoMapper, TGz
} }
/** /**
* todo 检查 瓜子档案审核通过后,是否需要再生成合同信息 * 检查 瓜子档案审核通过后,是否需要再生成合同信息
* 该项目该人员是否有在途或审核通过或已归档的状态为“可用”的合同, * 该项目该人员是否有在途或审核通过或已归档的状态为“可用”的合同,
* 若有则根据当前状态更新Offer状态,合同未审核通过:存【13:待签署】;合同审核通过:存【8:合同审核通过】;合同已归档:存【99:已归档】 * 若有则根据当前状态更新Offer状态,合同未审核通过:存【13:待签署】;合同审核通过:存【8:合同审核通过】;合同已归档:存【99:已归档】
* @param nationalId 人员身份证号 * @param nationalId 人员身份证号
* @param offerId offerId
* @param workLocation 工作地点
* @return String 后续offer要更新的状态 * @return String 后续offer要更新的状态
*/ */
private String checkSaveContract(String nationalId){ private String checkSaveContract(String nationalId,Integer offerId, String workLocation){
// 默认是审核通过 // 默认是审核通过
String changeStatus = "97"; String changeStatus = "97";
TEmployeeContractInfo contractInfo = employeeContractInfoMapper.selectOne(Wrappers.<TEmployeeContractInfo>query().lambda()
.eq(TEmployeeContractInfo::getDeptNo, CommonConstants.GZ_DEPT_NO)
.eq(TEmployeeContractInfo::getEmpIdcard, nationalId)
.eq(TEmployeeContractInfo::getInUse, CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL));
if(Common.isNotNull(contractInfo)){
// 合同已归档
if(CommonConstants.ZERO_STRING.equals(contractInfo.getIsFile())){
// 生成瓜子档案里的合同信息
this.saveContractInfoToGzEmpInfo(contractInfo, offerId, workLocation);
return "99";
}
// 合同审核通过
if(CommonConstants.TWO_INTEGER.equals(contractInfo.getAuditStatus())){
// 生成瓜子档案里的合同信息
this.saveContractInfoToGzEmpInfo(contractInfo, offerId, workLocation);
return CommonConstants.EIGHT_STRING;
}
// 合同已提交待审核
if(CommonConstants.ONE_INTEGER.equals(contractInfo.getAuditStatus())){
return CommonConstants.THIRTEEN_STRING;
}
}
return changeStatus; return changeStatus;
} }
/**
* 生成瓜子档案里的合同信息
* @param contractInfo 合同信息
* @param offerId offerId
* @param workLocation 工作地点
*/
@Override
public void saveContractInfoToGzEmpInfo(TEmployeeContractInfo contractInfo, Integer offerId, String workLocation){
// 获取档案信息
TGzEmpInfo gzEmpInfo = gzEmpInfoMapper.selectOne(Wrappers.<TGzEmpInfo>query().lambda()
.eq(TGzEmpInfo::getOfferId, offerId)
.eq(TGzEmpInfo::getDelFlag, CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL));
if(Common.isNotNull(gzEmpInfo)){
gzEmpInfo.setContractNum(contractInfo.getContractName());
// 客服申请处选择“标准合同”传“外签-劳动合同 ”;“实习协议”传“外签-实习协议 ”
if(CommonConstants.ONE_STRING.equals(contractInfo.getContractType())){
gzEmpInfo.setContractType("1E");
}
if(CommonConstants.FIVE_STRING.equals(contractInfo.getContractType())){
gzEmpInfo.setContractType("1F");
}
gzEmpInfo.setSginatureMethod("E");
gzEmpInfo.setSginatureType("01");
gzEmpInfo.setSginatureDt(contractInfo.getContractStart());
gzEmpInfo.setContractBeginDt(contractInfo.getContractStart());
gzEmpInfo.setContractExpEndDt(contractInfo.getContractEnd());
gzEmpInfo.setContractEndDt(contractInfo.getContractEnd());
// 合同申请处选择“无”传给瓜子为“0”;合同申请选择“六个月”,传给瓜子为“6”
if("无".equals(contractInfo.getTryPeriod())){
gzEmpInfo.setProbation(CommonConstants.ZERO_STRING);
}
if("六个月".equals(contractInfo.getTryPeriod())){
gzEmpInfo.setProbation(CommonConstants.SIX_STRING);
// 按照“合同起始日期”及“试用周期”进行推测
// 合同起始日期为20250603,试用期为6,试用期预计结束日期为20251202
// 将Date转换为LocalDate
LocalDate localDate = contractInfo.getContractStart().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
LocalDate prcExpLocalDate = localDate.plusMonths(6); // 加上6个月
// 将LocalDate转换回Date对象
Date prcExpDt = Date.from(prcExpLocalDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
// 试用期预计结束日期
gzEmpInfo.setPrcExpDt(prcExpDt);
// 默认等于试用期预计结束日期+1日(自然日),eg:”试用期预计结束日期“为20251202,”预计转正日期“为20251203“
LocalDate probationDtLocalDate = prcExpLocalDate.plusDays(1); // 加上+1日(自然日)
// 将LocalDate转换回Date对象
Date probationDt = Date.from(probationDtLocalDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
// 预计转正日期
gzEmpInfo.setProbationDt(probationDt);
}
gzEmpInfo.setNeeProviderId(CommonConstants.GZ_NEE_PROVIDER_ID);
gzEmpInfo.setWorkLocation(workLocation);
gzEmpInfo.setContractState("A");
// 存合同信息
gzEmpInfoMapper.updateById(gzEmpInfo);
}
}
/** /**
* 获取当前状态下,允许更新的状态列表 * 获取当前状态下,允许更新的状态列表
* *
......
...@@ -675,4 +675,6 @@ public interface CommonConstants { ...@@ -675,4 +675,6 @@ public interface CommonConstants {
String GZ_DEPT_NO = "皖A694302"; String GZ_DEPT_NO = "皖A694302";
String NINETY_NINE = "99"; String NINETY_NINE = "99";
String GZ_NEE_PROVIDER_ID = "V59";
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment