From 32be67e022e755256ddfb1f4bb52c3e758fbc61f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Fri, 14 Feb 2025 14:50:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=BF=E6=8D=A2listAllTaxAgents=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/service/impl/RemoteExcelServiceImpl.java | 6 ++++-- .../salary/service/impl/SalaryArchiveServiceImpl.java | 9 +++++---- .../engine/salary/wrapper/SalaryArchiveItemWrapper.java | 6 +----- src/com/engine/salary/wrapper/SalarySobItemWrapper.java | 9 ++++++--- src/com/engine/salary/wrapper/TaxAgentWrapper.java | 6 ++++-- 5 files changed, 20 insertions(+), 16 deletions(-) diff --git a/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java b/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java index 04b20f202..e40399497 100644 --- a/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java +++ b/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java @@ -399,8 +399,10 @@ public class RemoteExcelServiceImpl extends Service implements RemoteExcelServic } else { salaryItems = getSalaryItemService(user).listByIds(salaryItemIds); } - Set taxAgentIds = getTaxAgentService(user).listAllTaxAgents((long) user.getUID()) - .stream().map(TaxAgentPO::getId).collect(Collectors.toSet()); + + TaxAgentQueryParam param = TaxAgentQueryParam.builder().build(); + param.setFilterType(AuthFilterTypeEnum.QUERY_DATA); + Set taxAgentIds = getTaxAgentService(user).listAuth(param).stream().map(TaxAgentPO::getId).collect(Collectors.toSet()); return salaryItems.stream() .filter(e -> e.getUseInEmployeeSalary() == 1) .filter(e-> getSalaryItemService(user).filterInRange(taxAgentIds, e)) diff --git a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java index 06dbfe8d3..96e0e8659 100644 --- a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java @@ -22,6 +22,7 @@ import com.engine.salary.entity.salaryarchive.po.SalaryArchivePO; import com.engine.salary.entity.salaryarchive.po.SalaryArchiveTaxAgentPO; import com.engine.salary.entity.salaryitem.po.SalaryItemPO; import com.engine.salary.entity.taxagent.dto.TaxAgentManageRangeEmployeeDTO; +import com.engine.salary.entity.taxagent.param.TaxAgentQueryParam; import com.engine.salary.entity.taxagent.po.TaxAgentEmpChangePO; import com.engine.salary.entity.taxagent.po.TaxAgentPO; import com.engine.salary.enums.OperateTypeEnum; @@ -313,11 +314,11 @@ public class SalaryArchiveServiceImpl extends Service implements SalaryArchiveSe return; } // 当前可以管辖的人员 - Collection taxAgentList = new ArrayList<>(); if (currentEmployeeId != 1L) { - taxAgentList = getTaxAgentService(user).listAllTaxAgents(currentEmployeeId); - Collection finalTaxAgentList = taxAgentList; - taxAgentEmpChangeList = taxAgentEmpChangeList.stream().filter(f -> finalTaxAgentList.stream().anyMatch(e -> e.getId().equals(f.getTaxAgentId()))).collect(Collectors.toList()); + TaxAgentQueryParam param = TaxAgentQueryParam.builder().build(); + param.setFilterType(AuthFilterTypeEnum.ADMIN_DATA); + Collection taxAgentList =getTaxAgentService(user).listAuth(param); + taxAgentEmpChangeList = taxAgentEmpChangeList.stream().filter(f -> taxAgentList.stream().anyMatch(e -> e.getId().equals(f.getTaxAgentId()))).collect(Collectors.toList()); if (CollectionUtils.isEmpty(taxAgentEmpChangeList)) { return; } diff --git a/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java b/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java index 4ff541091..d53341ea3 100644 --- a/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java @@ -12,7 +12,6 @@ import com.engine.salary.entity.salaryarchive.dto.SingleSalaryItemAdjustRecordLi import com.engine.salary.entity.salaryarchive.param.*; import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO; import com.engine.salary.entity.salaryitem.po.SalaryItemPO; -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.auth.AuthFilterTypeEnum; @@ -102,11 +101,8 @@ public class SalaryArchiveItemWrapper extends Service implements SalaryArchiveIt columns.add(SalaryI18nUtil.getI18nLabel(85434, "调整后")); // 获取所有可被引用的薪资项目 List salaryItemList = getSalaryArchiveItemService(user).getCanAdjustSalaryItems(); - Set taxAgentIds = getTaxAgentService(user).listAllTaxAgents((long) user.getUID()) - .stream().map(TaxAgentPO::getId) - .collect(Collectors.toSet()); + List> salaryItems = salaryItemList.stream() - .filter(po -> getSalaryItemService(user).filterInRange(taxAgentIds, po)) .map(m -> { Map salaryItemMap = new LinkedHashMap<>(); salaryItemMap.put("id", String.valueOf(m.getId())); diff --git a/src/com/engine/salary/wrapper/SalarySobItemWrapper.java b/src/com/engine/salary/wrapper/SalarySobItemWrapper.java index 07006c6a4..d8bece097 100644 --- a/src/com/engine/salary/wrapper/SalarySobItemWrapper.java +++ b/src/com/engine/salary/wrapper/SalarySobItemWrapper.java @@ -15,7 +15,9 @@ import com.engine.salary.entity.salarysob.dto.SalarySobItemFormDTO; import com.engine.salary.entity.salarysob.param.SalarySobItemSaveParam; import com.engine.salary.entity.salarysob.po.SalarySobItemGroupPO; import com.engine.salary.entity.salarysob.po.SalarySobItemPO; +import com.engine.salary.entity.taxagent.param.TaxAgentQueryParam; import com.engine.salary.entity.taxagent.po.TaxAgentPO; +import com.engine.salary.enums.auth.AuthFilterTypeEnum; import com.engine.salary.service.*; import com.engine.salary.service.impl.*; import com.engine.salary.util.SalaryEntityUtil; @@ -77,9 +79,10 @@ public class SalarySobItemWrapper extends Service { List salaryItemList = getSalaryItemService(user).listByParam(queryParam); - Set taxAgentIds = getTaxAgentService(user).listAllTaxAgents((long) user.getUID()) - .stream().map(TaxAgentPO::getId) - .collect(Collectors.toSet()); + TaxAgentQueryParam param = TaxAgentQueryParam.builder().build(); + param.setFilterType(AuthFilterTypeEnum.QUERY_DATA); + Set taxAgentIds = getTaxAgentService(user).listAuth(param).stream().map(TaxAgentPO::getId).collect(Collectors.toSet()); + salaryItemList = salaryItemList.stream() .filter(po -> getSalaryItemService(user).filterInRange(taxAgentIds, po)) .collect(Collectors.toList()); diff --git a/src/com/engine/salary/wrapper/TaxAgentWrapper.java b/src/com/engine/salary/wrapper/TaxAgentWrapper.java index 2849139c3..2ea504ee9 100644 --- a/src/com/engine/salary/wrapper/TaxAgentWrapper.java +++ b/src/com/engine/salary/wrapper/TaxAgentWrapper.java @@ -14,6 +14,7 @@ import com.engine.salary.entity.taxagent.po.TaxAgentAdminPO; import com.engine.salary.entity.taxagent.po.TaxAgentExtRangePO; import com.engine.salary.entity.taxagent.po.TaxAgentPO; import com.engine.salary.enums.UserStatusEnum; +import com.engine.salary.enums.auth.AuthFilterTypeEnum; import com.engine.salary.enums.salarysob.TargetTypeEnum; import com.engine.salary.exception.SalaryRunTimeException; import com.engine.salary.service.*; @@ -446,11 +447,12 @@ public class TaxAgentWrapper extends Service { */ public String syncRange() { long currentEmployeeId = (long) user.getUID(); - List taxAgentIds = this.getTaxAgentService(user).listAllTaxAgents(currentEmployeeId).stream().map(TaxAgentPO::getId).collect(Collectors.toList()); - String index = SalaryCacheKey.TAX_AGENT_MANAGE_RANGE_SYNC + "-" + currentEmployeeId; String syncRange = Util.null2String(Util_DataCache.getObjVal(index)); if (StringUtils.isEmpty(syncRange)) { + TaxAgentQueryParam param = TaxAgentQueryParam.builder().build(); + param.setFilterType(AuthFilterTypeEnum.ADMIN_DATA); + List taxAgentIds = getTaxAgentService(user).listAuth(param).stream().map(TaxAgentPO::getId).collect(Collectors.toList()); getTaxAgentManageRangeService(user).syncManageRange(taxAgentIds, index); } else { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(135788, "人员范围同步过于频繁,请稍后再试"));