记录核算日志

This commit is contained in:
钱涛 2024-01-24 09:50:58 +08:00
parent e1ca39e859
commit 5bf00a98aa
8 changed files with 192 additions and 142 deletions

View File

@ -240,7 +240,7 @@ public class LoggerTemplate {
}
context.setTempParams(null);
String employeeId = Optional.ofNullable(context.getUser()).map(User::getUID).orElse(0).toString();
String employeeId = Optional.ofNullable(context.getUser()).map(User::getUID).orElse(0).toString();
String tenantKey = SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY;
String userName = Optional.ofNullable(context.getUser()).map(User::getUsername).orElse("").toString();
if (StringUtils.isEmpty(context.getOperator()) && StringUtils.isNotEmpty(employeeId)) {

View File

@ -1,6 +1,7 @@
package com.engine.salary.entity.salaryacct.po;
import com.engine.salary.annotation.SalaryFormulaVar;
import com.engine.salary.elog.annotation.ElogTransform;
import com.engine.salary.enums.datacollection.DataCollectionEmployeeTypeEnum;
import lombok.AllArgsConstructor;
import lombok.Builder;
@ -25,28 +26,33 @@ import java.util.Date;
@NoArgsConstructor
@AllArgsConstructor
//hrsa_salary_acct_emp
@ElogTransform(name = "薪资核算人员")
public class SalaryAcctEmployeePO {
/**
* 主键id
*/
@ElogTransform(name = "主键id")
private Long id;
/**
* 薪资核算的id
*/
@ElogTransform(name = "核算记录id")
@SalaryFormulaVar(defaultLabel = "核算记录id", labelId = 86321, dataType = "number")
private Long salaryAcctRecordId;
/**
* 薪资账套id
*/
@ElogTransform(name = "薪资账套id")
@SalaryFormulaVar(defaultLabel = "薪资账套id", labelId = 86321, dataType = "number")
private Long salarySobId;
/**
* 人员id
*/
@ElogTransform(name = "人员id")
@SalaryFormulaVar(defaultLabel = "人员id", labelId = 86321, dataType = "number")
private Long employeeId;
@ -55,43 +61,51 @@ public class SalaryAcctEmployeePO {
*
* @see DataCollectionEmployeeTypeEnum
*/
@ElogTransform(name = "人员类型")
private Integer employeeType;
/**
* 个税扣缴义务人id
*/
@ElogTransform(name = "个税扣缴义务人id")
@SalaryFormulaVar(defaultLabel = "个税扣缴义务人id", labelId = 86321, dataType = "number")
private Long taxAgentId;
/**
* 薪资所属月
*/
@ElogTransform(name = "薪资所属月")
@SalaryFormulaVar(defaultLabel = "薪资所属月", labelId = 86321, dataType = "string")
private Date salaryMonth;
/**
* 租户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;
//--------条件----------

View File

@ -1,15 +1,20 @@
package com.engine.salary.enums;
/**
* @Description: 操作类型
* @Author: wangxiangzhong
* @Date: 2021/11/1 13:17
*/
* 操作类型
* <p>Copyright: Copyright (c) 2023</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
public enum OperateTypeEnum {
READ("0", "查看"),
ADD("1", "新增"),
UPDATE("2", "更新"),
DELETE("4", "删除");
DELETE("4", "删除"),
EXPORT("5", "导出");
private String value;

View File

@ -121,7 +121,6 @@ public class SalaryAcctManager extends Service {
private SalaryAcctResultTempService getSalaryAcctResultTempService(User user) {
return ServiceUtil.getService(SalaryAcctResultTempServiceImpl.class, user);
}
// private LoggerTemplate salaryAcctRecordLoggerTemplate;
private SIAccountService getSIAccountService(User user) {
return ServiceUtil.getService(SIAccountServiceImpl.class, user);

View File

@ -4,7 +4,10 @@ import cn.hutool.core.date.DateUtil;
import com.api.formmode.mybatis.util.SqlProxyHandle;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.salary.config.SalaryElogConfig;
import com.engine.salary.constant.SalaryDefaultTenantConstant;
import com.engine.salary.elog.entity.dto.LoggerContext;
import com.engine.salary.elog.util.LoggerTemplate;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.salaryacct.bo.SalaryAcctEmployeeBO;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO;
@ -14,6 +17,7 @@ import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
import com.engine.salary.entity.salaryarchive.dto.SalaryArchiveDataDTO;
import com.engine.salary.entity.salarysob.dto.SalarySobCycleDTO;
import com.engine.salary.entity.salarysob.po.SalarySobPO;
import com.engine.salary.enums.OperateTypeEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum;
import com.engine.salary.exception.SalaryRunTimeException;
import com.engine.salary.mapper.salaryacct.SalaryAcctEmployeeMapper;
@ -51,9 +55,7 @@ import java.util.stream.Collectors;
**/
@Slf4j
public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcctEmployeeService {
private SalaryAcctEmployeeMapper salaryAcctEmployeeMapper;
private final LoggerTemplate salaryAcctRecordLoggerTemplate = SalaryElogConfig.salaryAcctRecordLoggerTemplate();
private SalaryAcctEmployeeMapper getSalaryAcctEmployeeMapper() {
return MapperProxyFactory.getProxy(SalaryAcctEmployeeMapper.class);
@ -91,8 +93,6 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
return ServiceUtil.getService(TaxAgentServiceImpl.class, user);
}
// private LoggerTemplate salaryAcctRecordLoggerTemplate;
private SalarySysConfMapper getSalarySysConfMapper() {
return SqlProxyHandle.getProxy(SalarySysConfMapper.class);
}
@ -394,15 +394,16 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
// 记录日志
// String targetName = salarySobPO.getName() + ":" + SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth());
// LoggerContext loggerContext = new LoggerContext<>();
// loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98837, "添加薪资核算人员"));
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98837, "添加薪资核算人员") + ":" + targetName);
// loggerContext.setNewValueList(salaryAcctEmployeePOS);
// salaryAcctRecordLoggerTemplate.write(loggerContext);
String targetName = salarySobPO.getName() + ":" + SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth());
LoggerContext loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98837, "添加薪资核算人员"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98837, "添加薪资核算人员") + ":" + targetName);
loggerContext.setNewValueList(salaryAcctEmployeePOS);
salaryAcctRecordLoggerTemplate.write(loggerContext);
}
@Override
@ -460,15 +461,16 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98769, "薪资账套不存在或已被删除"));
}
// 记录日志
// String targetName = salarySobPO.getName() + ":" + SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth());
// LoggerContext loggerContext = new LoggerContext<>();
// loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98835, "删除薪资核算人员"));
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98835, "删除薪资核算人员") + ":" + targetName);
// loggerContext.setOldValueList(salaryAcctEmployeePOS);
// salaryAcctRecordLoggerTemplate.write(loggerContext);
String targetName = salarySobPO.getName() + ":" + SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth());
LoggerContext loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98835, "删除薪资核算人员"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98835, "删除薪资核算人员") + ":" + targetName);
loggerContext.setOldValueList(salaryAcctEmployeePOS);
salaryAcctRecordLoggerTemplate.write(loggerContext);
}
@Override

