Commit c962e835 authored by 李灿灿's avatar 李灿灿

Merge branch 'develop' into feature-licancan

parents 85948d29 736bffde
......@@ -30,8 +30,15 @@ public class DispatchEmpVo implements Serializable {
*/
@Schema(description = "主键")
private String id;
@ExcelProperty(value = "员工主码")
private String empCode;
/**
* 员工项目编码
*/
@ExcelProperty(value = "员工项目编码")
private String empNo;
@Schema(description = "员工类型")
@ExcelAttribute(name = "员工类型", isDataId = true,dataType = ExcelAttributeConstants.EMP_NATRUE)
......@@ -191,4 +198,9 @@ public class DispatchEmpVo implements Serializable {
@Schema(description = "业务细分(存lable)", name = "contractName")
private String contractSubName;
/**
* 项目状态(0正常;1已减项)
*/
@Schema(description ="项目状态(0正常;1已减项)")
private Integer projectStatus;
}
......@@ -31,10 +31,10 @@ public class EmpProjectDispatchVo implements Serializable {
@Size(max = 32, message = "人员档案主表id不可超过32位")
private String empId;
/**
* 员工
* 员工
*/
@Schema(description ="员工码")
@Size(max = 20, message = "员工码不可超过20位")
@Schema(description ="员工码")
@Size(max = 20, message = "员工码不可超过20位")
private String empCode;
/**
* 员工类型(字典值,0外包1派遣2代理)
......@@ -92,9 +92,9 @@ public class EmpProjectDispatchVo implements Serializable {
private String post;
/**
* 员工编码
* 员工项目编码
*/
@Schema(description ="员工编码")
@Size(max = 20, message = "员工编码不可超过20位")
@Schema(description ="员工项目编码")
@Size(max = 20, message = "员工项目编码不可超过20位")
private String empNo;
}
......@@ -58,7 +58,7 @@ public class ProjectSetInfoVo implements Serializable {
* 商险结算类型:0预估 1 实缴
*/
@Schema(description = "商险结算类型")
private String insuranceSettleType;
private String insuranceSettleType = CommonConstants.ONE_STRING;
}
......@@ -19,19 +19,15 @@ package com.yifu.cloud.plus.v1.yifu.archives.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysArea;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmpFamily;
import com.yifu.cloud.plus.v1.yifu.archives.service.TEmpFamilyService;
import com.yifu.cloud.plus.v1.yifu.archives.vo.DispatchCheckVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.FamilySearchVO;
import com.yifu.cloud.plus.v1.yifu.archives.vo.ProjectSetInfoVo;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.util.Common;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.common.dapr.config.DaprCheckProperties;
import com.yifu.cloud.plus.v1.yifu.common.dapr.util.ArchivesDaprUtil;
import com.yifu.cloud.plus.v1.yifu.common.dapr.util.UpmsDaprUtils;
import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
......@@ -44,10 +40,8 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
......
......@@ -2110,6 +2110,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
}
contractMapper.insert(contract);
contractAdd.setId(contract.getId());
contractAdd.setEmpNo(contract.getEmpNo());
contractsMap.put(contractAdd.getEmpIdcard() + CommonConstants.DOWN_LINE_STRING + contractAdd.getDeptNo(), contractAdd);
}
} catch (Exception e) {
......@@ -2131,8 +2132,10 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
employeeInfo = new TEmployeeInfo();
BeanUtil.copyProperties(empAdd, employeeInfo);
employeeInfo.setEmpCode(getCode());
employeeInfo.setStatus(CommonConstants.ZERO_INT);
baseMapper.insert(employeeInfo);
empAdd.setId(employeeInfo.getId());
empAdd.setEmpCode(employeeInfo.getEmpCode());
empAddsMap.put(empAdd.getEmpIdcard(), empAdd);
}
} catch (Exception e) {
......
......@@ -142,6 +142,8 @@
<result property="fileTown" column="FILE_TOWN"/>
<result property="hignEducation" column="HIGN_EDUCATION"/>
<result property="fileStatus" column="FILE_STATUS"/>
<result property="projectStatus" column="PROJECT_STATUS"/>
<result property="contractName" column="CONTRACT_NAME"/>
<result property="contractType" column="CONTRACT_TYPE"/>
......@@ -157,6 +159,8 @@
<result property="deptName" column="DEPT_NAME"/>
<result property="deptNo" column="DEPT_NO"/>
<result property="post" column="POST"/>
<result property="empNo" column="EMP_NO"/>
</resultMap>
<sql id="baseParam">
a
......@@ -673,7 +677,7 @@
b.CONTRACT_START,b.CONTRACT_END,b.CONTRACT_TERM,b.CONTRACT_SUB_NAME,b.CONTRACT_ID,
c.UNIT_NAME,
c.UNIT_NO,c.DEPT_ID,c.DEPT_NAME,c.DEPT_NO,c.POST
c.UNIT_NO,c.DEPT_ID,c.DEPT_NAME,c.DEPT_NO,c.POST,c.EMP_NO,c.PROJECT_STATUS
from (
select e.ID,e.EMP_CODE,e.EMP_NATRUE,e.EMP_NAME,e.EMP_IDCARD,e.EMP_NATIONAL,e.EMP_PHONE,e.ID_PROVINCE,e.ID_CITY,
e.ID_TOWN,e.EMP_REGIS_TYPE,e.FILE_PROVINCE,e.FILE_CITY,e.FILE_TOWN,e.HIGN_EDUCATION,e.FILE_STATUS
......@@ -689,7 +693,7 @@
</if>
) a
left join (
select p.UNIT_NAME,p.UNIT_NO,p.DEPT_ID,p.DEPT_NAME,p.DEPT_NO,p.POST,p.EMP_ID
select p.UNIT_NAME,p.UNIT_NO,p.DEPT_ID,p.DEPT_NAME,p.DEPT_NO,p.POST,p.EMP_ID,p.EMP_NO,P.PROJECT_STATUS
from t_employee_project p
where 1=1
<if test="checkVo != null">
......
......@@ -290,7 +290,7 @@ public interface CommonConstants {
public static final String ZIP_TYPE = "zip";
int BATCH_COUNT = 100;
String IMPORT_DATA_ANALYSIS_ERROR = "数据导入解析异常,请检查表数据格式";
String IMPORT_DATA_ANALYSIS_ERROR = "数据导入解析异常,请检查表数据格式(1.日期格式:yyyy-MM-dd,2.比例为整数且不含%)";
String CREATE_TIME = "CREATE_TIME";
String ID = "ID";
String PARAM_IS_NOT_ERROR = "传参异常,请检查参数";
......
......@@ -337,7 +337,7 @@ public interface ErrorCodes {
String EMP_DISPATCH_SOCIAL_NOT_EMPTY = "emp.dispatch.social.not.empty";
/**
* 派单信息不可为空
* 派单公积金信息不可为空
*/
String EMP_DISPATCH_FUND_NOT_EMPTY = "emp.dispatch.fund.not.empty";
......@@ -424,4 +424,16 @@ public interface ErrorCodes {
* 派增异常: 自定义缴纳养老基数不可为空
*/
String EMP_DISPATCH_SOCIAL_DIY_NOT_EMPTY = "emp.dispatch.social.diy.not.empty";
/**
* 派增异常: 对应项目编码的项目档案已减项,请去项目档案处复项
*/
String EMP_DISPATCH_EMP_PROJECT_NOT_USED = "emp.dispatch.emp.project.not.used";
/**
* 派增异常: 对应身份证的人员档案已减档
*/
String EMP_DISPATCH_EMP_NOT_USED = "emp.dispatch.emp.not.used";
/**
* 派增异常: 社保派单基数不可小于最低基数且不可大于最高基数
*/
String EMP_DISPATCH_SOCIAL_LIMIT_ERROR = "emp.dispatch.social.limit.error";
}
......@@ -312,7 +312,7 @@ public class ExcelUtil <T> implements Serializable {
}
if (Common.isNotNull(tempStr)){
c = tempStr;
mapArea.put(tempStr,field);
mapArea.put(tempStr+CommonConstants.DOWN_LINE_STRING+attr.name(),field);
}
// 取得类型,并根据对象类型设置值.
fieldType = field.getType();
......@@ -377,7 +377,7 @@ public class ExcelUtil <T> implements Serializable {
}
if (Common.isNotNull(mapArea)){
for (Map.Entry<String, Field> entry: mapArea.entrySet()){
entry.getValue().set(data,entry.getKey());
entry.getValue().set(data,entry.getKey().substring(0,entry.getKey().indexOf(CommonConstants.DOWN_LINE_STRING)));
}
}
}catch (Exception e){
......
......@@ -153,7 +153,13 @@ emp.dispatch.reduce.exists=\u6D3E\u51CF\u5F02\u5E38\uFF1A \u672C\u6B21\u6D3E\u58
socialinfo.list.num.large=\u5F53\u524D\u793E\u4FDD\u5BFC\u5165\u961F\u5217\u4E0D\u8DB3\u6216\u8005\u6570\u636E\u91CF\u8FC7\u5927\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\uFF01
emp.dispatch.social.diy.not.empty=\u6D3E\u589E\u5F02\u5E38\uFF1A \u81EA\u5B9A\u4E49\u7F34\u7EB3\u517B\u8001\u57FA\u6570\u4E0D\u53EF\u4E3A\u7A7A
emp.dispatch.emp.project.not.used=\u6D3E\u589E\u5F02\u5E38\uFF1A \u5BF9\u5E94\u9879\u76EE\u7F16\u7801\u7684\u9879\u76EE\u6863\u6848\u5DF2\u51CF\u9879\uFF0C\u8BF7\u53BB\u9879\u76EE\u6863\u6848\u5904\u590D\u9879
emp.dispatch.emp.not.used=\u6D3E\u589E\u5F02\u5E38\uFF1A \u5BF9\u5E94\u8EAB\u4EFD\u8BC1\u7684\u4EBA\u5458\u6863\u6848\u5DF2\u51CF\u6863
emp.dispatch.social.limit.error=\u6D3E\u589E\u5F02\u5E38\uFF1A \u793E\u4FDD\u6D3E\u5355\u57FA\u6570\u4E0D\u53EF\u5C0F\u4E8E\u6700\u4F4E\u57FA\u6570\u4E14\u4E0D\u53EF\u5927\u4E8E\u6700\u9AD8\u57FA\u6570
......
......@@ -171,5 +171,9 @@ public class InsuranceRefundListVo implements Serializable {
@Schema(description = "减员状态 1待减员 2减员中3减员退回")
private Integer reduceHandleStatus;
/**
* 购买月数
*/
@Schema(description = "购买月数")
private Long buyMonth;
}
......@@ -2121,6 +2121,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (null != setInfoByCodes && setInfoByCodes.getCode() == CommonConstants.SUCCESS && Common.isNotNull(setInfoByCodes.getData())) {
Map<String, ProjectSetInfoVo> data = setInfoByCodes.getData().getProjectSetInfoVoMap();
for (InsuredListVo record : insuredList) {
//购买月数
record.setBuyMonth(LocalDateUtil.betweenMonth(record.getPolicyStart().toString(),record.getPolicyEnd().toString()));
ProjectSetInfoVo jsonObject = data.get(record.getDeptNo());
if (null != jsonObject){
record.setProjectName(Optional.ofNullable(jsonObject.getDepartName()).orElse(""));
......@@ -2149,6 +2151,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (null != setInfoByCodes && setInfoByCodes.getCode() == CommonConstants.SUCCESS && Common.isNotNull(setInfoByCodes.getData())) {
Map<String, ProjectSetInfoVo> data = setInfoByCodes.getData().getProjectSetInfoVoMap();
for (InsuranceRefundListVo record : insuranceRefundPageList.getRecords()) {
//购买月数
record.setBuyMonth(LocalDateUtil.betweenMonth(record.getPolicyStart().toString(),record.getPolicyEnd().toString()));
ProjectSetInfoVo jsonObject = data.get(record.getDeptNo());
if (null != jsonObject){
record.setProjectName(Optional.ofNullable(jsonObject.getDepartName()).orElse(""));
......@@ -2176,6 +2180,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (null != setInfoByCodes && setInfoByCodes.getCode() == CommonConstants.SUCCESS && Common.isNotNull(setInfoByCodes.getData())) {
Map<String, ProjectSetInfoVo> data = setInfoByCodes.getData().getProjectSetInfoVoMap();
for (InsuranceRefundListVo record : insuranceRefundList) {
//购买月数
record.setBuyMonth(LocalDateUtil.betweenMonth(record.getPolicyStart().toString(),record.getPolicyEnd().toString()));
ProjectSetInfoVo jsonObject = data.get(record.getDeptNo());
if (null != jsonObject){
record.setProjectName(Optional.ofNullable(jsonObject.getDepartName()).orElse(""));
......@@ -2483,8 +2489,14 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
}
Integer reduceHandleStatus = insuranceDetail.getReduceHandleStatus();
Integer buyHandleStatus = insuranceDetail.getBuyHandleStatus();
if(!(CommonConstants.THREE_INT == buyHandleStatus && (null == reduceHandleStatus ||CommonConstants.THREE_INT == reduceHandleStatus))){
return R.failed("当前保单信息非已投保且未减员状态,不能进行出险操作");
if(CommonConstants.ONE_INT == buyHandleStatus || CommonConstants.TWO_INT == buyHandleStatus ||CommonConstants.FOUR_INT == buyHandleStatus){
return R.failed("当前员工未投保成功,不能进行出险操作");
}
if(CommonConstants.FIVE_INT == buyHandleStatus){
return R.failed("当前员工已减员,不能进行出险操作");
}
if(null != reduceHandleStatus){
return R.failed("当前员工在减员中,不能进行出险操作");
}
Integer isEffect = insuranceDetail.getIsEffect();
if(CommonConstants.ZERO_INT != isEffect){
......
......@@ -38,7 +38,7 @@ public class DispatchConstants {
/**
* 社保派单
* '缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳) PAYMENT_TYPE
* '缴纳类型(0最低缴纳、1自定义、2最高缴纳) PAYMENT_TYPE
*/
enum PaymentType {
LATEST("0", "最低"),
......
......@@ -121,7 +121,8 @@ public class TPreDispatchInfo extends BaseEntity {
* 入职日期
*/
@Schema(description ="入职日期")
private Date entryDate;
@Size(max = 20, message = "入职日期不可超过20位")
private String entryDate;
/**
* 正式工资
......@@ -345,6 +346,7 @@ public class TPreDispatchInfo extends BaseEntity {
* 派单客服
*/
@Schema(description ="派单客服")
@Size(max = 20, message = "派单客服不可超过20位")
private String customerService;
/**
......@@ -357,6 +359,7 @@ public class TPreDispatchInfo extends BaseEntity {
* 唯一号
*/
@Schema(description ="唯一号")
@Size(max = 20, message = "唯一号不可超过20位")
private String uniqueNumber;
/**
......@@ -369,6 +372,7 @@ public class TPreDispatchInfo extends BaseEntity {
* 服务类别
*/
@Schema(description ="服务类别")
@Size(max = 20, message = "服务类别不可超过20位")
private String serviceType;
/**
......
......@@ -298,11 +298,11 @@ public class TSocialFundHistory extends BaseEntity {
@ExcelProperty("个人公积金金额" )
private BigDecimal personalFundMoney;
/**
* 缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)
* 缴纳类型(0最低缴纳、1自定义、2最高缴纳)
*/
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@Schema(description = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
@Schema(description = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
private Integer paymentType;
/**
* 是否是社保:0否1是
......
......@@ -610,10 +610,10 @@ public class TSocialFundInfo extends BaseEntity {
/**
* 缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)
*/
@Length(max = 1, message = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳) 不能超过1个字符" )
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)", maxLength = 1)
@Schema(description = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@Length(max = 1, message = "缴纳类型(0最低缴纳、1自定义、2最高缴纳) 不能超过1个字符" )
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)", maxLength = 1)
@Schema(description = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
private String paymentType;
/**
* 基数上限(社保或公积金)
......
......@@ -625,12 +625,12 @@ public class TSocialInfo extends BaseEntity {
@ExcelProperty("电信编号" )
private String telecomNumber;
/**
* 缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)
* 缴纳类型(0最低缴纳、1自定义、2最高缴纳)
*/
@Length(max = 1, message = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳) 不能超过1个字符" )
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)", maxLength = 1)
@Schema(description = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@Length(max = 1, message = "缴纳类型(0最低缴纳、1自定义、2最高缴纳) 不能超过1个字符" )
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)", maxLength = 1)
@Schema(description = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
private String paymentType;
/**
* 备案基数
......
......@@ -203,10 +203,10 @@ public class SocialHandleExportVo implements Serializable {
private String recordBase;
/**
* 缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)
* 缴纳类型(0最低缴纳、1自定义、2最高缴纳)
*/
@ExcelAttribute(name = "缴纳类型",isDataId = true,readConverterExp = "0=最低缴纳,1=自定义缴纳,2=最高缴纳",needExport = true)
@Schema(description = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)")
@ExcelAttribute(name = "缴纳类型",isDataId = true,readConverterExp = "0=最低缴纳,1=自定义,2=最高缴纳",needExport = true)
@Schema(description = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)")
@ExcelProperty("缴纳类型" )
private Integer paymentType;
/**
......
......@@ -130,7 +130,7 @@ public class TDispatchImportVo extends RowIndex implements Serializable {
/**
* 档案-县
*/
@ExcelAttribute(name = "档案-县" ,isArea = true,parentField = "fileCity", isNotEmpty = true)
@ExcelAttribute(name = "档案-县" ,isArea = true,parentField = "fileCity")
@Schema(description = "档案-县" )
@ExcelProperty("档案-县" )
private String fileTown;
......@@ -239,9 +239,9 @@ public class TDispatchImportVo extends RowIndex implements Serializable {
/**
* 学历名称
*/
@ExcelAttribute(name = "学历",isDataId = true,dataType = ExcelAttributeConstants.EDUCATION)
@ExcelAttribute(name = "学历")
@NotNull(message = "学历不可为空")
@Schema(description = "学历:无档案的时候 新增档案时同步新增学历" )
@Schema(description = "学历:派增只做记录" )
@ExcelProperty(value ="学历")
private String educationName;
......@@ -306,11 +306,11 @@ public class TDispatchImportVo extends RowIndex implements Serializable {
@ExcelProperty("大病起缴日期" )
private Date bigailmentStart;
/**
* 缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)
* 缴纳类型(0最低缴纳、1自定义、2最高缴纳)
*/
@Length(max = 1, message = "缴纳类型 不能超过1 个字符" )
@ExcelAttribute(name = "缴纳类型", isDataId = true, readConverterExp = "0=最低缴纳,1=自定义缴纳,2=最高缴纳")
@Schema(description = "缴纳类型:(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@ExcelAttribute(name = "缴纳类型", isDataId = true, readConverterExp = "0=最低缴纳,1=自定义,2=最高缴纳")
@Schema(description = "缴纳类型:(0最低缴纳、1自定义、2最高缴纳)" )
@ExcelProperty("缴纳类型" )
private String paymentType;
......
......@@ -75,7 +75,7 @@ public class TPreDispatchUpdateVo extends TPreDispatchInfo {
* 入职日期
*/
@ExcelAttribute(name = "入职日期")
private Date entryDate;
private String entryDate;
/**
* 正式工资
*/
......
......@@ -303,8 +303,8 @@ public class TSocialFundInfoExportVo extends RowIndex implements Serializable {
@ExcelProperty("大病起缴日期")
private Date bigailmentStart;
@ExcelAttribute(name = "缴纳类型", readConverterExp = "0=最低缴纳,1=自定义缴纳,2=最高缴纳")
@Schema(description = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)")
@ExcelAttribute(name = "缴纳类型", readConverterExp = "0=最低缴纳,1=自定义,2=最高缴纳")
@Schema(description = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)")
@ExcelProperty("缴纳类型")
private String paymentType;
......
......@@ -301,8 +301,8 @@ public class TSocialFundInfoVo extends RowIndex implements Serializable {
@ExcelProperty("大病起缴日期")
private Date bigailmentStart;
@ExcelAttribute(name = "缴纳类型", readConverterExp = "0=最低缴纳,1=自定义缴纳,2=最高缴纳")
@Schema(description = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)")
@ExcelAttribute(name = "缴纳类型", readConverterExp = "0=最低缴纳,1=自定义,2=最高缴纳")
@Schema(description = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)")
@ExcelProperty("缴纳类型")
private String paymentType;
......
......@@ -622,10 +622,10 @@ public class TSocialInfoVo extends RowIndex implements Serializable {
/**
* 缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)
*/
@Length(max = 1, message = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳) 不能超过1 个字符" )
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)", maxLength = 1)
@Schema(description = "缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义缴纳、2最高缴纳)" )
@Length(max = 1, message = "缴纳类型(0最低缴纳、1自定义、2最高缴纳) 不能超过1 个字符" )
@ExcelAttribute(name = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)", maxLength = 1)
@Schema(description = "缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
@ExcelProperty("缴纳类型(0最低缴纳、1自定义、2最高缴纳)" )
private String paymentType;
/**
* 备案基数
......
......@@ -45,5 +45,6 @@ public class PreDispatchConstants {
public static final String NO_SOCIAL_FUND_ADDRESS_REDUCE = "派减:养老城市和公积金城市不可同时为空,请确认表中有‘养老城市’和‘公积金城市’数据列及数据!";
public static final String TEL_NOT_EMPTY = "联系电话1不可为空!";
public static final String TEL_INVALID = "联系电话1无效!";
public static final String TEL_INVALID2 = "联系电话2无效!";
public static final String GET_AREA_INFO = "获取区域数据失败!";
}
......@@ -91,8 +91,8 @@ public class TAgentConfigController {
@SysLog("新增预估临时政策配置表" )
@PostMapping
@PreAuthorize("@pms.hasPermission('social_tagentconfig_add')" )
public R<Boolean> save(@RequestBody TAgentConfig tAgentConfig) {
return R.ok(tAgentConfigService.save(tAgentConfig));
public R save(@RequestBody TAgentConfig tAgentConfig) {
return tAgentConfigService.saveInfo(tAgentConfig);
}
/**
......
......@@ -28,24 +28,21 @@ import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog;
import com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils;
import com.yifu.cloud.plus.v1.yifu.social.entity.TDispatchInfo;
import com.yifu.cloud.plus.v1.yifu.social.service.TDispatchInfoService;
import com.yifu.cloud.plus.v1.yifu.social.vo.*;
import com.yifu.cloud.plus.v1.yifu.social.vo.DispatchDetailVo;
import com.yifu.cloud.plus.v1.yifu.social.vo.FundSupplementaryExportVo;
import com.yifu.cloud.plus.v1.yifu.social.vo.SocialHandleSearchVo;
import com.yifu.cloud.plus.v1.yifu.social.vo.TDispatchInfoSearchVo;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
import lombok.extern.log4j.Log4j2;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;
/**
......@@ -73,6 +70,7 @@ public class TDispatchInfoController {
@Operation(description = "简单分页查询")
@GetMapping("/page")
public R<IPage<TDispatchInfo>> getTDispatchInfoPage(Page<TDispatchInfo> page, TDispatchInfoSearchVo tDispatchInfo) {
tDispatchInfo.setDeleteFlag(CommonConstants.ZERO_STRING);
return new R<>(tDispatchInfoService.getTDispatchInfoPage(page,tDispatchInfo));
}
......@@ -85,6 +83,7 @@ public class TDispatchInfoController {
@PostMapping("/noPage" )
//@PreAuthorize("@pms.hasPermission('demo_tdispatchinfo_get')" )
public R<List<TDispatchInfo>> getTDispatchInfoNoPage(@RequestBody TDispatchInfoSearchVo tDispatchInfo) {
tDispatchInfo.setDeleteFlag(CommonConstants.ZERO_STRING);
return R.ok(tDispatchInfoService.noPageDiy(tDispatchInfo));
}
/**
......@@ -101,6 +100,7 @@ public class TDispatchInfoController {
return R.failed(CommonConstants.USER_FAIL);
}
tDispatchInfo.setCreateBy(user.getId());
tDispatchInfo.setDeleteFlag(CommonConstants.ZERO_STRING);
return new R<>(tDispatchInfoService.getTDispatchInfoPage(page,tDispatchInfo));
}
......@@ -114,6 +114,7 @@ public class TDispatchInfoController {
@GetMapping("/pageAudit")
public R<IPage<TDispatchInfo>> getTDispatchAuditPage(Page<TDispatchInfo> page, TDispatchInfoSearchVo tDispatchInfo) {
tDispatchInfo.setStatus(CommonConstants.ZERO_STRING);
tDispatchInfo.setDeleteFlag(CommonConstants.ZERO_STRING);
return new R<>(tDispatchInfoService.getTDispatchInfoPage(page,tDispatchInfo));
}
......@@ -130,6 +131,7 @@ public class TDispatchInfoController {
List<String> settleDomains = null;
// 获取自定义sql TODO
String sql = CommonConstants.EMPTY_STRING;
tDispatchInfo.setDeleteFlag(CommonConstants.ZERO_STRING);
return new R<>(tDispatchInfoService.getTDispatchSocialHandlePage(page,tDispatchInfo,settleDomains,sql));
}
......@@ -146,6 +148,7 @@ public class TDispatchInfoController {
List<String> settleDomains = null;
// 获取自定义sql TODO
String sql = CommonConstants.EMPTY_STRING;
tDispatchInfo.setDeleteFlag(CommonConstants.ZERO_STRING);
return new R<>(tDispatchInfoService.getTDispatchFundHandlePage(page,tDispatchInfo,settleDomains,sql));
}
/**
......@@ -262,9 +265,9 @@ public class TDispatchInfoController {
* @Param
* @return
**/
@Operation(description = "派单申请批量审核,传参派单ID hasPermission('wxhr:tdispatchinfo_addApplyAudit')")
@Operation(description = "派单申请批量审核,传参派单ID hasPermission('wxhr:tdispatchinfo_addApplyAudit') auditStatus:1审核通过 2审核不通过")
@PostMapping("/addApplyAudit")
@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_addApplyAudit')")
//@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_addApplyAudit')")
public R<List<ErrorMessage>> addApplyAudit(@RequestParam(name = "ids", required = true) String ids,
@RequestParam(name = "auditStatus", required = true) String auditStatus,
@RequestParam(name = "auditRemark", required = false) String auditRemark) {
......@@ -283,9 +286,9 @@ public class TDispatchInfoController {
* @Author fxj
* @Date 2019-09-27
**/
@Operation(description = "派单批量办理,传参派单ID hasPermission('wxhr:tdispatchinfo_addApplyHandle')")
@Operation(description = "派单批量办理,传参派单ID hasPermission('wxhr:tdispatchinfo_addApplyHandle') handleStatus 1 办理成功 2 办理失败")
@PostMapping("/addApplyHandle")
@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_addApplyHandle')")
//@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_addApplyHandle')")
public R<List<ErrorMessage>> addApplyHandle(@RequestParam(name = "ids", required = true) String ids,
@RequestParam(name = "typeSub", required = true) String typeSub,
@RequestParam(name = "auditStatus", required = true) String handleStatus,
......
......@@ -96,6 +96,7 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> {
IPage<TDispatchInfo> getTDispatchSocialHandlePage(Page<TDispatchInfo> page,
@Param("tDispatchInfo") SocialHandleSearchVo tDispatchInfo,
@Param("settleDomainIds")List<String> settleDomains,
@Param("idsStr") List<String> idsStr,
@Param("sql")String sql);
/**
* 公积金办理页面查询
......@@ -109,6 +110,7 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> {
IPage<TDispatchInfo> getTDispatchFundHandlePage(Page<TDispatchInfo> page,
@Param("tDispatchInfo")SocialHandleSearchVo tDispatchInfo,
@Param("settleDomainIds")List<String> settleDomains,
@Param("idsStr") List<String> idsStr,
@Param("sql")String sql);
/**
* @Author fxj
......
......@@ -44,4 +44,11 @@ public interface TAgentConfigService extends IService<TAgentConfig> {
* @return
*/
R updateFlagById(String id);
/**
* 修改开启关闭状态
* @param tAgentConfig 预估临时政策配置表id
* @return
*/
R saveInfo(TAgentConfig tAgentConfig);
}
......@@ -26,7 +26,6 @@ import com.yifu.cloud.plus.v1.yifu.social.entity.TForecastLibrary;
import com.yifu.cloud.plus.v1.yifu.social.entity.TSocialFundInfo;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 预估费用
......@@ -46,8 +45,8 @@ public interface TForecastLibraryService extends IService<TForecastLibrary> {
void listExport(HttpServletResponse response, TForecastLibrary searchVo);
/**
* @param payMonths 缴纳月
* @param empIdCard 身份证
* @param payMonths 缴纳月
* @param empIdCard 身份证
* @param settleDomainIds 项目id
* @Description: 按缴纳月重新生成
* @Author: hgw
......@@ -74,6 +73,15 @@ public interface TForecastLibraryService extends IService<TForecastLibrary> {
**/
R<String> updateForecastLibaryByDispatch(TSocialFundInfo socialFundInfo);
/**
* @param socialFundInfo
* @Description: 派单减少变更预估库-派减
* @Author: hgw
* @Date: 2022/7/26 19:02
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
R<String> updateForecastLibaryByDispatchReduce(TSocialFundInfo socialFundInfo);
/**
* @Description: 基数变更,同步社保公积金查询、预估库 TODO-加定时器
* @Author: hgw
......
......@@ -16,7 +16,10 @@
*/
package com.yifu.cloud.plus.v1.yifu.social.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
......@@ -69,4 +72,22 @@ public class TAgentConfigServiceImpl extends ServiceImpl<TAgentConfigMapper, TAg
return R.failed("更新失败!");
}
}
@Override
public R saveInfo(TAgentConfig tAgentConfig) {
LambdaQueryWrapper<TAgentConfig> wrapper = Wrappers.lambdaQuery();
wrapper.eq(TAgentConfig::getYear, tAgentConfig.getYear());
wrapper.eq(TAgentConfig::getTarget, tAgentConfig.getTarget());
if (Common.isNotNull(tAgentConfig.getCity())){
wrapper.eq(TAgentConfig::getCity,tAgentConfig.getCity());
} else {
wrapper.eq(TAgentConfig::getProvince,tAgentConfig.getProvince());
}
wrapper.last(CommonConstants.LAST_ONE_SQL);
TAgentConfig count = baseMapper.selectOne(wrapper);
if (Common.isNotNull(count)) {
return R.failed("同一城市,年度的政策不能重复新增");
}
return R.ok();
}
}
......@@ -16,6 +16,7 @@
*/
package com.yifu.cloud.plus.v1.yifu.social.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
......@@ -1073,7 +1074,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
* @param library 预估库
* @param socialInfo 社保
* @param sysBaseSetInfo 基数配置
* @param paymentType 0最低缴纳、1自定义缴纳、2最高缴纳
* @param paymentType 0最低缴纳、1自定义、2最高缴纳
* @Description: 塞大病金额
* @Author: hgw
* @Date: 2020/11/25 15:51
......@@ -1140,7 +1141,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
private void changeSocialInfoByBase(TSocialFundInfo social, SysBaseSetInfo socialSet) {
if (Common.isNotNull(socialSet)) {
social.setCanOverpay(socialSet.getCanOverpay());
social.setSocialHousehold(socialSet.getId());
social.setSocialHousehold(socialSet.getDepartId());
social.setCollectMoth(socialSet.getCollectMoth());
social.setCollectType(socialSet.getCollectType());
social.setHaveThisMonth(socialSet.getHaveThisMonth());
......@@ -1446,6 +1447,88 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
return this.updateForecastLibaryCore(socialFundInfo, null);
}
/**
* @Description: 派单减少变更预估库-派减
* @Author: hgw
* @Date: 2022/7/28 17:11
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Override
public R<String> updateForecastLibaryByDispatchReduce(TSocialFundInfo socialFundInfo) {
String empIdCard = socialFundInfo.getEmpIdcard();
Date socialReduceDate = socialFundInfo.getSocialReduceDate();
Date fundReduceDate = socialFundInfo.getFundReduceDate();
if (socialReduceDate == null && fundReduceDate == null) {
return R.failed("社保、公积金减少日期不能都为空!");
}
// 查询已经生成的预估数据
List<TForecastLibrary> socialLibraryList = null;
List<TForecastLibrary> fundLibraryList = null;
if (Common.isNotNull(empIdCard)) {
BigDecimal zero = BigDecimal.ZERO;
if (socialReduceDate != null) {
socialLibraryList = baseMapper.selectList(Wrappers.<TForecastLibrary>query().lambda()
.eq(TForecastLibrary::getEmpIdcard, empIdCard)
.eq(TForecastLibrary::getDataType, CommonConstants.ZERO_INT));
if (Common.isNotNull(socialLibraryList)) {
for (TForecastLibrary library : socialLibraryList) {
// 存在社保派减且处于派减期间内,未被预估结算,工资结算引用则清空相关数据
if (Common.isNotNull(library.getSocialPayMonth()) && DateUtil.formatDateInt(socialReduceDate) < Integer.parseInt(library.getSocialPayMonth())) {
this.calculateType(zero, library);
}
}
}
}
if (socialReduceDate != null) {
fundLibraryList = baseMapper.selectList(Wrappers.<TForecastLibrary>query().lambda()
.eq(TForecastLibrary::getEmpIdcard, empIdCard)
.eq(TForecastLibrary::getDataType, CommonConstants.ONE_INT));
if (Common.isNotNull(fundLibraryList)) {
for (TForecastLibrary library : fundLibraryList) {
// 存在社保派减且处于派减期间内,未被预估结算,工资结算引用则清空相关数据
if (Common.isNotNull(library.getProvidentPayMonth()) && DateUtil.formatDateInt(fundReduceDate) < Integer.parseInt(library.getProvidentPayMonth())) {
this.calculateType(zero, library);
}
}
}
}
}
return R.ok();
}
private void calculateType(BigDecimal zero, TForecastLibrary library) {
if (library.getDataPush() == CommonConstants.ONE_INT) {
// 加负数
TForecastLibrary negateLib = new TForecastLibrary();
BeanUtil.copyProperties(library, negateLib);
negateLib.setUnitPensionFee(BigDecimalUtils.safeSubtract(zero, library.getUnitPensionFee()));
negateLib.setUnitMedicalFee(BigDecimalUtils.safeSubtract(zero, library.getUnitMedicalFee()));
negateLib.setUnitBirthFee(BigDecimalUtils.safeSubtract(zero, library.getUnitBirthFee()));
negateLib.setUnitWorkInjuryFee(BigDecimalUtils.safeSubtract(zero, library.getUnitWorkInjuryFee()));
negateLib.setUnitUnemploymentFee(BigDecimalUtils.safeSubtract(zero, library.getUnitUnemploymentFee()));
negateLib.setUnitBitailmentFee(BigDecimalUtils.safeSubtract(zero, library.getUnitBitailmentFee()));
negateLib.setUnitInterestFee(BigDecimalUtils.safeSubtract(zero, library.getUnitInterestFee()));
negateLib.setUnitSocialSum(BigDecimalUtils.safeSubtract(zero, library.getUnitSocialSum()));
// 个人社保
negateLib.setPersonalPensionFee(BigDecimalUtils.safeSubtract(zero, library.getPersonalPensionFee()));
negateLib.setPersonalMedicalFee(BigDecimalUtils.safeSubtract(zero, library.getPersonalMedicalFee()));
negateLib.setPersonalUnemploymentFee(BigDecimalUtils.safeSubtract(zero, library.getPersonalUnemploymentFee()));
negateLib.setPersonalInterestFee(BigDecimalUtils.safeSubtract(zero, library.getPersonalUnemploymentFee()));
negateLib.setPersonalBigailmentFee(BigDecimalUtils.safeSubtract(zero, library.getPersonalBigailmentFee()));
negateLib.setPersonalSocialSum(BigDecimalUtils.safeSubtract(zero, library.getPersonalSocialSum()));
// 单位公积金
negateLib.setUnitFundSum(BigDecimalUtils.safeSubtract(zero, library.getUnitFundSum()));
// 个人公积金
negateLib.setPersonalFundSum(BigDecimalUtils.safeSubtract(zero, library.getPersonalFundSum()));
negateLib.setSumAll(BigDecimalUtils.safeSubtract(zero, library.getSumAll()));
negateLib.setDiffType(SocialConstants.DIFF_TYPE_TWO);
baseMapper.insert(negateLib);
} else {
// 删除
baseMapper.deleteById(library.getId());
}
}
/**
* @param socialFundInfo
* @Description: 根据社保公积金信息表更新预估库
......
......@@ -558,6 +558,10 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
if (ValidityUtil.checkInvalidEmpPhone(tPreDispatchInfo.getTelOne())) {
return R.failed(PreDispatchConstants.TEL_INVALID);
}
if (ValidityUtil.checkInvalidEmpPhone(tPreDispatchInfo.getTelTwo())) {
return R.failed(PreDispatchConstants.TEL_INVALID2);
}
}
if (CommonConstants.ONE_STRING.equals(tPreDispatchInfo.getType())) {
initLeaveReason(tPreDispatchInfo);
......@@ -1145,10 +1149,6 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
private String checkAddPreDispatch(TPreDispatchInfo tPreDispatchInfo) {
if (CommonConstants.ZERO_STRING.equals(tPreDispatchInfo.getType())) {
// 拍增的合同开始和结束时间必填 2021-08-13
if (Common.isEmpty(tPreDispatchInfo.getContractStart()) || Common.isEmpty(tPreDispatchInfo.getContractEnd())) {
return "派增的合同开始日期和合同终止日期不可为空!";
}
if (Common.isEmpty(tPreDispatchInfo.getTelOne())) {
return PreDispatchConstants.TEL_NOT_EMPTY;
}
......
......@@ -130,5 +130,6 @@
1=1
<include refid="tAgentConfig_where"/>
</where>
ORDER BY a.CREATE_TIME desc
</select>
</mapper>
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