Commit d271e4d0 authored by fangxinjiang's avatar fangxinjiang

批量办理 100%

parent a3517c99
......@@ -64,7 +64,13 @@ public class EmpProjectDispatchVo implements Serializable {
@ExcelAttribute(name = "身份证号",isNotEmpty = true, errorInfo = "身份证号不能为空",maxLength = 20)
@ExcelProperty(value ="身份证号")
private String empIdcard;
/**
* 项目编码
*/
@NotNull(message = "项目编码不能为空")
@ExcelProperty(value ="项目编码")
@ExcelAttribute(name = "项目编码",isNotEmpty = true, errorInfo = "项目编码不能为空",maxLength = 20)
private String deptId;
/**
* 项目编码
*/
......
......@@ -469,7 +469,8 @@ public class TEmployeeInfoController {
* @Date: 2022/08/01 18:52
**/
@Operation(summary = "通过EMP_ID查询人员档案变更日志", description = "通过EMP_ID查询人员档案变更日志")
@GetMapping("/inner/updateEmpInfo")
@Inner
@PostMapping("/inner/updateEmpInfo")
public Boolean updateEmpInfo(@RequestBody UpdateEmpVo vo) {
return tEmployeeInfoService.updateEmpInfo(vo);
}
......
......@@ -32,7 +32,6 @@ import com.yifu.cloud.plus.v1.check.entity.TCheckIdCard;
import com.yifu.cloud.plus.v1.check.entity.TCheckMobile;
import com.yifu.cloud.plus.v1.yifu.archives.constants.EmployeeConstants;
import com.yifu.cloud.plus.v1.yifu.archives.entity.*;
import com.yifu.cloud.plus.v1.yifu.archives.mapper.TEmployeeContractInfoMapper;
import com.yifu.cloud.plus.v1.yifu.archives.mapper.TEmployeeInfoMapper;
import com.yifu.cloud.plus.v1.yifu.archives.service.*;
import com.yifu.cloud.plus.v1.yifu.archives.vo.*;
......@@ -2094,14 +2093,14 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
**/
@Override
public Boolean updateEmpInfo(UpdateEmpVo vo) {
if (Common.isEmpty(vo)){
if (Common.isEmpty(vo.getEmpIdCard())){
if (Common.isNotNull(vo)){
if (Common.isNotNull(vo.getEmpIdCard())){
TEmployeeInfo employeeInfo = baseMapper.selectOne(Wrappers.<TEmployeeInfo>query().lambda()
.eq(TEmployeeInfo::getDeleteFlag,CommonConstants.ZERO_STRING)
.eq(TEmployeeInfo::getEmpIdcard,vo.getEmpIdCard())
.eq(TEmployeeInfo::getStatus,CommonConstants.ZERO_INT)
.last(CommonConstants.LAST_ONE_SQL));
if (Common.isEmpty(employeeInfo)){
if (Common.isNotNull(employeeInfo)){
employeeInfo.setStatus(CommonConstants.ONE_INT);
baseMapper.updateById(employeeInfo);
}
......@@ -2120,11 +2119,13 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
}
if (Common.isNotNull(vo.getProjectNo())){
TEmployeeProject p = tEmployeeProjectService.getOne(Wrappers.<TEmployeeProject>query().lambda()
.eq(TEmployeeProject::getDeleteFlag,CommonConstants.ONE_STRING)
.eq(TEmployeeProject::getDeleteFlag,CommonConstants.ZERO_INT)
.eq(TEmployeeProject::getEmpIdcard,vo.getEmpIdCard())
.eq(TEmployeeProject::getDeptNo,vo.getProjectNo())
.eq(TEmployeeProject::getStatus,CommonConstants.ZERO_INT)
.last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(p)){
p.setStatus(CommonConstants.ONE_INT);
tEmployeeProjectService.updateById(p);
}
}
......@@ -2162,6 +2163,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
contract.setFileTown(emp.getFileTown());
}
}
contract.setAuditStatus(CommonConstants.ONE_INT);
contract.setApplyNo(contractServicer.getCode(false));
contractServicer.save(contract);
contractAdd.setId(contract.getId());
......
......@@ -181,7 +181,7 @@ public class ArchivesDaprUtil {
vo.setContractName(contractName);
R<Boolean> res = HttpDaprUtil.invokeMethodPost(
daprArchivesProperties.getAppUrl(),daprArchivesProperties.getAppId()
,"/temployeeinfo/inner/updateEmpInfo" , JSON.toJSONString(vo), UpdateEmpVo.class, SecurityConstants.FROM_IN);
,"/temployeeinfo/inner/updateEmpInfo" , JSON.toJSONString(vo), Boolean.class, SecurityConstants.FROM_IN);
if (Common.isEmpty(res)){
return R.failed("更新人员档案、项目档案、合同状态信息失败!");
}
......
......@@ -27,13 +27,13 @@ public class MybatisPlusMetaObjectHandler implements MetaObjectHandler {
log.debug("mybatis plus start insert fill ....");
LocalDateTime now = LocalDateTime.now();
fillValIfNullByName("createTime", now, metaObject, false);
fillValIfNullByName("updateTime", now, metaObject, false);
fillValIfNullByName("createTime", now, metaObject, true);
fillValIfNullByName("updateTime", now, metaObject, true);
YifuUser yifuUser = getYifuUser();
if (Common.isNotNull(yifuUser)){
fillValIfNullByName("createBy", yifuUser.getId(), metaObject, false);
fillValIfNullByName("updateBy", yifuUser.getId(), metaObject, false);
fillValIfNullByName("createName", yifuUser.getNickname(), metaObject, false);
fillValIfNullByName("createBy", yifuUser.getId(), metaObject, true);
fillValIfNullByName("updateBy", yifuUser.getId(), metaObject, true);
fillValIfNullByName("createName", yifuUser.getNickname(), metaObject, true);
}
}
......
......@@ -404,5 +404,19 @@ public class TProvidentFund extends BaseEntity {
@Schema(description = "电信编号" )
@ExcelProperty("电信编号" )
private String telecomNumber;
/**
* 基数上限(社保或公积金)
*/
@ExcelAttribute(name = "基数上限(社保或公积金)")
@Schema(description = "基数上限(社保或公积金)")
@ExcelProperty("基数上限(社保或公积金)")
private BigDecimal upperLimit;
/**
* 基数下限(社保或公积金)
*/
@ExcelAttribute(name = "基数下限(社保或公积金)")
@Schema(description = "基数下限(社保或公积金)")
@ExcelProperty("基数下限(社保或公积金)")
private BigDecimal lowerLimit;
}
......@@ -747,6 +747,20 @@ public class TSocialInfo extends BaseEntity {
@Schema(description = "大病办理状态:0待办理1办理成功2办理失败3已派减" )
@ExcelProperty("大病办理状态:0待办理1办理成功2办理失败3已派减" )
private String bigailmentHandle;
/**
* 基数上限(社保或公积金)
*/
@ExcelAttribute(name = "基数上限(社保或公积金)")
@Schema(description = "基数上限(社保或公积金)")
@ExcelProperty("基数上限(社保或公积金)")
private BigDecimal upperLimit;
/**
* 基数下限(社保或公积金)
*/
@ExcelAttribute(name = "基数下限(社保或公积金)")
@Schema(description = "基数下限(社保或公积金)")
@ExcelProperty("基数下限(社保或公积金)")
private BigDecimal lowerLimit;
}
......@@ -998,6 +998,8 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
fund.setOverpayNumber(fundSet.getOverpayNumber());
fund.setFundBaseSetId(fundSet.getId());
fund.setPayPolicy(fundSet.getPayPolicy());
fund.setLowerLimit(fundSet.getLowerLimit());
fund.setUpperLimit(fundSet.getUpperLimit());
if (Common.isNotNull(fundSet.getProvince())){
fund.setFundProvince(Integer.toString(fundSet.getProvince()));
}
......@@ -1140,6 +1142,8 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
social.setOverpayNumber(socialSet.getOverpayNumber());
social.setValueType(socialSet.getValueType());
social.setPayPolicy(socialSet.getPayPolicy());
social.setLowerLimit(socialSet.getLowerLimit());
social.setUpperLimit(socialSet.getUpperLimit());
// 比例初始化
social.setPersonalPensionPer(socialSet.getPersonalPersionPro());
social.setPersonalMedicalPer(socialSet.getPersonalMedicalPro());
......@@ -1380,6 +1384,7 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
project.setUnitId(setInfoVo.getCustomerId());
project.setUnitName(setInfoVo.getCustomerName());
project.setUnitNo(setInfoVo.getCustomerCode());
project.setDeptId(setInfoVo.getId());
}
projects.put(excel.getEmpIdcard()+CommonConstants.DOWN_LINE_STRING+excel.getSettleDomainCode(),project);
}
......@@ -1562,8 +1567,12 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
if (Common.isEmpty(empVo.getContractName()) && validContractInfo(errorMessageList,excel,empVo)){
return true;
}
excel.setEmpType(empVo.getEmpNatrue());
excel.setEmpMobile(empVo.getEmpPhone());
if (Common.isNotNull(empVo.getEmpNatrue())){
excel.setEmpType(empVo.getEmpNatrue());
}
if (Common.isNotNull(empVo.getEmpPhone())){
excel.setEmpMobile(empVo.getEmpPhone());
}
excel.setFileProvince(Common.isNotNullToStr(empVo.getFileProvince()));
excel.setFileCity(Common.isNotNullToStr(empVo.getFileCity()));
excel.setFileTown(Common.isNotNullToStr(empVo.getFileTown()));
......@@ -1601,15 +1610,19 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_CONTRACT_NOT_EMPTY)));
return true;
}
if (Common.isNotNull(excel.getSocialHousehold()) && (
Common.isEmpty(excel.getRecordBase())
|| Common.isEmpty(excel.getPensionStart())
|| Common.isEmpty(excel.getPaymentType())
// 非自定义的 基数 起缴日期不可空
if (Common.isNotNull(excel.getSocialHousehold())
&& !CommonConstants.ONE_STRING.equals(excel.getPaymentType())
&& (Common.isEmpty(excel.getRecordBase())
|| Common.isEmpty(excel.getPensionStart())
)) {
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_NOT_EMPTY)));
return true;
}
if (CommonConstants.ONE_STRING.equals(excel.getPaymentType()) && Common.isEmpty(excel.getPensionCardinal())
// 兼职工伤 的起缴日期不可为空
if (CommonConstants.ONE_STRING.equals(excel.getPaymentType())
&& Common.isEmpty(excel.getPensionCardinal())
&& Common.isEmpty(excel.getWorkInjuryCardinal())
){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_DIY_NOT_EMPTY)));
return true;
......@@ -1657,9 +1670,13 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
// 各个社保基数和日期空 默认养老日期和基数
initExcelBaseAndDate(excel);
// 校验各项起缴日期 查看是否符合社保补缴政策
if (validSocialStartDate(errorMessageList, excel, socialSet)) return true;
if (validSocialStartDate(errorMessageList, excel, socialSet)){
return true;
}
//校验各项基数
if (validSocialBaseInfo(errorMessageList, excel, empVo, socialSet)) return true;
if (validSocialBaseInfo(errorMessageList, excel, empVo, socialSet)){
return true;
}
}
// 校验公积金上下限和起缴日期
if (Common.isNotNull(excel.getProvidentHousehold())){
......@@ -1779,32 +1796,38 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
}
private boolean validSocialStartDate(List<ErrorMessage> errorMessageList, TDispatchImportVo excel, SysBaseSetInfo socialSet) {
if (ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getPensionStart()),
if (Common.isNotNull(excel.getPensionStart())
&& ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getPensionStart()),
socialSet.getCanOverpay(), socialSet.getOverpayNumber(), socialSet.getHaveThisMonth())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_START_IS_ERROR)));
return true;
}
if (ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getMedicalStart()),
if (Common.isNotNull(excel.getMedicalStart())
&& ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getMedicalStart()),
socialSet.getCanOverpay(), socialSet.getOverpayNumber(), socialSet.getHaveThisMonth())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_START_IS_ERROR)));
return true;
}
if (ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getUnemployStart()),
if (Common.isNotNull(excel.getUnemployStart())
&& ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getUnemployStart()),
socialSet.getCanOverpay(), socialSet.getOverpayNumber(), socialSet.getHaveThisMonth())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_START_IS_ERROR)));
return true;
}
if (ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getWorkInjuryStart()),
if (Common.isNotNull(excel.getWorkInjuryStart())
&& ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getWorkInjuryStart()),
socialSet.getCanOverpay(), socialSet.getOverpayNumber(), socialSet.getHaveThisMonth())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_START_IS_ERROR)));
return true;
}
if (ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getBirthStart()),
if (Common.isNotNull(excel.getBirthStart())
&& ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getBirthStart()),
socialSet.getCanOverpay(), socialSet.getOverpayNumber(), socialSet.getHaveThisMonth())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_START_IS_ERROR)));
return true;
}
if (ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getBigailmentStart()),
if (Common.isNotNull(excel.getBigailmentStart())
&& ServiceUtil.checkDispatchDate(LocalDateTimeUtils.convertDateToLDT(excel.getBigailmentStart()),
socialSet.getCanOverpay(), socialSet.getOverpayNumber(), socialSet.getHaveThisMonth())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), MsgUtils.getMessage(ErrorCodes.EMP_DISPATCH_SOCIAL_START_IS_ERROR)));
return true;
......@@ -2136,6 +2159,11 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
detailVo.setEmployee(res.getData());
}
}
detailVo.setAudits(auditInfoMapper.selectList(Wrappers.<TAuditInfo>query().lambda()
.eq(TAuditInfo::getEmpIdcard,dispatch.getEmpIdcard())
.and(obj->obj.eq(TAuditInfo::getDispatchInfoId,dispatch.getId())
.or().eq(TAuditInfo::getSocialId,dispatch.getId())
.or().eq(TAuditInfo::getProvidentId,dispatch.getId()))));
}
return detailVo;
}
......@@ -2218,8 +2246,6 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
// 待办理
sf.setSocialAddStatus(CommonConstants.ONE_STRING);
sf.setSocialStatus(CommonConstants.ONE_STRING);
// 要更新 人员档案 项目档案 合同的状态信息
archivesDaprUtil.updateEmpInfo(dis.getEmpIdcard(),dis.getSettleDomainCode(),dis.getContractName());
//派增审核不通过 需要处理预估数据
} else if (CommonConstants.ONE_INT == flag.intValue()) {
socialInfo.setDeleteFlag(CommonConstants.ONE_STRING);
......@@ -2333,6 +2359,14 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
dis.setStatus(CommonConstants.THREE_STRING);
auditInfo.setAuditStatus(CommonConstants.THREE_STRING);
}
// 派增审核通过 要更新 人员档案 项目档案 合同的状态信息
if (CommonConstants.dingleDigitStrArray[0].equals(dis.getType())
&& CommonConstants.ZERO_INT == flag.intValue()){
R<Boolean> res = archivesDaprUtil.updateEmpInfo(dis.getEmpIdcard(),dis.getSettleDomainCode(),dis.getContractName());
if (Common.isEmpty(res) || CommonConstants.SUCCESS != res.getCode()){
ServiceUtil.runTimeExceptionDiy("更新人员档案、项目档案、合同状态异常:" + (Common.isNotNull(res)?res.getMsg():CommonConstants.EMPTY_STRING));
}
}
//新增审核记录信息
auditInfoMapper.insert(auditInfo);
dis.setAuditUser(user.getId());
......@@ -2658,8 +2692,11 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
if (Common.isNotNull(auditInfo)) {
//派增判断
if (CommonConstants.ZERO_STRING.equals(dis.getType())) {
if ((CommonConstants.ONE_STRING.equals(dis.getSocialHandleStatus())
|| CommonConstants.TWO_STRING.equals(dis.getSocialHandleStatus()))
if (Common.isNotNull(dis.getSocialHandleStatus())
&& Common.isNotNull(dis.getFundHandleStatus())
&& (CommonConstants.ONE_STRING.equals(dis.getSocialHandleStatus())
|| CommonConstants.TWO_STRING.equals(dis.getSocialHandleStatus())
|| CommonConstants.THREE_STRING.equals(dis.getSocialHandleStatus()))
&& ((CommonConstants.ONE_STRING.equals(dis.getFundHandleStatus())
|| CommonConstants.TWO_STRING.equals(dis.getFundHandleStatus())))) {
//办理成功
......@@ -2672,7 +2709,8 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
dis.setStatus(CommonConstants.FOUR_STRING);
}
if ((CommonConstants.ONE_STRING.equals(dis.getSocialHandleStatus())
|| CommonConstants.TWO_STRING.equals(dis.getSocialHandleStatus()))
|| CommonConstants.TWO_STRING.equals(dis.getSocialHandleStatus())
|| CommonConstants.THREE_STRING.equals(dis.getSocialHandleStatus()))
&& Common.isEmpty(dis.getFundHandleStatus())) {
//办理成功
dis.setStatus(CommonConstants.FOUR_STRING);
......
......@@ -177,7 +177,6 @@ public class ServiceUtil {
}else if (CommonConstants.ONE_STRING.equals(canOverpay)){
temp = socialStartDate;
}
boolean falg= isaBoolean(temp, now);
return (null != temp && (temp.getYear() < now.getYear() || isaBoolean(temp, now)));
}
private static boolean isaBoolean(LocalDateTime temp, LocalDateTime now) {
......
......@@ -74,6 +74,8 @@
<result property="createName" column="CREATE_NAME"/>
<result property="updateTime" column="UPDATE_TIME"/>
<result property="payPolicy" column="PAY_POLICY"/>
<result property="lowerLimit" column="LOWER_LIMIT"/>
<result property="upperLimit" column="UPPER_LIMIT"/>
</resultMap>
<sql id="Base_Column_List">
a.ID,
......@@ -125,7 +127,9 @@
a.UPDATE_BY,
a.CREATE_NAME,
a.UPDATE_TIME,
a.PAY_POLICY
a.PAY_POLICY,
a.LOWER_LIMIT,
a.UPPER_LIMIT
</sql>
<sql id="tProvidentFund_where">
<if test="tProvidentFund != null">
......
......@@ -121,6 +121,8 @@
<result property="createName" column="CREATE_NAME"/>
<result property="updateTime" column="UPDATE_TIME"/>
<result property="payPolicy" column="PAY_POLICY"/>
<result property="lowerLimit" column="LOWER_LIMIT"/>
<result property="upperLimit" column="UPPER_LIMIT"/>
</resultMap>
<sql id="Base_Column_List">
a.ID,
......@@ -221,7 +223,9 @@
a.UPDATE_BY,
a.CREATE_NAME,
a.UPDATE_TIME,
a.PAY_POLICY
a.PAY_POLICY,
a.LOWER_LIMIT,
a.UPPER_LIMIT
</sql>
<sql id="tSocialInfo_where">
<if test="tSocialInfo != null">
......
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