From 59cb9278060b6f1aaf7d90620e384824e98794d2 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Wed, 16 Apr 2025 11:24:58 +0800 Subject: [PATCH] =?UTF-8?q?2100bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/service/SalaryAcctEmployeeService.java | 2 +- .../impl/SalaryAcctEmployeeServiceImpl.java | 15 ++++++++++----- .../service/impl/SalaryAcctResultServiceImpl.java | 2 +- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/com/engine/salary/service/SalaryAcctEmployeeService.java b/src/com/engine/salary/service/SalaryAcctEmployeeService.java index 2d858a9ab..5d1c9448f 100644 --- a/src/com/engine/salary/service/SalaryAcctEmployeeService.java +++ b/src/com/engine/salary/service/SalaryAcctEmployeeService.java @@ -44,7 +44,7 @@ public interface SalaryAcctEmployeeService { * @param ids 主键id * @return */ - List listByIds(Collection ids); + List listByIds(List ids); /** * 根据薪资核算记录id查询薪资核算人员 diff --git a/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java index 6c53a7f9f..35d5f2353 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java @@ -16,8 +16,8 @@ import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; 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.SalarySobItemPO; import com.engine.salary.entity.salarysob.param.SalarySobQueryParam; +import com.engine.salary.entity.salarysob.po.SalarySobItemPO; import com.engine.salary.entity.salarysob.po.SalarySobPO; import com.engine.salary.entity.taxagent.param.TaxAgentQueryParam; import com.engine.salary.entity.taxagent.po.TaxAgentPO; @@ -31,7 +31,6 @@ import com.engine.salary.mapper.salarysob.SobTaxLinkMapper; import com.engine.salary.mapper.sys.SalarySysConfMapper; import com.engine.salary.report.entity.param.SalaryStatisticsReportDataQueryParam; import com.engine.salary.service.*; -import com.engine.salary.sys.constant.SalarySysConstant; import com.engine.salary.service.auth.AuthService; import com.engine.salary.service.auth.AuthServiceImpl; import com.engine.salary.sys.constant.SalarySysConstant; @@ -148,8 +147,14 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct } @Override - public List listByIds(Collection ids) { - return getSalaryAcctEmployeeMapper().listSome(SalaryAcctEmployeePO.builder().ids(ids).build()); + public List listByIds(List ids) { + List> partition = Lists.partition(ids, 300); + List resultList = new ArrayList<>(); + partition.forEach(part -> { + resultList.addAll(getSalaryAcctEmployeeMapper().listSome(SalaryAcctEmployeePO.builder().ids(part).build())); + }); + + return resultList; } @Override @@ -833,7 +838,7 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct @Override public void lockEmp(SalaryAcctResultUpdateLockStatusParam updateParam) { - List salaryAcctEmployees = listByIds(updateParam.getAcctEmpIds()); + List salaryAcctEmployees = listByIds(updateParam.getAcctEmpIds().stream().collect(Collectors.toList())); if (CollectionUtils.isEmpty(salaryAcctEmployees)) { return; } diff --git a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java index 5e9ba7a5e..74594533e 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java @@ -835,7 +835,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe if (CollectionUtils.isEmpty(calculateParam.getIds())) { salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user).listBySalaryAcctRecordId(salaryAcctRecordPO.getId()); } else { - salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user).listByIds(calculateParam.getIds()); + salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user).listByIds(calculateParam.getIds().stream().collect(Collectors.toList())); } if (CollectionUtils.isEmpty(salaryAcctEmployeePOS)) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(103378, "薪资核算人员不能为空"));