From 4fe3a61d5d28afc77af4bcf25f6c2eb483c2d9f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Mon, 4 Jul 2022 18:58:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=A0=B8=E7=AE=97=E5=B7=A5?= =?UTF-8?q?=E5=8F=B7=E4=B8=8D=E6=98=BE=E7=A4=BA=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salaryacct/bo/SalaryAcctFormulaBO.java | 1 + .../service/SalaryAcctReportService.java | 143 ++++++++++++++++++ .../impl/SalaryAcctRecordServiceImpl.java | 5 + .../impl/SalaryAcctResultServiceImpl.java | 10 +- 4 files changed, 157 insertions(+), 2 deletions(-) create mode 100644 src/com/engine/salary/service/SalaryAcctReportService.java diff --git a/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctFormulaBO.java b/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctFormulaBO.java index 4f421abae..d29320d61 100644 --- a/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctFormulaBO.java +++ b/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctFormulaBO.java @@ -82,6 +82,7 @@ public class SalaryAcctFormulaBO { .jobcall(simpleEmployee.getJobcall()) .companystartdate(simpleEmployee.getCompanystartdate()) .birthday(simpleEmployee.getBirthday()) + .workcode(simpleEmployee.getWorkcode()) .build(); return JsonUtil.parseMap(JsonUtil.toJsonString(formulaEmployee), String.class); } diff --git a/src/com/engine/salary/service/SalaryAcctReportService.java b/src/com/engine/salary/service/SalaryAcctReportService.java new file mode 100644 index 000000000..a7aa55a99 --- /dev/null +++ b/src/com/engine/salary/service/SalaryAcctReportService.java @@ -0,0 +1,143 @@ +package com.engine.salary.service; + +import com.engine.salary.entity.datacollection.DataCollectionEmployee; +import com.engine.salary.entity.salaryacct.dto.ConsolidatedTaxDetailDTO; +import com.engine.salary.entity.salaryacct.dto.SalaryAcctResultDetailDTO; +import com.engine.salary.entity.salaryacct.param.SalaryAcctCalculateParam; +import com.engine.salary.entity.salaryacct.param.SalaryAcctResultQueryParam; +import com.engine.salary.entity.salaryacct.param.SalaryAcctResultSaveParam; +import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO; +import com.engine.salary.util.page.PageInfo; + +import java.util.Collection; +import java.util.List; +import java.util.Map; + +/** + * 薪资核算结果 + *

Copyright: Copyright (c) 2022

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ +public interface SalaryAcctReportService { + + /** + * 根据薪资核算记录的id查询薪资核算结果 + * + * @param salaryAcctRecordIds 薪资核算记录的id + * @return + */ + List listBySalaryAcctRecordIds(Collection salaryAcctRecordIds); + + /** + * 根据薪资核算人员的主键id查询薪资核算结果 + * + * @param salaryAcctEmployeeId 薪资核算人员的主键id + * @return + */ + List listBySalaryAcctEmployeeId(Long salaryAcctEmployeeId); + + /** + * 根据薪资核算人员的主键id查询薪资核算结果 + * + * @param salaryAcctEmployeeIds 薪资核算人员的主键id + * @return + */ + List listBySalaryAcctEmployeeIds(Collection salaryAcctEmployeeIds); + + /** + * 根据薪资核算id、人员id查询薪资核算结果 + * + * @param salaryAcctRecordIds 薪资核算记录id + * @param employeeIds 人员id + * @return + */ + List listBySalaryAcctRecordIdsAndEmployeeIds(Collection salaryAcctRecordIds, Collection employeeIds); + + /** + * 根据薪资核算人员的主键id查询薪资核算结果 + * + * @param salaryAcctEmployeeId 薪资核算人员的主键id + * @return + */ + SalaryAcctResultDetailDTO getBySalaryAcctEmployeeId(Long salaryAcctEmployeeId); + + /** + * 根据薪资核算结果列表查询条件查询薪资核算结果(分页) + * + * @param queryParam 列表查询条件 + * @return + */ + PageInfo> listPageByParam(SalaryAcctResultQueryParam queryParam); + + /** + * 根据薪资核算结果列表查询条件查询薪资核算结果 + * + * @param queryParam 列表查询条件 + * @return + */ + List> listByParam(SalaryAcctResultQueryParam queryParam); + + /** + * 获取合并计税详情 + * + * @param salaryAcctEmployeeId 薪资核算人员 + * @return + */ + ConsolidatedTaxDetailDTO getConsolidatedTaxDetail(Long salaryAcctEmployeeId); + + /** + * 保存 + * + * @param saveParam 保存参数 + */ + void save(SalaryAcctResultSaveParam saveParam); + + /** + * 批量保存 + * + * @param salaryAcctResultPOS 薪资核算结果 + */ + void batchSave(Collection salaryAcctResultPOS); + + /** + * 根据薪资核算人员id删除薪资核算结果 + * + * @param salaryAcctEmployeeIds 薪资核算人员id + */ + void deleteBySalaryAcctEmployeeIds(Collection salaryAcctEmployeeIds); + + /** + * 根据薪资核算人员id、薪资项目id删除薪资核算结果 + * + * @param salaryAcctEmployeeIds 薪资核算人员id + * @param salaryItemIds 薪资项目id + */ + void deleteByAcctEmployeeIdsAndSalaryItemIds(Collection salaryAcctEmployeeIds, Collection salaryItemIds); + + /** + * 根据薪资核算记录id删除薪资核算结果 + * + * @param salaryAcctRecordIds 薪资核算记录id + */ + void deleteBySalaryAcctRecordIds(Collection salaryAcctRecordIds); + + /** + * 薪资核算 + * + * @param calculateParam + * @param simpleEmployee + */ + void calculate(SalaryAcctCalculateParam calculateParam, DataCollectionEmployee simpleEmployee); + + /** + * 根据薪资核算记录的id、个税扣缴义务人查询薪资核算结果 + * + * @param salaryAcctRecordIds 薪资核算记录的id + * @param taxAgentIds 个税扣缴义务人id + * @return + */ + List listBySalaryAcctRecordIdsAndTaxAgentIds(Collection salaryAcctRecordIds, Collection taxAgentIds); +} diff --git a/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java index c6e01e002..5a4fe3845 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java @@ -421,6 +421,11 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe getSalaryAcctRecordMapper().updateIgnoreNull(salaryAcctRecordPO); // 生成工资单 getSalarySendService(user).generateSalaryBill(salaryAcctRecordId); + + //todo 薪酬核算完成,将数据存储到非加密表,删除人员信息,补充:分部、部门、岗位等其他字段,供数据中心引用 + + + // 记录日志 // String targetName = getLogTargetNameById(salaryAcctRecordId); // LoggerContext loggerContext = new LoggerContext<>(); diff --git a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java index 19ee2b84e..ca8073e6c 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java @@ -353,11 +353,15 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe SalaryAcctResultPOEncrypt.encryptList(salaryAcctResultPOS); List> partition = Lists.partition(salaryAcctResultPOS, 100); partition.forEach(getSalaryAcctResultMapper()::batchInsert); + + //todo 报表 } + + // 查询操作日志的targetName - String targetName = getSalaryAcctRecordService(user).getLogTargetNameById(salaryAcctEmployeePO.getSalaryAcctRecordId()); +// String targetName = getSalaryAcctRecordService(user).getLogTargetNameById(salaryAcctEmployeePO.getSalaryAcctRecordId()); // 查询人员信息 - DataCollectionEmployee simpleEmployee = getSalaryEmployeeService(user).getEmployeeById(salaryAcctEmployeePO.getEmployeeId()); +// DataCollectionEmployee simpleEmployee = getSalaryEmployeeService(user).getEmployeeById(salaryAcctEmployeePO.getEmployeeId()); // 查询个税扣缴义务人 // TaxAgentPO taxAgentPO = getTaxAgentService(user).getById(salaryAcctEmployeePO.getTaxAgentId()); // 记录日志 @@ -380,6 +384,8 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe SalaryAcctResultPOEncrypt.encryptList(list); List> partition = Lists.partition(list, 100); partition.forEach(getSalaryAcctResultMapper()::batchInsert); + + //todo 报表 } }