diff --git a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java index 94e9897f4..51fa669c3 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java @@ -1252,15 +1252,21 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe List salaryAcctRecordPOS = getSalaryAcctRecordService(user).listSome(SalaryAcctRecordPO.builder().salarySobId(salarySobId).salaryMonth(salaryMonth).build()); List recordIds = SalaryEntityUtil.properties(salaryAcctRecordPOS, SalaryAcctRecordPO::getId, Collectors.toList()); - if(CollUtil.isEmpty(recordIds)){ + if (CollUtil.isEmpty(recordIds)) { return new ArrayList<>(); } - + List salaryAcctResultPOS = new ArrayList<>(); SalaryAcctResultPO resultParam = SalaryAcctResultPO.builder().salaryAcctRecordIds(recordIds).build(); - if(CollUtil.isNotEmpty(employeeIds)){ - resultParam.setEmployeeIds(employeeIds); + if (CollUtil.isNotEmpty(employeeIds)) { + List> partition = Lists.partition(employeeIds, 500); + for (List ids : partition){ + resultParam.setEmployeeIds(ids); + List acctResultPOS = getSalaryAcctResultMapper().listSome(resultParam); + salaryAcctResultPOS.addAll(acctResultPOS); + } + } else { + salaryAcctResultPOS = getSalaryAcctResultMapper().listSome(resultParam); } - List salaryAcctResultPOS = getSalaryAcctResultMapper().listSome(resultParam); encryptUtil.decryptList(salaryAcctResultPOS, SalaryAcctResultPO.class); return salaryAcctResultPOS;