diff --git a/src/com/engine/salary/enums/common/SalaryLogGroupTypeEnum.java b/src/com/engine/salary/enums/common/SalaryLogGroupTypeEnum.java
new file mode 100644
index 000000000..5f4f684f6
--- /dev/null
+++ b/src/com/engine/salary/enums/common/SalaryLogGroupTypeEnum.java
@@ -0,0 +1,52 @@
+package com.engine.salary.enums.common;
+
+import com.engine.salary.enums.BaseEnum;
+import lombok.AllArgsConstructor;
+
+/**
+ * 薪酬日志的项目
+ *
Copyright: Copyright (c) 2024
+ * Company: 泛微软件
+ *
+ * @author qiantao
+ * @version 1.0
+ **/
+@AllArgsConstructor
+public enum SalaryLogGroupTypeEnum implements BaseEnum {
+
+ // 其他业务数据相关
+ CUS_BIZ_SETTING_FORM("1", "自定义业务数据表", 254950),
+ CUS_BIZ_SETTING_FIELD("2", "自定义业务数据表字段", 254951),
+ // 年终奖金相关
+ ANNUAL_BONUS_PLAN("3","最优年终奖计税方案", 247010),
+ ANNUAL_BONUS_ADDUP("4","合并计税基础数据",250255),
+ ANNUAL_BONUS_STRATEGY("5","优化方案详情",250256),
+ // 薪资核算相关
+ SALARY_ACCT_RECORD("6","薪资核算", 95783),
+ SALARY_ACCT_EMPLOYEE("7", "薪资核算人员", 203828),
+ SALARY_ACCT_RESULT_VALUE("8","薪资核算结果",187411),
+ SALARY_ACCT_CHECK_RESULT("9","薪资核算结果校验异常", 268617),
+ SALARY_ACCT_COMPARISON_RESULT("10","薪资核算线下对比结果", 268616),
+ ;
+
+ private final String value;
+
+ private final String defaultLabel;
+
+ private final Integer labelId;
+
+ @Override
+ public String getValue() {
+ return value;
+ }
+
+ @Override
+ public Integer getLabelId() {
+ return labelId;
+ }
+
+ @Override
+ public String getDefaultLabel() {
+ return defaultLabel;
+ }
+}
diff --git a/src/com/engine/salary/enums/common/SalaryLogOperateTypeEnum.java b/src/com/engine/salary/enums/common/SalaryLogOperateTypeEnum.java
new file mode 100644
index 000000000..b42cf2a9d
--- /dev/null
+++ b/src/com/engine/salary/enums/common/SalaryLogOperateTypeEnum.java
@@ -0,0 +1,57 @@
+package com.engine.salary.enums.common;
+
+import com.engine.salary.enums.BaseEnum;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 薪酬模块日志的操作类型
+ * Copyright: Copyright (c) 2024
+ * Company: 泛微软件
+ *
+ * @author qiantao
+ * @version 1.0
+ **/
+@Getter
+@AllArgsConstructor
+public enum SalaryLogOperateTypeEnum implements BaseEnum {
+
+ VIEW("0","查看",90821),
+ ADD("1", "新建", 94607),
+ UPDATE("2", "更新", 249295),
+ DELETE("3", "删除", 87061),
+ FILE("4", "归档", 92144),
+ CANCEL_FILE("5", "取消归档", 145989),
+ CLEAR("6", "一键清空", 158473),
+ CALCULATE("7", "核算", 94146),
+ SYNC("8", "同步", 93950),
+ EXCEL_IMPORT("9", "导入", 87622),
+ RE_CALCULATE("10", "重新核算", 98820),
+ BATCH_EDIT("11","批量编辑", 158819),
+ CHECK("12","校验", 95786),
+ CALC_TAX_ONLINE("13","在线计算个税", 268191),
+ GET_CALC_TAX_FEEDBACK("14","获取个税计算反馈", 267984),
+ EXCEL_EXPORT("15","导出",17416)
+ ;
+
+ private final String value;
+
+ private final String defaultLabel;
+
+ private final Integer labelId;
+
+ @Override
+ public String getValue() {
+ return value;
+ }
+
+ @Override
+ public Integer getLabelId() {
+ return labelId;
+ }
+
+ @Override
+ public String getDefaultLabel() {
+ return defaultLabel;
+ }
+}
diff --git a/src/com/engine/salary/service/SalaryAcctResultService.java b/src/com/engine/salary/service/SalaryAcctResultService.java
index 07485a3ef..d537c56c6 100644
--- a/src/com/engine/salary/service/SalaryAcctResultService.java
+++ b/src/com/engine/salary/service/SalaryAcctResultService.java
@@ -5,7 +5,9 @@ import com.engine.salary.entity.salaryacct.dto.ConsolidatedTaxDetailDTO;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctResultDetailDTO;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctResultListColumnDTO;
import com.engine.salary.entity.salaryacct.param.*;
+import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
+import com.engine.salary.enums.common.SalaryLogOperateTypeEnum;
import com.engine.salary.util.page.PageInfo;
import java.util.Collection;
@@ -211,4 +213,15 @@ public interface SalaryAcctResultService {
* @param param
*/
void batchUpdate(SalaryAcctResultBatchUpdateParam param);
+
+ /**
+ * 记录日志
+ *
+ * @param salaryAcctRecord
+ * @param newResultValueMap
+ * @param operateType
+ */
+ void writeBatchLog(SalaryAcctRecordPO salaryAcctRecord,
+ Map newResultValueMap,
+ SalaryLogOperateTypeEnum operateType);
}
diff --git a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java
index 17bc144cd..ee4112a37 100644
--- a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java
+++ b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java
@@ -30,6 +30,8 @@ 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.common.FilterEnum;
+import com.engine.salary.enums.common.SalaryLogGroupTypeEnum;
+import com.engine.salary.enums.common.SalaryLogOperateTypeEnum;
import com.engine.salary.enums.salaryaccounting.LockStatusEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctResultDataSourceEnum;
@@ -1236,4 +1238,21 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
}
}
+
+ @Override
+ public void writeBatchLog(SalaryAcctRecordPO salaryAcctRecord,
+ Map newResultValueMap,
+ SalaryLogOperateTypeEnum operateType) {
+ LoggerContext