View File

@ -5,8 +5,11 @@ import com.cloudstore.dev.api.util.Util_DataCache;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.salary.component.WeaTableColumnGroup;
import com.engine.salary.config.SalaryElogConfig;
import com.engine.salary.constant.SalaryDefaultTenantConstant;
import com.engine.salary.constant.SalaryItemConstant;
import com.engine.salary.elog.entity.dto.LoggerContext;
import com.engine.salary.elog.util.LoggerTemplate;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.report.po.SalaryAcctResultReportPO;
import com.engine.salary.entity.salaryacct.bo.SalaryAcctEmployeeBO;
@ -24,7 +27,9 @@ import com.engine.salary.entity.salarysob.dto.SalarySobItemAggregateDTO;
import com.engine.salary.entity.salarysob.po.SalarySobEmpFieldPO;
import com.engine.salary.entity.salarysob.po.SalarySobItemGroupPO;
import com.engine.salary.entity.salarysob.po.SalarySobItemPO;
import com.engine.salary.entity.salarysob.po.SalarySobPO;
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
import com.engine.salary.enums.OperateTypeEnum;
import com.engine.salary.enums.UserStatusEnum;
import com.engine.salary.enums.salaryaccounting.LockStatusEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctResultDataSourceEnum;
@ -38,6 +43,7 @@ import com.engine.salary.sys.enums.OpenEnum;
import com.engine.salary.sys.service.SalarySysConfService;
import com.engine.salary.sys.service.impl.SalarySysConfServiceImpl;
import com.engine.salary.util.JsonUtil;
import com.engine.salary.util.SalaryDateUtil;
import com.engine.salary.util.SalaryEntityUtil;
import com.engine.salary.util.SalaryI18nUtil;
import com.engine.salary.util.excel.ExcelParseHelper;
@ -81,12 +87,16 @@ import static com.engine.salary.util.excel.ExcelSupport.EXCEL_TYPE_XLSX;
**/
@Slf4j
public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExcelService {
private final LoggerTemplate salaryAcctRecordLoggerTemplate = SalaryElogConfig.salaryAcctRecordLoggerTemplate();
private SalaryAcctRecordService getSalaryAcctRecordService(User user) {
return (SalaryAcctRecordService) ServiceUtil.getService(SalaryAcctRecordServiceImpl.class, user);
}
private SalarySobService getSalarySobService(User user) {
return ServiceUtil.getService(SalarySobServiceImpl.class, user);
}
private SalaryAcctEmployeeService getSalaryAcctEmployeeService(User user) {
return (SalaryAcctEmployeeService) ServiceUtil.getService(SalaryAcctEmployeeServiceImpl.class, user);
}
@ -237,7 +247,20 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
// 3.表数据
List<List<Object>> lists = convert2ExcelRow(salaryAcctEmployees);
rows.addAll(lists);
// return ExcelUtil.genWorkbookV2(rows, sheetName);
// 记录日志
SalaryAcctRecordPO salaryAcctRecordPO = getSalaryAcctRecordService(user).getById(queryParam.getSalaryAcctRecordId());
SalarySobPO salarySobPO = getSalarySobService(user).getById(salaryAcctRecordPO.getSalarySobId());
String targetName = salarySobPO.getName() + ":" + SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth());
LoggerContext loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98837, "导出环比增加人员"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98837, "导出环比增加人员") + ":" + targetName);
salaryAcctRecordLoggerTemplate.write(loggerContext);
return ExcelUtilPlus.genWorkbookV2(rows, sheetName);
}
@ -289,10 +312,10 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
//判断是否按照自定义字段导出表头
List<WeaTableColumnGroup> finalWeaTableColumns = new ArrayList<>();
if (queryParam.getSalaryItemIds() != null ) {
if (queryParam.getSalaryItemIds() != null) {
//获取人员基本信息字段汇总
Collection<Map<String, String>> empFieldList = getSalarySobItemWrapper(user).empFieldList();
List<String> empFieldIdList= new ArrayList<>();
List<String> empFieldIdList = new ArrayList<>();
empFieldList.forEach(f -> empFieldIdList.add(f.get("id")));
// 必须选择导出所需的薪资项目
if (CollectionUtils.isEmpty(queryParam.getSalaryItemIds())) {
@ -311,7 +334,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
columnGroupItem.setChildren(childrenColumns);
finalWeaTableColumns.add(columnGroupItem);
}
} else if (empFieldIdList.contains(tableColumn.getColumn()) || headerRangeList.contains(tableColumn.getColumn())){
} else if (empFieldIdList.contains(tableColumn.getColumn()) || headerRangeList.contains(tableColumn.getColumn())) {
finalWeaTableColumns.add(columnGroupItem);
}
@ -334,12 +357,12 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
if (openSum != null && StringUtils.isNotBlank(openSum.getConfValue()) && OpenEnum.parseByValue(openSum.getConfValue()) == OpenEnum.OPEN) {
total = true;
Map<String, Object> sumRow = getSalaryAcctResultService(user).sumRow(queryParam);
sumRow.forEach((k,v) -> {
sumRow.forEach((k, v) -> {
if (NumberUtils.isCreatable(v.toString())) {
sumRow.put(k,new BigDecimal(v.toString()));
sumRow.put(k, new BigDecimal(v.toString()));
}
});
if(sumRow !=null){
if (sumRow != null) {
sumRow.put("taxAgentName", "总计");
resultMapList.add(sumRow);
}
@ -354,7 +377,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
for (WeaTableColumnGroup weaTableColumn : headerColumnGroup) {
String fieldType = (String) map.getOrDefault(weaTableColumn.getColumn().toString() + DATA_TYPE_SUFFIX, StringUtils.EMPTY);
if (StringUtils.equals("number", fieldType)) {
row.add(new BigDecimal(StringUtils.isBlank(map.get(weaTableColumn.getColumn()).toString()) ? "0" :map.get(weaTableColumn.getColumn()).toString()));
row.add(new BigDecimal(StringUtils.isBlank(map.get(weaTableColumn.getColumn()).toString()) ? "0" : map.get(weaTableColumn.getColumn()).toString()));
} else {
row.add(map.getOrDefault(weaTableColumn.getColumn(), StringUtils.EMPTY));
}
@ -380,7 +403,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
SalaryAcctRecordPO byId = getSalaryAcctRecordService(user).getById(salaryAcctRecordPO.getId());
boolean isBackCalc = Objects.equals(byId.getBackCalcStatus(), 1);
// 查询薪资账套下的薪资项目+员工信息字段
SalarySobItemAggregateDTO salarySobItemAggregateDTO = getSalarySobItemService(user).getAggregateWithItemHideBySalarySobId(salaryAcctRecordPO.getSalarySobId(),isBackCalc);
SalarySobItemAggregateDTO salarySobItemAggregateDTO = getSalarySobItemService(user).getAggregateWithItemHideBySalarySobId(salaryAcctRecordPO.getSalarySobId(), isBackCalc);
// 构建薪资核算结果列表表头
List<WeaTableColumnGroup> columnList = SalaryAcctResultBO.buildTableColumns(salarySobItemAggregateDTO, ListUtils.emptyIfNull(salaryAcctRecordPO.getLockSalaryItemIds()));
// 获取固定列头数
@ -450,27 +473,27 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
SalaryAcctResultBO.sortItem(salarySobItemPOMap);
// 根据账套分组封装薪资项目的值
List<SalaryAcctImportFieldDTO.ImportFieldByGroupDTO> itemsByGroup = new ArrayList<>();
for(SalarySobItemGroupPO groupPO : salarySobItemGroupPOS){
List<SalarySobItemPO> groupItems = salarySobItemPOMap.getOrDefault(groupPO.getId(),Collections.emptyList());
for (SalarySobItemGroupPO groupPO : salarySobItemGroupPOS) {
List<SalarySobItemPO> groupItems = salarySobItemPOMap.getOrDefault(groupPO.getId(), Collections.emptyList());
List<SalaryAcctImportFieldDTO.ImportFieldDTO> items = groupItems.stream()
.map(salarySobItemPO -> SalaryAcctImportFieldDTO.ImportFieldDTO.builder()
.salaryItemId(salarySobItemPO.getSalaryItemId())
.salaryItemName(Optional.ofNullable(salaryItemMap.get(salarySobItemPO.getSalaryItemId())).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY))
.dataType(Optional.ofNullable(salaryItemMap.get(salarySobItemPO.getSalaryItemId())).map(SalaryItemPO::getDataType).orElse(SalaryDataTypeEnum.NUMBER.getValue()))
.build())
.salaryItemId(salarySobItemPO.getSalaryItemId())
.salaryItemName(Optional.ofNullable(salaryItemMap.get(salarySobItemPO.getSalaryItemId())).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY))
.dataType(Optional.ofNullable(salaryItemMap.get(salarySobItemPO.getSalaryItemId())).map(SalaryItemPO::getDataType).orElse(SalaryDataTypeEnum.NUMBER.getValue()))
.build())
.collect(Collectors.toList());
itemsByGroup.add(SalaryAcctImportFieldDTO.ImportFieldByGroupDTO.builder()
.salarySobItemGroupId(groupPO.getId())
.salarySobItemGroupName(groupPO.getName())
.salaryItems(items)
.sortedIndex(groupPO.getSortedIndex()).build() );
.sortedIndex(groupPO.getSortedIndex()).build());
}
// 未分类
List<SalarySobItemPO> noGroupItems = salarySobItemPOMap.getOrDefault(0L, Collections.emptyList());
if(CollectionUtils.isNotEmpty(noGroupItems)){
if (CollectionUtils.isNotEmpty(noGroupItems)) {
List<SalaryAcctImportFieldDTO.ImportFieldDTO> items = noGroupItems.stream()
.map(salarySobItemPO ->SalaryAcctImportFieldDTO.ImportFieldDTO.builder()
.map(salarySobItemPO -> SalaryAcctImportFieldDTO.ImportFieldDTO.builder()
.salaryItemId(salarySobItemPO.getSalaryItemId())
.salaryItemName(Optional.ofNullable(salaryItemMap.get(salarySobItemPO.getSalaryItemId())).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY))
.dataType(Optional.ofNullable(salaryItemMap.get(salarySobItemPO.getSalaryItemId())).map(SalaryItemPO::getDataType).orElse(SalaryDataTypeEnum.NUMBER.getValue()))
@ -510,7 +533,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
// .collect(Collectors.toList());
// 缓存勾选
String cacheKey = user.getUID() + SalaryItemConstant.RESULT_IMPORT_FIELD_SIGN;
String cacheValue = (String)Util_DataCache.getObjVal(cacheKey);
String cacheValue = (String) Util_DataCache.getObjVal(cacheKey);
List<Long> checkItems = JsonUtil.parseList(cacheValue, Long.class) == null ? new ArrayList<>() : JsonUtil.parseList(cacheValue, Long.class);
// 转换成dto
// return SalaryAcctImportFieldDTO.builder().formulaItems(formulaItems).sqlItems(sqlItems).inputItems(inputItems).checkItems(checkItems).build();
@ -541,8 +564,8 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
SalaryAcctResultBO.sortItem(salarySobItemPOMap);
// 根据账套分组封装薪资项目的值
List<SalaryAcctImportFieldDTO.ImportFieldByGroupDTO> itemsByGroup = new ArrayList<>();
for(SalarySobItemGroupPO groupPO : salarySobItemGroupPOS){
List<SalarySobItemPO> groupItems = salarySobItemPOMap.getOrDefault(groupPO.getId(),Collections.emptyList());
for (SalarySobItemGroupPO groupPO : salarySobItemGroupPOS) {
List<SalarySobItemPO> groupItems = salarySobItemPOMap.getOrDefault(groupPO.getId(), Collections.emptyList());
List<SalaryAcctImportFieldDTO.ImportFieldDTO> items = groupItems.stream()
.map(salarySobItemPO -> SalaryAcctImportFieldDTO.ImportFieldDTO.builder()
.salaryItemId(salarySobItemPO.getSalaryItemId())
@ -554,13 +577,13 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
.salarySobItemGroupId(groupPO.getId())
.salarySobItemGroupName(groupPO.getName())
.salaryItems(items)
.sortedIndex(groupPO.getSortedIndex()).build() );
.sortedIndex(groupPO.getSortedIndex()).build());
}
// 未分类
List<SalarySobItemPO> noGroupItems = salarySobItemPOMap.getOrDefault(0L, Collections.emptyList());
if(CollectionUtils.isNotEmpty(noGroupItems)){
if (CollectionUtils.isNotEmpty(noGroupItems)) {
List<SalaryAcctImportFieldDTO.ImportFieldDTO> items = noGroupItems.stream()
.map(salarySobItemPO ->SalaryAcctImportFieldDTO.ImportFieldDTO.builder()
.map(salarySobItemPO -> SalaryAcctImportFieldDTO.ImportFieldDTO.builder()
.salaryItemId(salarySobItemPO.getSalaryItemId())
.salaryItemName(Optional.ofNullable(salaryItemMap.get(salarySobItemPO.getSalaryItemId())).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY))
.build())
@ -574,7 +597,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
}
// 缓存勾选
String cacheKey = user.getUID() + SalaryItemConstant.RESULT_EXPORT_FIELD_SIGN;
String cacheValue = (String)Util_DataCache.getObjVal(cacheKey);
String cacheValue = (String) Util_DataCache.getObjVal(cacheKey);
List<Long> checkItems = JsonUtil.parseList(cacheValue, Long.class) == null ? new ArrayList<>() : JsonUtil.parseList(cacheValue, Long.class);
// 转换成dto
// return SalaryAcctImportFieldDTO.builder().formulaItems(formulaItems).sqlItems(sqlItems).inputItems(inputItems).checkItems(checkItems).build();
@ -586,7 +609,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
// ValidUtil.doValidator(param);
// 从缓存中获取所选的薪资项目
String cacheKey = user.getUID() + SalaryItemConstant.RESULT_IMPORT_FIELD_SIGN;
String cacheValue = (String)Util_DataCache.getObjVal(cacheKey);
String cacheValue = (String) Util_DataCache.getObjVal(cacheKey);
List<Long> checkItems = JsonUtil.parseList(cacheValue, Long.class) == null ? new ArrayList<>() : JsonUtil.parseList(cacheValue, Long.class);
// 必须选择导入模板所需的薪资项目
if (CollectionUtils.isEmpty(checkItems)) {
@ -691,7 +714,6 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
}
@Override
public XSSFWorkbook exportComparisonResult(SalaryComparisonResultQueryParam queryParam) {
ValidUtil.doValidator(queryParam);
@ -827,7 +849,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
// 查询薪资核算所用的薪资账套的员工信息字段
List<SalarySobEmpFieldPO> salarySobEmpFieldPOS = getSalarySobEmpFieldService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId());
List<SalarySobEmpFieldDTO> salarySobEmpFieldDTOS = new SalarySobItemAggregateBO().buildEmpField(salarySobEmpFieldPOS);
salarySobEmpFieldDTOS.stream().forEach(empField -> finalWeaTableColumns.add(new WeaTableColumnGroup("150", SalaryI18nUtil.getI18nLabel(0, empField.getFieldName()), SalaryI18nUtil.getI18nLabel(0, empField.getFieldName()))));
salarySobEmpFieldDTOS.stream().forEach(empField -> finalWeaTableColumns.add(new WeaTableColumnGroup("150", SalaryI18nUtil.getI18nLabel(0, empField.getFieldName()), SalaryI18nUtil.getI18nLabel(0, empField.getFieldName()))));
for (WeaTableColumnGroup tableColumn : weaTableColumns) {
WeaTableColumnGroup columnGroupItem = (WeaTableColumnGroup) tableColumn;
if (columnGroupItem.getChildren() != null) {
@ -992,16 +1014,16 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
// List<String> headers = ExcelSupport.getSheetHeader(sheet, 0);
List<String> headers;
// if (StringUtils.equals("importSalaryAcctResult", importType)) {
headers = ExcelSupport.getSheetHeader(sheet, 1);
headers = ExcelSupport.getSheetHeader(sheet, 1);
// } else {
// headers = ExcelSupport.getSheetHeader(sheet, 0);
// }
// 处理数值
// 处理数值
// List<Map<String, Object>> data = ExcelParseHelper.parse2Map(sheet, 1);
List<Map<String, Object>> data;
// if (StringUtils.equals("importSalaryAcctResult", importType)) {
data = ExcelParseHelper.parse2Map(sheet, 2, 1);
data = ExcelParseHelper.parse2Map(sheet, 2, 1);
// } else {
// data = ExcelParseHelper.parse2Map(sheet, 1);
// }
@ -1248,7 +1270,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
getSalaryComparisonResultService(user).deleteBySalaryAcctRecordIds(Collections.singleton(salaryAcctRecordId));
if (CollectionUtils.isNotEmpty(excelAcctResults)) {
excelAcctResults.stream().forEach(result -> {
if(StringUtils.isEmpty(result.getResultValue())){
if (StringUtils.isEmpty(result.getResultValue())) {
result.setResultValue(" ");
}
});
@ -1282,7 +1304,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
}
}
SalarySysConfPO autoLock = getSalarySysConfService(user).getOneByCode(SalarySysConstant.EDIT_IMPORT_AUTO_LOCK);
if(autoLock != null && StringUtils.equals(autoLock.getConfValue(),"1")){
if (autoLock != null && StringUtils.equals(autoLock.getConfValue(), "1")) {
// 导入的列都自动锁定
SalaryAcctResultUpdateLockStatusParam updateLockStatusParam = SalaryAcctResultUpdateLockStatusParam.builder()
.salaryItemIds(excelSalaryItemIds)
@ -1305,7 +1327,8 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
}
/**
* 存储薪资核算结果数据来源日志
* 存储薪资核算结果数据来源日志
*
* @param salaryAcctResults
*/
private void handleSalaryAcctResultLog(List<SalaryAcctResultPO> salaryAcctResults) {
@ -1315,14 +1338,14 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
List<SalaryAcctResultPO> salaryAcctResultList = getSalaryAcctResultService(user).listByAcctEmployeeIdsAndSalaryItemIds(salaryAcctEmpIds, salaryItemIds);
Long uid = Long.valueOf(user.getUID());
List<SalaryAcctResultLogPO> needInsertList = SalaryAcctResultLogBO.buildSalaryAcctResultLog(salaryAcctResultList, uid, SalaryAcctResultDataSourceEnum.IMPORT);
if(CollectionUtils.isNotEmpty(needInsertList)){
if (CollectionUtils.isNotEmpty(needInsertList)) {
getSalaryAcctResultLogService(user).batchInsert(needInsertList);
}
}
/**
* @description
* @return void
* @description
* @author Harryxzy
* @date 2022/12/26 22:36
*/
@ -1330,7 +1353,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
Map<String, List<SalaryAcctResultPO>> deleteMap = SalaryEntityUtil.group2Map(deleteResults, po -> po.getSalaryAcctEmpId() + "-" + po.getSalaryItemId());
salaryAcctResults.stream().forEach(result -> {
List<SalaryAcctResultPO> salaryAcctResultPOS = deleteMap.get(result.getSalaryAcctEmpId() + "-" + result.getSalaryItemId());
if(salaryAcctResultPOS != null && salaryAcctResultPOS.size() > 0 ){
if (salaryAcctResultPOS != null && salaryAcctResultPOS.size() > 0) {
result.setOriginResultValue(salaryAcctResultPOS.get(0).getOriginResultValue());
}
});

View File

@ -4,9 +4,9 @@ import com.api.formmode.mybatis.util.SqlProxyHandle;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.salary.common.LocalDateRange;
import com.engine.salary.constant.SalaryDefaultTenantConstant;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.report.po.SalaryAcctResultReportPO;
import com.engine.salary.config.SalaryElogConfig;
import com.engine.salary.elog.entity.dto.LoggerContext;
import com.engine.salary.elog.util.LoggerTemplate;
import com.engine.salary.entity.salaryBill.po.SalarySendPO;
import com.engine.salary.entity.salaryacct.bo.SalaryAcctRecordBO;
import com.engine.salary.entity.salaryacct.param.SalaryAcctRecordQueryParam;
@ -15,8 +15,8 @@ import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
import com.engine.salary.entity.salarysob.dto.SalarySobCycleDTO;
import com.engine.salary.entity.salarysob.po.SalarySobItemPO;
import com.engine.salary.entity.salarysob.po.SalarySobPO;
import com.engine.salary.enums.OperateTypeEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum;
import com.engine.salary.enums.salarysob.IncomeCategoryEnum;
import com.engine.salary.exception.SalaryRunTimeException;
@ -35,14 +35,11 @@ import com.engine.salary.util.db.MapperProxyFactory;
import com.engine.salary.util.page.PageInfo;
import com.engine.salary.util.page.SalaryPageUtil;
import com.engine.salary.util.valid.ValidUtil;
import dm.jdbc.util.IdGenerator;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
import weaver.hrm.User;
import java.time.YearMonth;
import java.util.*;
import java.util.stream.Collectors;
@ -55,7 +52,7 @@ import java.util.stream.Collectors;
* @version 1.0
**/
public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRecordService {
private final LoggerTemplate salaryAcctRecordLoggerTemplate = SalaryElogConfig.salaryAcctRecordLoggerTemplate();
private SalaryAcctRecordMapper getSalaryAcctRecordMapper() {
return MapperProxyFactory.getProxy(SalaryAcctRecordMapper.class);
@ -303,15 +300,16 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe
// 初始化薪资核算人员
getSalaryAcctEmployeeService(user).initBySalaryAcctRecord(salaryAcctRecordPO);
// 记录日志
// String targetName = getLogTargetNameById(salaryAcctRecordPO.getId(), tenantKey);
// LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
// loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98768, "新建薪资核算"));
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98768, "新建薪资核算") + ": " + targetName);
// loggerContext.setNewValues(salaryAcctRecordPO);
// salaryAcctRecordLoggerTemplate.write(loggerContext);
String targetName = getLogTargetNameById(salaryAcctRecordPO.getId());
LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98768, "新建薪资核算"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98768, "新建薪资核算") + ": " + targetName);
loggerContext.setNewValues(salaryAcctRecordPO);
salaryAcctRecordLoggerTemplate.write(loggerContext);
// 返回薪资核算记录id
return salaryAcctRecordPO.getId();
}
@ -534,18 +532,19 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe
}
// 记录日志
// salaryAcctRecordPOS.forEach(salaryAcctRecordPO -> {
// SalarySobPO salarySobPO = salarySobPOMap.get(salaryAcctRecordPO.getSalarySobId());
// String targetName = salarySobPO.getName() + SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth());
// LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
// loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98821, "删除薪资核算"));
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98821, "删除薪资核算") + ":" + targetName);
// loggerContext.setNewValues(salaryAcctRecordPO);
// salaryAcctRecordLoggerTemplate.write(loggerContext);
// });
salaryAcctRecordPOS.forEach(salaryAcctRecordPO -> {
SalarySobPO salarySobPO = salarySobPOMap.get(salaryAcctRecordPO.getSalarySobId());
String targetName = salarySobPO.getName() + SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth());
LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98821, "删除薪资核算"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98821, "删除薪资核算") + ":" + targetName);
loggerContext.setNewValues(salaryAcctRecordPO);
salaryAcctRecordLoggerTemplate.write(loggerContext);
});
}
@Override
@ -577,15 +576,16 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe
// 记录日志
// String targetName = getLogTargetNameById(salaryAcctRecordId);
// LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
// loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98817, "薪资核算归档"));
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98817, "薪资核算归档") + ": " + targetName);
// loggerContext.setNewValues(salaryAcctRecordPO);
// salaryAcctRecordLoggerTemplate.write(loggerContext);
String targetName = getLogTargetNameById(salaryAcctRecordId);
LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98817, "薪资核算归档"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98817, "薪资核算归档") + ": " + targetName);
loggerContext.setNewValues(salaryAcctRecordPO);
salaryAcctRecordLoggerTemplate.write(loggerContext);
}
@Override
@ -626,15 +626,16 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe
// salaryAcctRecordPO.setUpdateTime(new Date());
// getSalaryAcctRecordMapper().updateIgnoreNull(salaryAcctRecordPO);
// 记录日志
// String targetName = getLogTargetNameById(salaryAcctRecordPO.getId(), tenantKey);
// LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
// loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98820, "重新核算"));
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98820, "重新核算") + ": " + targetName);
// loggerContext.setNewValues(salaryAcctRecordPO);
// salaryAcctRecordLoggerTemplate.write(loggerContext);
String targetName = getLogTargetNameById(salaryAcctRecordPO.getId());
LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId("" + salaryAcctRecordPO.getId());
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98820, "重新核算"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98820, "重新核算") + ": " + targetName);
loggerContext.setNewValues(salaryAcctRecordPO);
salaryAcctRecordLoggerTemplate.write(loggerContext);
}

View File

@ -4,7 +4,10 @@ import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.salary.cache.SalaryCacheKey;
import com.engine.salary.common.LocalDateRange;
import com.engine.salary.config.SalaryElogConfig;
import com.engine.salary.constant.SalaryDefaultTenantConstant;
import com.engine.salary.elog.entity.dto.LoggerContext;
import com.engine.salary.elog.util.LoggerTemplate;
import com.engine.salary.encrypt.EncryptUtil;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.datacollection.dto.AttendQuoteFieldListDTO;
@ -23,9 +26,10 @@ import com.engine.salary.entity.salarysob.dto.*;
import com.engine.salary.entity.salarysob.po.*;
import com.engine.salary.entity.taxagent.po.TaxAgentAdminPO;
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
import com.engine.salary.enums.OperateTypeEnum;
import com.engine.salary.enums.SalaryValueTypeEnum;
import com.engine.salary.enums.common.FilterEnum;
import com.engine.salary.enums.UserStatusEnum;
import com.engine.salary.enums.common.FilterEnum;
import com.engine.salary.enums.salaryaccounting.LockStatusEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctResultDataSourceEnum;
@ -82,6 +86,7 @@ import java.util.stream.Collectors;
**/
@Slf4j
public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctResultService {
private final LoggerTemplate salaryAcctRecordLoggerTemplate = SalaryElogConfig.salaryAcctRecordLoggerTemplate();
private EncryptUtil encryptUtil = new EncryptUtil();
private SalaryAcctResultMapper getSalaryAcctResultMapper() {
@ -145,7 +150,6 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
private SalaryAcctResultTempService getSalaryAcctResultTempService(User user) {
return ServiceUtil.getService(SalaryAcctResultTempServiceImpl.class, user);
}
// private LoggerTemplate salaryAcctRecordLoggerTemplate;
private SIAccountService getSIAccountService(User user) {
return ServiceUtil.getService(SIAccountServiceImpl.class, user);
@ -355,7 +359,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
//其他条件
List<SalaryAcctResultQueryParam.OtherCondition> otherConditions = queryParam.getOtherConditions();
if(CollectionUtils.isNotEmpty(otherConditions)){
if (CollectionUtils.isNotEmpty(otherConditions)) {
List<Long> items = SalaryEntityUtil.properties(otherConditions, SalaryAcctResultQueryParam.OtherCondition::getItemId, Collectors.toList());
List<SalaryAcctResultPO> list = listBySalaryAcctRecordIdsAndSalaryItemIds(Collections.singletonList(queryParam.getSalaryAcctRecordId()), items);
for (int i = 0; i < otherConditions.size(); i++) {
@ -646,21 +650,22 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
saveSalaryAcctResultLog(salaryAcctResultPOSOld, salaryAcctResultPOS);
// 查询操作日志的targetName
// String targetName = getSalaryAcctRecordService(user).getLogTargetNameById(salaryAcctEmployeePO.getSalaryAcctRecordId());
// 查询人员信息
// DataCollectionEmployee simpleEmployee = getSalaryEmployeeService(user).getEmployeeById(salaryAcctEmployeePO.getEmployeeId());
// 查询个税扣缴义务人
// TaxAgentPO taxAgentPO = getTaxAgentService(user).getById(salaryAcctEmployeePO.getTaxAgentId());
// 记录日志
// String operateDesc = simpleEmployee.getUsername() + "(" + Optional.ofNullable(taxAgentPO).map(TaxAgentPO::getName).orElse(StringUtils.EMPTY) + ")";
// LoggerContext<SalaryCheckResultPO> loggerContext = new LoggerContext<>();
// loggerContext.setTargetId(String.valueOf(salaryAcctEmployeePO.getSalaryAcctRecordId()));
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(95783, "编辑薪资核算结果") + ": " + operateDesc);
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(95783, "编辑薪资核算结果") + ": " + operateDesc);
// loggerContext.setNewValueList(Lists.newArrayList(salaryAcctResultPOS));
// salaryAcctRecordLoggerTemplate.write(loggerContext);
String targetName = getSalaryAcctRecordService(user).getLogTargetNameById(salaryAcctEmployeePO.getSalaryAcctRecordId());
// 查询人员信息
DataCollectionEmployee simpleEmployee = getSalaryEmployeeService(user).getEmployeeById(salaryAcctEmployeePO.getEmployeeId());
// 查询个税扣缴义务人
TaxAgentPO taxAgentPO = getTaxAgentService(user).getById(salaryAcctEmployeePO.getTaxAgentId());
// 记录日志
String operateDesc = simpleEmployee.getUsername() + "(" + Optional.ofNullable(taxAgentPO).map(TaxAgentPO::getName).orElse(StringUtils.EMPTY) + ")";
LoggerContext<SalaryCheckResultPO> loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId(String.valueOf(salaryAcctEmployeePO.getSalaryAcctRecordId()));
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(95783, "编辑薪资核算结果") + ": " + operateDesc);
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(95783, "编辑薪资核算结果") + ": " + operateDesc);
loggerContext.setNewValueList(Lists.newArrayList(salaryAcctResultPOS));
salaryAcctRecordLoggerTemplate.write(loggerContext);
}
/**
@ -856,14 +861,15 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
}.start();
// 记录日志
// 查询操作日志的targetName
// String targetName = getSalaryAcctRecordService(user).getLogTargetNameById(calculateParam.getSalaryAcctRecordId());
// LoggerContext<SalaryCheckResultPO> loggerContext = new LoggerContext<>();
// loggerContext.setTargetId(String.valueOf(calculateParam.getSalaryAcctRecordId()));
// loggerContext.setTargetName(targetName);
// loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
// loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(95783, "薪资核算"));
// loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(95783, "薪资核算"));
// salaryAcctRecordLoggerTemplate.write(loggerContext);
String targetName = getSalaryAcctRecordService(user).getLogTargetNameById(calculateParam.getSalaryAcctRecordId());
LoggerContext<SalaryCheckResultPO> loggerContext = new LoggerContext<>();
loggerContext.setUser(user);
loggerContext.setTargetId(String.valueOf(calculateParam.getSalaryAcctRecordId()));
loggerContext.setTargetName(targetName);
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(95783, "薪资核算"));
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(95783, "薪资核算"));
salaryAcctRecordLoggerTemplate.write(loggerContext);
} catch (Exception e) {
log.info("薪资核算出错:{}", e.getMessage(), e);
// throw new SalaryRunTimeException(e);
@ -1191,7 +1197,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
batchSave(needInsertList);
// 报表入库前先删除
getSalaryAcctReportService(user).deleteByAcctEmployeeIdsAndSalaryItemIds(param.getIdList(), Collections.singletonList(param.getSalaryItemId()) );
getSalaryAcctReportService(user).deleteByAcctEmployeeIdsAndSalaryItemIds(param.getIdList(), Collections.singletonList(param.getSalaryItemId()));
getSalaryAcctReportService(user).batchSave(salaryAcctResultReportPOS);
}