diff --git a/src/com/engine/salary/entity/datacollection/param/AttendQuoteQueryParam.java b/src/com/engine/salary/entity/datacollection/param/AttendQuoteQueryParam.java index 117c6bb56..54fecc40d 100644 --- a/src/com/engine/salary/entity/datacollection/param/AttendQuoteQueryParam.java +++ b/src/com/engine/salary/entity/datacollection/param/AttendQuoteQueryParam.java @@ -31,4 +31,6 @@ public class AttendQuoteQueryParam extends BaseQueryParam { //薪资所属月 private List salaryYearMonth; private List salaryYearMonthDate; + + private List taxAgentIds; } diff --git a/src/com/engine/salary/service/impl/AttendQuoteServiceImpl.java b/src/com/engine/salary/service/impl/AttendQuoteServiceImpl.java index 5a0e2f28a..90d089c05 100644 --- a/src/com/engine/salary/service/impl/AttendQuoteServiceImpl.java +++ b/src/com/engine/salary/service/impl/AttendQuoteServiceImpl.java @@ -1,5 +1,6 @@ package com.engine.salary.service.impl; +import cn.hutool.core.collection.CollUtil; import com.engine.common.util.ServiceUtil; import com.engine.core.impl.Service; import com.engine.salary.biz.AttendQuoteBiz; @@ -10,6 +11,7 @@ import com.engine.salary.entity.datacollection.dto.AttendQuoteListDTO; import com.engine.salary.entity.datacollection.param.AttendQuoteQueryParam; import com.engine.salary.entity.datacollection.po.AttendQuotePO; import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO; +import com.engine.salary.entity.salarysob.po.SalarySobPO; import com.engine.salary.enums.auth.AuthFilterTypeEnum; import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum; import com.engine.salary.exception.SalaryRunTimeException; @@ -21,6 +23,7 @@ import com.engine.salary.service.TaxAgentService; import com.engine.salary.service.auth.AuthService; import com.engine.salary.service.auth.AuthServiceImpl; import com.engine.salary.util.SalaryDateUtil; +import com.engine.salary.util.SalaryEntityUtil; import com.engine.salary.util.SalaryI18nUtil; import com.engine.salary.util.SalaryLoggerUtil; import com.engine.salary.util.db.MapperProxyFactory; @@ -34,6 +37,7 @@ import java.time.YearMonth; import java.util.Collection; import java.util.List; import java.util.Optional; +import java.util.Set; import java.util.concurrent.atomic.AtomicReference; import java.util.stream.Collectors; @@ -74,6 +78,14 @@ public class AttendQuoteServiceImpl extends Service implements AttendQuoteServic List list = getAttendQuoteMapper().list(queryParam); list = getAuthService(user).auth(list, AuthFilterTypeEnum.DATA_OPT, AttendQuoteListDTO.class); + //扣缴义务人搜索 + List taxAgentIds = queryParam.getTaxAgentIds(); + if(CollUtil.isNotEmpty(taxAgentIds)){ + List salarySobPOS = getSalarySobService(user).listByTaxAgentIds(taxAgentIds); + Set sobIds = SalaryEntityUtil.properties(salarySobPOS, SalarySobPO::getId); + list = list.stream().filter(e -> sobIds.contains(e.getSalarySobId())).collect(Collectors.toList()); + } + return SalaryPageUtil.buildPage(queryParam.getCurrent(), queryParam.getPageSize(), list, AttendQuoteListDTO.class); }