薪酬系统-福利档案,增加操作日志
This commit is contained in:
parent
146a21a377
commit
6a79b22c17
|
|
@ -1,5 +1,6 @@
|
|||
package com.engine.salary.entity.siarchives.po;
|
||||
|
||||
import com.engine.salary.elog.annotation.ElogTransform;
|
||||
import com.engine.salary.enums.datacollection.DataCollectionEmployeeTypeEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
|
|
@ -19,65 +20,78 @@ import java.util.Date;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_insurance_base_info
|
||||
@ElogTransform(name = "福利档案主表")
|
||||
public class InsuranceArchivesBaseInfoPO {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ElogTransform(name = "主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 员工id
|
||||
*/
|
||||
@ElogTransform(name = "员工id")
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人id
|
||||
*/
|
||||
@ElogTransform(name = "个税扣缴义务人id")
|
||||
private Long paymentOrganization;
|
||||
|
||||
/**
|
||||
* 社保档案id
|
||||
*/
|
||||
@ElogTransform(name = "社保档案id")
|
||||
private Long socialArchivesId;
|
||||
|
||||
/**
|
||||
* 公积金档案id
|
||||
*/
|
||||
@ElogTransform(name = "公积金档案id")
|
||||
private Long fundArchivesId;
|
||||
|
||||
/**
|
||||
* 其他福利档案id
|
||||
*/
|
||||
@ElogTransform(name = "其他福利档案id")
|
||||
private Long otherArchivesId;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@ElogTransform(name = "租户key")
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ElogTransform(name = "创建人id")
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@ElogTransform(name = "是否删除")
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ElogTransform(name = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@ElogTransform(name = "更新时间")
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 福利执行状态
|
||||
*/
|
||||
@ElogTransform(name = "福利执行状态")
|
||||
private String runStatus;
|
||||
|
||||
/**
|
||||
|
|
@ -85,6 +99,7 @@ public class InsuranceArchivesBaseInfoPO {
|
|||
*
|
||||
* @see DataCollectionEmployeeTypeEnum
|
||||
*/
|
||||
@ElogTransform(name = "人员类型")
|
||||
private Integer employeeType;
|
||||
|
||||
//---------条件-------
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.engine.salary.entity.siarchives.po;
|
||||
|
||||
import com.engine.salary.annotation.Encrypt;
|
||||
import com.engine.salary.elog.annotation.ElogTransform;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -19,35 +20,42 @@ import java.util.Date;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_fund_archives
|
||||
@ElogTransform(name = "福利档案明细表-公积金信息")
|
||||
public class InsuranceArchivesFundSchemePO {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ElogTransform(name = "主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 员工id
|
||||
*/
|
||||
@ElogTransform(name = "员工id")
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 福利类型
|
||||
*/
|
||||
@ElogTransform(name = "福利类型")
|
||||
private Integer welfareType;
|
||||
|
||||
/**
|
||||
* 暂不缴纳
|
||||
*/
|
||||
@ElogTransform(name = "是否暂不缴纳")
|
||||
private Integer nonPayment;
|
||||
|
||||
/**
|
||||
* 公积金起始缴纳月
|
||||
*/
|
||||
@ElogTransform(name = "公积金起始缴纳月")
|
||||
private String fundStartTime;
|
||||
|
||||
/**
|
||||
* 公积金最后缴纳月
|
||||
*/
|
||||
@ElogTransform(name = "公积金最后缴纳月")
|
||||
private String fundEndTime;
|
||||
|
||||
/**
|
||||
|
|
@ -59,63 +67,75 @@ public class InsuranceArchivesFundSchemePO {
|
|||
/**
|
||||
* 公积金方案id
|
||||
*/
|
||||
@ElogTransform(name = "公积金方案id")
|
||||
private Long fundSchemeId;
|
||||
|
||||
/**
|
||||
* 公积金账号
|
||||
*/
|
||||
@ElogTransform(name = "公积金账号")
|
||||
private String fundAccount;
|
||||
|
||||
/**
|
||||
* 补充公积金账号
|
||||
*/
|
||||
@ElogTransform(name = "补充公积金账号")
|
||||
private String supplementFundAccount;
|
||||
|
||||
/**
|
||||
* 公积金缴纳组织
|
||||
*/
|
||||
@ElogTransform(name = "公积金缴纳组织")
|
||||
private Long paymentOrganization;
|
||||
|
||||
/**
|
||||
* 公积金个人实际承担方
|
||||
*/
|
||||
@ElogTransform(name = "公积金个人实际承担方")
|
||||
private Integer underTake;
|
||||
|
||||
/**
|
||||
* 公积金缴纳基数
|
||||
*/
|
||||
@Encrypt
|
||||
@ElogTransform(name = "公积金缴纳基数")
|
||||
private String fundPaymentBaseString;
|
||||
|
||||
/**
|
||||
* 公积金缴纳基数——单位
|
||||
*/
|
||||
@Encrypt
|
||||
@ElogTransform(name = "公积金缴纳基数——单位")
|
||||
private String fundPaymentComBaseString;
|
||||
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@ElogTransform(name = "租户key")
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ElogTransform(name = "创建人id")
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@ElogTransform(name = "是否删除")
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ElogTransform(name = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@ElogTransform(name = "更新时间")
|
||||
private Date updateTime;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.engine.salary.entity.siarchives.po;
|
||||
|
||||
import com.engine.salary.annotation.Encrypt;
|
||||
import com.engine.salary.elog.annotation.ElogTransform;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -19,35 +20,42 @@ import java.util.Date;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_other_archives
|
||||
@ElogTransform(name = "福利档案明细表-其他福利信息")
|
||||
public class InsuranceArchivesOtherSchemePO {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ElogTransform(name = "主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 员工id
|
||||
*/
|
||||
@ElogTransform(name = "员工id")
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 暂不缴纳
|
||||
*/
|
||||
@ElogTransform(name = "是否暂不缴纳")
|
||||
private Integer nonPayment;
|
||||
|
||||
/**
|
||||
* 福利类型
|
||||
*/
|
||||
@ElogTransform(name = "福利类型")
|
||||
private Integer welfareType;
|
||||
|
||||
/**
|
||||
* 其他福利起始缴纳月
|
||||
*/
|
||||
@ElogTransform(name = "其他福利起始缴纳月")
|
||||
private String otherStartTime;
|
||||
|
||||
/**
|
||||
* 其他福利最后缴纳月
|
||||
*/
|
||||
@ElogTransform(name = "其他福利最后缴纳月")
|
||||
private String otherEndTime;
|
||||
|
||||
/**
|
||||
|
|
@ -59,52 +67,62 @@ public class InsuranceArchivesOtherSchemePO {
|
|||
/**
|
||||
* 其他福利方案id
|
||||
*/
|
||||
@ElogTransform(name = "其他福利方案id")
|
||||
private Long otherSchemeId;
|
||||
|
||||
/**
|
||||
* 其他福利缴纳组织
|
||||
*/
|
||||
@ElogTransform(name = "其他福利缴纳组织")
|
||||
private Long paymentOrganization;
|
||||
|
||||
/**
|
||||
* 其他福利个人实际承担方
|
||||
*/
|
||||
@ElogTransform(name = "其他福利个人实际承担方")
|
||||
private Integer underTake;
|
||||
|
||||
/**
|
||||
* 其他福利缴纳基数
|
||||
*/
|
||||
@Encrypt
|
||||
@ElogTransform(name = "其他福利缴纳基数")
|
||||
private String otherPaymentBaseString;
|
||||
|
||||
/**
|
||||
* 其他福利缴纳基数——单位
|
||||
*/
|
||||
@Encrypt
|
||||
@ElogTransform(name = "其他福利缴纳基数——单位")
|
||||
private String otherPaymentComBaseString;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@ElogTransform(name = "租户key")
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ElogTransform(name = "创建人id")
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@ElogTransform(name = "是否删除")
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ElogTransform(name = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@ElogTransform(name = "更新时间")
|
||||
private Date updateTime;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.engine.salary.entity.siarchives.po;
|
||||
|
||||
import com.engine.salary.annotation.Encrypt;
|
||||
import com.engine.salary.elog.annotation.ElogTransform;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -19,36 +20,43 @@ import java.util.Date;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_social_archives
|
||||
@ElogTransform(name = "福利档案明细表-社保信息")
|
||||
public class InsuranceArchivesSocialSchemePO {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ElogTransform(name = "主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 员工id
|
||||
*/
|
||||
@ElogTransform(name = "员工id")
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 暂不缴纳
|
||||
*/
|
||||
@ElogTransform(name = "是否暂不缴纳")
|
||||
private Integer nonPayment;
|
||||
|
||||
/**
|
||||
* 福利类型
|
||||
*/
|
||||
@ElogTransform(name = "福利类型")
|
||||
private Integer welfareType;
|
||||
|
||||
/**
|
||||
* 社保起始缴纳月
|
||||
*/
|
||||
@ElogTransform(name = "社保起始缴纳月")
|
||||
private String socialStartTime;
|
||||
|
||||
/**
|
||||
* 社保最后缴纳月
|
||||
*/
|
||||
@ElogTransform(name = "社保最后缴纳月")
|
||||
private String socialEndTime;
|
||||
|
||||
/**
|
||||
|
|
@ -60,57 +68,68 @@ public class InsuranceArchivesSocialSchemePO {
|
|||
/**
|
||||
* 社保方案id
|
||||
*/
|
||||
@ElogTransform(name = "社保方案id")
|
||||
private Long socialSchemeId;
|
||||
|
||||
/**
|
||||
* 社保账号
|
||||
*/
|
||||
@ElogTransform(name = "社保账号")
|
||||
private String socialAccount;
|
||||
|
||||
/**
|
||||
* 社保缴纳组织
|
||||
*/
|
||||
@ElogTransform(name = "社保缴纳组织")
|
||||
private Long paymentOrganization;
|
||||
|
||||
/**
|
||||
* 社保个人实际承担方
|
||||
*/
|
||||
@ElogTransform(name = "社保个人实际承担方")
|
||||
private Integer underTake;
|
||||
|
||||
/**
|
||||
* 社保缴纳基数
|
||||
*/
|
||||
@Encrypt
|
||||
@ElogTransform(name = "社保缴纳基数")
|
||||
private String socialPaymentBaseString;
|
||||
|
||||
/**
|
||||
* 社保缴纳基数——单位
|
||||
*/
|
||||
@Encrypt
|
||||
@ElogTransform(name = "社保缴纳基数——单位")
|
||||
private String socialPaymentComBaseString;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@ElogTransform(name = "租户key")
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ElogTransform(name = "创建人id")
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@ElogTransform(name = "是否删除")
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ElogTransform(name = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@ElogTransform(name = "更新时间")
|
||||
private Date updateTime;
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -6,6 +6,8 @@ import com.api.browser.util.ConditionFactory;
|
|||
import com.api.browser.util.ConditionType;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.config.SalaryElogConfig;
|
||||
import com.engine.salary.elog.entity.dto.LoggerContext;
|
||||
import com.engine.salary.encrypt.EncryptUtil;
|
||||
import com.engine.salary.entity.siaccount.po.InsuranceAccountDetailPO;
|
||||
import com.engine.salary.entity.sicategory.bo.ICategoryBO;
|
||||
|
|
@ -15,6 +17,7 @@ import com.engine.salary.entity.sicategory.dto.ICategoryListDTO;
|
|||
import com.engine.salary.entity.sicategory.po.ICategoryPO;
|
||||
import com.engine.salary.entity.sischeme.param.InsuranceSchemeParam;
|
||||
import com.engine.salary.entity.sischeme.po.InsuranceSchemeDetailPO;
|
||||
import com.engine.salary.enums.OperateTypeEnum;
|
||||
import com.engine.salary.enums.sicategory.DataTypeEnum;
|
||||
import com.engine.salary.enums.sicategory.IsPaymentEnum;
|
||||
import com.engine.salary.enums.sicategory.PaymentScopeEnum;
|
||||
|
|
@ -119,6 +122,15 @@ public class SICategoryServiceImpl extends Service implements SICategoryService
|
|||
items.put("paymentScope",checkbox);
|
||||
|
||||
apidatas.put("item",items);
|
||||
//记录操作日志
|
||||
LoggerContext loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(form.getId()));
|
||||
loggerContext.setTargetName(form.getInsuranceName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.READ.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "查看自定义福利明细"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "查看自定义福利明细") + ": " + form.getInsuranceName());
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
return apidatas;
|
||||
}
|
||||
|
||||
|
|
@ -250,6 +262,16 @@ public class SICategoryServiceImpl extends Service implements SICategoryService
|
|||
.updateTime(new Date())
|
||||
.build();
|
||||
getICategoryMapper().updateNameAndPayScopeById(iCategoryPO);
|
||||
//记录操作日志
|
||||
LoggerContext<ICategoryPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(iCategoryPO.getId()));
|
||||
loggerContext.setTargetName(iCategoryPO.getInsuranceName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "更新自定义福利信息"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "更新自定义福利信息"));
|
||||
loggerContext.setNewValues(iCategoryPO);
|
||||
SalaryElogConfig.siCategoryLoggerTemplate.write(loggerContext);
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
@ -297,6 +319,16 @@ public class SICategoryServiceImpl extends Service implements SICategoryService
|
|||
//删除自定义福利项
|
||||
categoryPO.setUpdateTime(new Date());
|
||||
getICategoryMapper().deleteCustomCategoryById(categoryPO);
|
||||
//记录操作日志
|
||||
LoggerContext<ICategoryPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(categoryPO.getId()));
|
||||
loggerContext.setTargetName(categoryPO.getInsuranceName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新建自定义福利项"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "新建自定义福利项"));
|
||||
// loggerContext.setNewValues(categoryPO);
|
||||
SalaryElogConfig.siCategoryLoggerTemplate.write(loggerContext);
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
@ -381,22 +413,23 @@ public class SICategoryServiceImpl extends Service implements SICategoryService
|
|||
* @param employeeId DataTypeEnum.SYSTEM.getValue()
|
||||
*/
|
||||
public void save(ICategoryFormDTO iCategoryFormDTO, long employeeId) {
|
||||
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
|
||||
try {
|
||||
ICategoryMapper iCategoryMapper = sqlSession.getMapper(ICategoryMapper.class);
|
||||
iCategoryFormDTO.setInsuranceName(StringUtils.trim(iCategoryFormDTO.getInsuranceName()));
|
||||
List<ICategoryPO> iCategoryPOS = listByName(iCategoryFormDTO.getInsuranceName());
|
||||
if (CollectionUtils.isNotEmpty(iCategoryPOS)) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"福利名称不允许重复"));
|
||||
}
|
||||
ICategoryPO iCategoryPO = ICategoryBO.convertToInsuranceCategoryPO(iCategoryFormDTO, employeeId);
|
||||
iCategoryMapper.insert(iCategoryPO);
|
||||
|
||||
sqlSession.commit();
|
||||
|
||||
} finally {
|
||||
sqlSession.close();
|
||||
iCategoryFormDTO.setInsuranceName(StringUtils.trim(iCategoryFormDTO.getInsuranceName()));
|
||||
List<ICategoryPO> iCategoryPOS = listByName(iCategoryFormDTO.getInsuranceName());
|
||||
if (CollectionUtils.isNotEmpty(iCategoryPOS)) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"福利名称不允许重复"));
|
||||
}
|
||||
ICategoryPO iCategoryPO = ICategoryBO.convertToInsuranceCategoryPO(iCategoryFormDTO, employeeId);
|
||||
getICategoryMapper().insert(iCategoryPO);
|
||||
//记录操作日志
|
||||
LoggerContext<ICategoryPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(iCategoryPO.getId()));
|
||||
loggerContext.setTargetName(iCategoryPO.getInsuranceName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新建自定义福利项"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "新建自定义福利项"));
|
||||
loggerContext.setNewValues(iCategoryPO);
|
||||
SalaryElogConfig.siCategoryLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -436,31 +469,34 @@ public class SICategoryServiceImpl extends Service implements SICategoryService
|
|||
* @param isUse
|
||||
*/
|
||||
public void updateStatusById(Long id, Integer isUse) {
|
||||
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
|
||||
try {
|
||||
if(id == null) {
|
||||
throw new SalaryRunTimeException("id is required");
|
||||
}
|
||||
if (isUse == null) {
|
||||
throw new SalaryRunTimeException("isUse is required");
|
||||
}
|
||||
// List<InsuranceSchemeDetailPO> insuranceSchemeDetailPOS = new SISchemeBiz().queryListByInsuranceIdIsPayment(id, IsPaymentEnum.YES.getValue());
|
||||
List<InsuranceSchemeDetailPO> insuranceSchemeDetailPOS = getSISchemeService(user).queryListByInsuranceIdIsPayment(id, IsPaymentEnum.YES.getValue());
|
||||
if(CollectionUtils.isNotEmpty(insuranceSchemeDetailPOS) && isUse == 0) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"该福利开启缴费,不可删除(或停用)"));
|
||||
}
|
||||
ICategoryPO iCategoryPO = getICategoryPOByID(id);
|
||||
if (Objects.isNull(iCategoryPO)) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"数据记录不存在"));
|
||||
}
|
||||
iCategoryPO.setIsUse(isUse);
|
||||
ICategoryMapper iCategoryMapper = sqlSession.getMapper(ICategoryMapper.class);
|
||||
iCategoryMapper.updateById(iCategoryPO);
|
||||
|
||||
sqlSession.commit();
|
||||
}finally {
|
||||
sqlSession.close();
|
||||
if(id == null) {
|
||||
throw new SalaryRunTimeException("id is required");
|
||||
}
|
||||
if (isUse == null) {
|
||||
throw new SalaryRunTimeException("isUse is required");
|
||||
}
|
||||
// List<InsuranceSchemeDetailPO> insuranceSchemeDetailPOS = new SISchemeBiz().queryListByInsuranceIdIsPayment(id, IsPaymentEnum.YES.getValue());
|
||||
List<InsuranceSchemeDetailPO> insuranceSchemeDetailPOS = getSISchemeService(user).queryListByInsuranceIdIsPayment(id, IsPaymentEnum.YES.getValue());
|
||||
if(CollectionUtils.isNotEmpty(insuranceSchemeDetailPOS) && isUse == 0) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"该福利开启缴费,不可删除(或停用)"));
|
||||
}
|
||||
ICategoryPO iCategoryPO = getICategoryPOByID(id);
|
||||
if (Objects.isNull(iCategoryPO)) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"数据记录不存在"));
|
||||
}
|
||||
iCategoryPO.setIsUse(isUse);
|
||||
getICategoryMapper().updateById(iCategoryPO);
|
||||
//记录操作日志
|
||||
LoggerContext<ICategoryPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(iCategoryPO.getId()));
|
||||
loggerContext.setTargetName(iCategoryPO.getInsuranceName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "更新自定义福利状态"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "更新自定义福利状态"));
|
||||
loggerContext.setNewValues(iCategoryPO);
|
||||
SalaryElogConfig.siCategoryLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
|
||||
/*****以上代码为SICategoryBiz中方法逻辑迁移,旨在减少Biz类的使用*****/
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ import com.engine.salary.elog.entity.dto.LoggerContext;
|
|||
import com.engine.salary.encrypt.EncryptUtil;
|
||||
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
|
||||
import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
|
||||
import com.engine.salary.entity.siarchives.dto.InsuranceArchivesBaseHistoryDTO;
|
||||
import com.engine.salary.entity.siarchives.param.InsuranceArchivesListParam;
|
||||
import com.engine.salary.entity.siarchives.param.SIArchiveImportParam;
|
||||
import com.engine.salary.entity.siarchives.po.*;
|
||||
|
|
@ -40,6 +41,7 @@ import com.engine.salary.enums.salarysob.TargetTypeEnum;
|
|||
import com.engine.salary.enums.siaccount.EmployeeStatusEnum;
|
||||
import com.engine.salary.enums.sicategory.*;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.mapper.datacollection.EmployMapper;
|
||||
import com.engine.salary.mapper.siaccount.SIAccountUtilMapper;
|
||||
import com.engine.salary.mapper.siarchives.FundSchemeMapper;
|
||||
import com.engine.salary.mapper.siarchives.InsuranceBaseInfoMapper;
|
||||
|
|
@ -173,6 +175,9 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
return SqlProxyHandle.getProxy(SIAccountUtilMapper.class);
|
||||
}
|
||||
|
||||
private EmployMapper getEmployMapper() {
|
||||
return MapperProxyFactory.getProxy(EmployMapper.class);
|
||||
}
|
||||
@Override
|
||||
public Map<String, Object> getForm(Map<String, Object> params) {
|
||||
// return commandExecutor.execute(new SISchemeGetFormCmd(params, user));
|
||||
|
|
@ -186,6 +191,16 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
// InsuranceSchemeFormVO form = siSchemeBiz.getForm(id, welfareTypeEnum);
|
||||
InsuranceSchemeFormVO form = getForm(id, welfareTypeEnum);
|
||||
apidatas.put("form",form);
|
||||
//记录操作日志
|
||||
InsuranceSchemeDTO schemeBatch = form.getSchemeBatch();
|
||||
LoggerContext loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(schemeBatch.getId()));
|
||||
loggerContext.setTargetName(schemeBatch.getSchemeName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.READ.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "查看福利方案明细"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "查看福利方案明细") + ": " + schemeBatch.getSchemeName());
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
return apidatas;
|
||||
}
|
||||
|
||||
|
|
@ -623,6 +638,13 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
}
|
||||
rows.add(row);
|
||||
}
|
||||
//记录操作日志
|
||||
LoggerContext<InsuranceArchivesOtherSchemePO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setOperateType(OperateTypeEnum.EXPORT.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "福利档案导出"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利档案导出"));
|
||||
SalaryElogConfig.siArchivesLoggerTemplate.write(loggerContext);
|
||||
//获取excel
|
||||
return ExcelUtilPlus.genWorkbookV2(rows, sheetName);
|
||||
}
|
||||
|
|
@ -1821,10 +1843,17 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
}
|
||||
|
||||
public void handleImportData(List<InsuranceArchivesAccountPO> insuranceArchivesAccountPOS, SIArchiveImportParam param) {
|
||||
List<InsuranceArchivesBaseInfoPO> baseInfoPOS = insuranceArchivesAccountPOS.stream().filter(Objects::nonNull).map(InsuranceArchivesAccountPO::getBaseInfo).collect(Collectors.toList());
|
||||
//去除员工id+个税扣缴义务人下重复的数据
|
||||
baseInfoPOS = baseInfoPOS.stream()
|
||||
.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(f -> f.getPaymentOrganization() + "-" + f.getEmployeeId()))), ArrayList::new));
|
||||
//老数据map
|
||||
Map<String, InsuranceArchivesSocialSchemePO> oldSocialArchiveMap = getSocialArchiveMap(baseInfoPOS);
|
||||
Map<String, InsuranceArchivesFundSchemePO> oldFundArchiveMap = getFundArchiveMap(baseInfoPOS);
|
||||
Map<String, InsuranceArchivesOtherSchemePO> oldOtherArchiveMap = getOtherArchiveMap(baseInfoPOS);
|
||||
//导入社保档案
|
||||
List<InsuranceArchivesSocialSchemePO> socialSchemePOS = insuranceArchivesAccountPOS.stream().filter(Objects::nonNull).map(InsuranceArchivesAccountPO::getSocial).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(socialSchemePOS)) {
|
||||
|
||||
//去除员工id+个税扣缴义务人下重复的数据
|
||||
socialSchemePOS = socialSchemePOS.stream()
|
||||
.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(f -> f.getPaymentOrganization() + "-" + f.getEmployeeId()))), ArrayList::new));
|
||||
|
|
@ -1848,7 +1877,6 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
//导入公积金档案
|
||||
List<InsuranceArchivesFundSchemePO> fundSchemePOS = insuranceArchivesAccountPOS.stream().filter(Objects::nonNull).map(InsuranceArchivesAccountPO::getFund).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(fundSchemePOS)) {
|
||||
|
||||
//去除员工id+个税扣缴义务人下重复的数据
|
||||
fundSchemePOS = fundSchemePOS.stream()
|
||||
.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(f -> f.getPaymentOrganization() + "-" + f.getEmployeeId()))), ArrayList::new));
|
||||
|
|
@ -1869,7 +1897,6 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
//导入其他福利档案
|
||||
List<InsuranceArchivesOtherSchemePO> otherSchemePOS = insuranceArchivesAccountPOS.stream().filter(Objects::nonNull).map(InsuranceArchivesAccountPO::getOther).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(otherSchemePOS)) {
|
||||
|
||||
//去除员工id+个税扣缴义务人下重复的数据
|
||||
otherSchemePOS = otherSchemePOS.stream()
|
||||
.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(f -> f.getPaymentOrganization() + "-" + f.getEmployeeId()))), ArrayList::new));
|
||||
|
|
@ -1889,12 +1916,12 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
getSIArchivesService(user).batchInsertAdjustHistory(adjustOtherHistoryPOList);
|
||||
}
|
||||
//导入福利档案基础信息
|
||||
List<InsuranceArchivesBaseInfoPO> baseInfoPOS = insuranceArchivesAccountPOS.stream().filter(Objects::nonNull).map(InsuranceArchivesAccountPO::getBaseInfo).collect(Collectors.toList());
|
||||
// List<InsuranceArchivesBaseInfoPO> baseInfoPOS = insuranceArchivesAccountPOS.stream().filter(Objects::nonNull).map(InsuranceArchivesAccountPO::getBaseInfo).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(baseInfoPOS)) {
|
||||
// baseInfoPOS = baseInfoPOS.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(InsuranceArchivesBaseInfoPO::getEmployeeId))), ArrayList::new));
|
||||
//去除员工id+个税扣缴义务人下重复的数据
|
||||
baseInfoPOS = baseInfoPOS.stream()
|
||||
.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(f -> f.getPaymentOrganization() + "-" + f.getEmployeeId()))), ArrayList::new));
|
||||
// //去除员工id+个税扣缴义务人下重复的数据
|
||||
// baseInfoPOS = baseInfoPOS.stream()
|
||||
// .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(f -> f.getPaymentOrganization() + "-" + f.getEmployeeId()))), ArrayList::new));
|
||||
//根据人员id和个税扣缴义务人id删除对应档案
|
||||
baseInfoPOS.forEach(getInsuranceBaseInfoMapper()::deleteByEmployeeIdAndPayOrg);
|
||||
//分批批量删除
|
||||
|
|
@ -1919,6 +1946,54 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
//分批批量入库
|
||||
List<List<InsuranceArchivesBaseInfoPO>> partition = Lists.partition(newInsuranceArchivesBaseInfoList, 100);
|
||||
partition.forEach(getInsuranceBaseInfoMapper()::batchSave);
|
||||
//记录操作日志
|
||||
//获取新数据map和老数据map
|
||||
Map<String, InsuranceArchivesSocialSchemePO> newSocialArchiveMap = getSocialArchiveMap(baseInfoPOS);
|
||||
Map<String, InsuranceArchivesFundSchemePO> newFundArchiveMap = getFundArchiveMap(baseInfoPOS);
|
||||
Map<String, InsuranceArchivesOtherSchemePO> newOtherArchiveMap = getOtherArchiveMap(baseInfoPOS);
|
||||
newInsuranceArchivesBaseInfoList.forEach(targetPO -> {
|
||||
InsuranceArchivesSocialSchemePO targetSocialDetail = newSocialArchiveMap.get(targetPO.getPaymentOrganization() + "-" + targetPO.getEmployeeId());
|
||||
InsuranceArchivesFundSchemePO targetFundDetail = newFundArchiveMap.get(targetPO.getPaymentOrganization() + "-" + targetPO.getEmployeeId());
|
||||
InsuranceArchivesOtherSchemePO targetOtherDetail = newOtherArchiveMap.get(targetPO.getPaymentOrganization() + "-" + targetPO.getEmployeeId());
|
||||
DataCollectionEmployee empInfo = getEmployMapper().getEmployeeById(targetPO.getEmployeeId());
|
||||
TaxAgentPO taxAgentInfo = getTaxAgentMapper().getById(targetPO.getPaymentOrganization());
|
||||
if (targetSocialDetail != null) {
|
||||
LoggerContext<InsuranceArchivesSocialSchemePO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(taxAgentInfo.getName() + "-" + empInfo.getUsername());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "福利档案-社保明细导入"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利档案-社保明细导入") + ": " + taxAgentInfo.getName() + "-" + empInfo.getUsername());
|
||||
loggerContext.setOldValues(oldSocialArchiveMap.get(targetPO.getPaymentOrganization() + "-" + targetPO.getEmployeeId()));
|
||||
loggerContext.setNewValues(targetSocialDetail);
|
||||
SalaryElogConfig.siArchivesLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
if (targetFundDetail != null) {
|
||||
LoggerContext<InsuranceArchivesFundSchemePO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(taxAgentInfo.getName() + "-" + empInfo.getUsername());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "福利档案-公积金明细导入"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利档案-公积金明细导入") + ": " + taxAgentInfo.getName() + "-" + empInfo.getUsername());
|
||||
loggerContext.setOldValues(oldFundArchiveMap.get(targetPO.getPaymentOrganization() + "-" + targetPO.getEmployeeId()));
|
||||
loggerContext.setNewValues(targetFundDetail);
|
||||
SalaryElogConfig.siArchivesLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
if (targetOtherDetail != null) {
|
||||
LoggerContext<InsuranceArchivesOtherSchemePO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(taxAgentInfo.getName() + "-" + empInfo.getUsername());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "福利档案-其他福利明细导入"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利档案-其他福利明细导入") + ": " + taxAgentInfo.getName() + "-" + empInfo.getUsername());
|
||||
loggerContext.setOldValues(oldOtherArchiveMap.get(targetPO.getPaymentOrganization() + "-" + targetPO.getEmployeeId()));
|
||||
loggerContext.setNewValues(targetOtherDetail);
|
||||
SalaryElogConfig.siArchivesLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
});
|
||||
}
|
||||
//新增人员范围(会自动生成人员档案)
|
||||
if (CollectionUtils.isNotEmpty(param.getTaxAgentRanges())) {
|
||||
|
|
@ -1926,6 +2001,61 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
}
|
||||
}
|
||||
|
||||
private Map<String, InsuranceArchivesSocialSchemePO> getSocialArchiveMap(List<InsuranceArchivesBaseInfoPO> baseInfoPOS) {
|
||||
Map<String, InsuranceArchivesSocialSchemePO> map = new HashMap<>();
|
||||
if (baseInfoPOS.size() > 0) {
|
||||
//遍历待更新的福利档案数据,对每组档案生成基数调整记录(基数单元未变化则忽略)
|
||||
for (InsuranceArchivesBaseInfoPO po : baseInfoPOS) {
|
||||
List<InsuranceArchivesSocialSchemePO> archiveList = getSocialSchemeMapper().getSocialByEmployeeIdAndPayOrg(InsuranceArchivesEmployeePO.builder()
|
||||
.paymentOrganization(po.getPaymentOrganization()).employeeId(po.getEmployeeId()).build());
|
||||
if (archiveList.size() == 1) {
|
||||
//新增调整记录,变更
|
||||
encryptUtil.decryptList(archiveList, InsuranceArchivesSocialSchemePO.class);
|
||||
map.put(po.getPaymentOrganization() + "-" + po.getEmployeeId(), archiveList.get(0));
|
||||
} else if (archiveList.size() > 1) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"社保档案存在冗余数据!"));
|
||||
}
|
||||
}
|
||||
}
|
||||
return map;
|
||||
}
|
||||
private Map<String, InsuranceArchivesFundSchemePO> getFundArchiveMap(List<InsuranceArchivesBaseInfoPO> baseInfoPOS) {
|
||||
Map<String, InsuranceArchivesFundSchemePO> map = new HashMap<>();
|
||||
if (baseInfoPOS.size() > 0) {
|
||||
//遍历待更新的福利档案数据,对每组档案生成基数调整记录(基数单元未变化则忽略)
|
||||
for (InsuranceArchivesBaseInfoPO po : baseInfoPOS) {
|
||||
List<InsuranceArchivesFundSchemePO> archiveList = getFundSchemeMapper().getFundByEmployeeIdAndPayOrg(InsuranceArchivesEmployeePO.builder()
|
||||
.paymentOrganization(po.getPaymentOrganization()).employeeId(po.getEmployeeId()).build());
|
||||
if (archiveList.size() == 1) {
|
||||
//新增调整记录,变更
|
||||
encryptUtil.decryptList(archiveList, InsuranceArchivesFundSchemePO.class);
|
||||
map.put(po.getPaymentOrganization() + "-" + po.getEmployeeId(), archiveList.get(0));
|
||||
} else if (archiveList.size() > 1) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"公积金档案存在冗余数据!"));
|
||||
}
|
||||
}
|
||||
}
|
||||
return map;
|
||||
}
|
||||
private Map<String, InsuranceArchivesOtherSchemePO> getOtherArchiveMap(List<InsuranceArchivesBaseInfoPO> baseInfoPOS) {
|
||||
Map<String, InsuranceArchivesOtherSchemePO> map = new HashMap<>();
|
||||
if (baseInfoPOS.size() > 0) {
|
||||
//遍历待更新的福利档案数据,对每组档案生成基数调整记录(基数单元未变化则忽略)
|
||||
for (InsuranceArchivesBaseInfoPO po : baseInfoPOS) {
|
||||
List<InsuranceArchivesOtherSchemePO> archiveList = getOtherSchemeMapper().getOtherByEmployeeIdAndPayOrg(InsuranceArchivesEmployeePO.builder()
|
||||
.paymentOrganization(po.getPaymentOrganization()).employeeId(po.getEmployeeId()).build());
|
||||
if (archiveList.size() == 1) {
|
||||
//新增调整记录,变更
|
||||
encryptUtil.decryptList(archiveList, InsuranceArchivesOtherSchemePO.class);
|
||||
map.put(po.getPaymentOrganization() + "-" + po.getEmployeeId(), archiveList.get(0));
|
||||
} else if (archiveList.size() > 1) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"社保档案存在冗余数据!"));
|
||||
}
|
||||
}
|
||||
}
|
||||
return map;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 导出档案导入所需要的模板,可根据开关选择是否导出现有的档案数据
|
||||
|
|
@ -2335,8 +2465,8 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(targetPO.getSchemeName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新建福利方案"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "新建福利方案") + ": " + targetPO.getSchemeName());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新增福利方案主表"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案基础信息") + ": " + targetPO.getSchemeName());
|
||||
loggerContext.setNewValues(targetPO);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
|
|
@ -2345,26 +2475,19 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
//加密入库
|
||||
encryptUtil.encryptList(insuranceSchemeDetailPOS, InsuranceSchemeDetailPO.class);
|
||||
insuranceSchemeDetailPOS.forEach(getInsuranceSchemeDetailMapper()::insert);
|
||||
//记录操作日志
|
||||
//记录明细表操作日志
|
||||
if (insuranceSchemeDetailPOS.size() > 0) {
|
||||
encryptUtil.decryptList(insuranceSchemeDetailPOS, InsuranceSchemeDetailPO.class);
|
||||
List<ICategoryPO> allCategoryList = getICategoryMapper().listAll();
|
||||
Map<Long, String> categoryNameMap = SalaryEntityUtil.convert2Map(allCategoryList, ICategoryPO::getId, ICategoryPO::getInsuranceName);
|
||||
|
||||
InsuranceSchemePO finalTargetPO = targetPO;
|
||||
insuranceSchemeDetailPOS.forEach(schemeDetailPO -> {
|
||||
LoggerContext<InsuranceSchemeDetailPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(finalTargetPO.getId()));
|
||||
loggerContext.setTargetName(categoryNameMap.get(schemeDetailPO.getInsuranceId()));
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新建福利方案明细"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "新建福利方案明细") + ": "
|
||||
+ categoryNameMap.get(schemeDetailPO.getInsuranceId())
|
||||
+ "-" + SalaryEnumUtil.enumMatchByValue(schemeDetailPO.getPaymentScope(), PaymentScopeEnum.values(), PaymentScopeEnum.class));
|
||||
loggerContext.setNewValues(schemeDetailPO);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
});
|
||||
LoggerContext<List<InsuranceSchemeDetailPO>> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(targetPO.getSchemeName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新增福利方案明细表"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案明细"));
|
||||
insuranceSchemeDetailPOS.forEach(loggerContext::setNewValues);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -2397,32 +2520,37 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0,"方案可见性为私有时,未设置可见范围"));
|
||||
}
|
||||
}
|
||||
//记录操作日志
|
||||
LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
|
||||
//记录主表操作日志
|
||||
LoggerContext<InsuranceSchemePO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(insuranceSchemePO.getId().toString());
|
||||
loggerContext.setTargetName(insuranceSchemePO.getSchemeName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "福利方案保存"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案保存") + ": " + insuranceSchemePO.getSchemeName());
|
||||
loggerContext.setOldValues(insuranceSchemePO);
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "修改福利方案主表"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案基础信息") + ": " + insuranceSchemePO.getSchemeName());
|
||||
// loggerContext.setOldValues(insuranceSchemePO);
|
||||
//更新福利方案主表
|
||||
InsuranceSchemePO insuranceSchemePO1 = InsuranceSchemeBO.buildInsuranceSchemePO(insuranceSchemePO, updateParam.getInsuranceScheme());
|
||||
getInsuranceSchemeMapper().update(insuranceSchemePO1);
|
||||
//记录操作日志
|
||||
//记录主表操作日志
|
||||
loggerContext.setNewValues(insuranceSchemePO1);
|
||||
SalaryElogConfig.salaryAcctRecordLoggerTemplate.write(loggerContext);
|
||||
List<InsuranceSchemeDetailPO> oldInsuranceSchemeDetailPOS = getInsuranceSchemeDetailMapper().queryListBySchemeId(updateParam.getInsuranceScheme().getId());
|
||||
encryptUtil.decryptList(oldInsuranceSchemeDetailPOS, InsuranceSchemeDetailPO.class);
|
||||
|
||||
//更新福利方案明细表 先删后插
|
||||
getInsuranceSchemeDetailMapper().batchDeleteByPrimaryIds(Collections.singleton(updateParam.getInsuranceScheme().getId()));
|
||||
//更新明细表
|
||||
List<InsuranceSchemeDetailPO> insuranceSchemeDetailPOS = InsuranceSchemeBO.convertToInsuranceSchemeDetailPoList(updateParam.getInsuranceSchemeDetailList(), employeeId, insuranceSchemePO.getId());
|
||||
encryptUtil.encryptList(insuranceSchemeDetailPOS, InsuranceSchemeDetailPO.class);
|
||||
insuranceSchemeDetailPOS.forEach(getInsuranceSchemeDetailMapper()::insert);
|
||||
//记录操作日志, todo
|
||||
|
||||
//记录明细表操作日志
|
||||
encryptUtil.decryptList(insuranceSchemeDetailPOS, InsuranceSchemeDetailPO.class);
|
||||
LoggerContext<List<InsuranceSchemeDetailPO>> insuranceSchemeDetailContext = new LoggerContext<>();
|
||||
insuranceSchemeDetailContext.setTargetId(String.valueOf(insuranceSchemePO.getId()));
|
||||
insuranceSchemeDetailContext.setTargetName(insuranceSchemePO.getSchemeName());
|
||||
insuranceSchemeDetailContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
insuranceSchemeDetailContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "修改福利方案明细表"));
|
||||
insuranceSchemeDetailContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案明细"));
|
||||
insuranceSchemeDetailPOS.forEach(insuranceSchemeDetailContext::setNewValues);
|
||||
SalaryElogConfig.salaryAcctRecordLoggerTemplate.write(insuranceSchemeDetailContext);
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -2451,38 +2579,33 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
getInsuranceSchemeDetailMapper().deleteByIds(schemeIds);
|
||||
|
||||
//记录操作日志
|
||||
Map<Long, List<InsuranceSchemeDetailPO>> targetDetailMap = targetDetailPoList.stream()
|
||||
.collect(Collectors.groupingBy(InsuranceSchemeDetailPO::getPrimaryId));
|
||||
if (targetPoList.size() > 0) {
|
||||
targetPoList.forEach(targetPO -> {
|
||||
//记录主表操作日志
|
||||
LoggerContext<InsuranceSchemePO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(targetPO.getSchemeName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "删除福利方案"));
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "删除福利方案主表"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "删除福利方案") + ": " + targetPO.getSchemeName());
|
||||
loggerContext.setNewValues(targetPO);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
});
|
||||
}
|
||||
if (targetDetailPoList.size() > 0) {
|
||||
List<ICategoryPO> allCategoryList = getICategoryMapper().listAll();
|
||||
Map<Long, String> categoryNameMap = SalaryEntityUtil.convert2Map(allCategoryList, ICategoryPO::getId, ICategoryPO::getInsuranceName);
|
||||
Map<Long, List<InsuranceSchemeDetailPO>> targetDetailMap = targetDetailPoList.stream()
|
||||
.collect(Collectors.groupingBy(InsuranceSchemeDetailPO::getPrimaryId));
|
||||
targetDetailMap.forEach((k, v) -> {
|
||||
v.forEach(schemeDetailPO -> {
|
||||
LoggerContext<InsuranceSchemeDetailPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(k));
|
||||
loggerContext.setTargetName(categoryNameMap.get(schemeDetailPO.getInsuranceId()));
|
||||
loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "删除福利方案明细"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "删除福利方案明细") + ": "
|
||||
+ categoryNameMap.get(schemeDetailPO.getInsuranceId())
|
||||
+ "-" + SalaryEnumUtil.enumMatchByValue(schemeDetailPO.getPaymentScope(), PaymentScopeEnum.values(), PaymentScopeEnum.class));
|
||||
loggerContext.setNewValues(schemeDetailPO);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
});
|
||||
//记录明细表操作日志
|
||||
List<InsuranceSchemeDetailPO> targetDetails = targetDetailMap.get(targetPO.getId());
|
||||
if (targetDetails != null && targetDetails.size() > 0) {
|
||||
LoggerContext<List<InsuranceSchemeDetailPO>> detailLoggerContext = new LoggerContext<>();
|
||||
detailLoggerContext.setUser(user);
|
||||
detailLoggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
detailLoggerContext.setTargetName(targetPO.getSchemeName());
|
||||
detailLoggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
|
||||
detailLoggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "删除福利方案明细"));
|
||||
detailLoggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案明细"));
|
||||
targetDetails.forEach(detailLoggerContext::setNewValues);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(detailLoggerContext);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -2537,8 +2660,8 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(targetPO.getSchemeName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "复制福利方案"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "复制(新建)福利方案") + ": " + targetPO.getSchemeName());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "复制新增福利方案主表"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案基础信息") + ": " + targetPO.getSchemeName());
|
||||
loggerContext.setNewValues(targetPO);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
|
|
@ -2569,26 +2692,19 @@ public class SISchemeServiceImpl extends Service implements SISchemeService {
|
|||
//加密入库
|
||||
encryptUtil.encryptList(detailPOS, InsuranceSchemeDetailPO.class);
|
||||
detailPOS.forEach(getInsuranceSchemeDetailMapper()::insert);
|
||||
//记录操作日志
|
||||
//记录明细表操作日志
|
||||
if (detailPOS.size() > 0) {
|
||||
encryptUtil.decryptList(detailPOS, InsuranceSchemeDetailPO.class);
|
||||
List<ICategoryPO> allCategoryList = getICategoryMapper().listAll();
|
||||
Map<Long, String> categoryNameMap = SalaryEntityUtil.convert2Map(allCategoryList, ICategoryPO::getId, ICategoryPO::getInsuranceName);
|
||||
|
||||
InsuranceSchemePO finalTargetPO = targetPO;
|
||||
detailPOS.forEach(schemeDetailPO -> {
|
||||
LoggerContext<InsuranceSchemeDetailPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(finalTargetPO.getId()));
|
||||
loggerContext.setTargetName(categoryNameMap.get(schemeDetailPO.getInsuranceId()));
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "复制福利方案明细"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "复制(新建)福利方案明细") + ": "
|
||||
+ categoryNameMap.get(schemeDetailPO.getInsuranceId())
|
||||
+ "-" + SalaryEnumUtil.enumMatchByValue(schemeDetailPO.getPaymentScope(), PaymentScopeEnum.values(), PaymentScopeEnum.class));
|
||||
loggerContext.setNewValues(schemeDetailPO);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
});
|
||||
LoggerContext<List<InsuranceSchemeDetailPO>> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(targetPO.getId()));
|
||||
loggerContext.setTargetName(targetPO.getSchemeName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "复制新增福利方案明细表"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "福利方案明细"));
|
||||
detailPOS.forEach(loggerContext::setNewValues);
|
||||
SalaryElogConfig.siSchemeLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue