钱智-考勤引用根据扣缴义务人过滤条件

This commit is contained in:
钱涛 2025-10-29 14:02:28 +08:00
parent e1106de20c
commit 49d6f2f13b
2 changed files with 14 additions and 0 deletions

View File

@ -31,4 +31,6 @@ public class AttendQuoteQueryParam extends BaseQueryParam {
//薪资所属月
private List<String> salaryYearMonth;
private List<Date> salaryYearMonthDate;
private List<Long> taxAgentIds;
}

View File

@ -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<AttendQuoteListDTO> list = getAttendQuoteMapper().list(queryParam);
list = getAuthService(user).auth(list, AuthFilterTypeEnum.DATA_OPT, AttendQuoteListDTO.class);
//扣缴义务人搜索
List<Long> taxAgentIds = queryParam.getTaxAgentIds();
if(CollUtil.isNotEmpty(taxAgentIds)){
List<SalarySobPO> salarySobPOS = getSalarySobService(user).listByTaxAgentIds(taxAgentIds);
Set<Long> 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);
}