diff --git a/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java index 10549ddc3..e3f358dac 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctRecordServiceImpl.java @@ -47,6 +47,7 @@ import com.google.common.collect.Sets; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.math.NumberUtils; +import weaver.general.BaseBean; import weaver.hrm.User; import java.util.*; @@ -568,7 +569,19 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe Set declareTaxAgents = SalaryEntityUtil.properties(sameYearTaxDeclarations, e -> e.getTaxAgentId() + "-" + e.getTaxCycle()); Map> sameYearSalaryAcctTaxAgentMap = SalaryEntityUtil .group2Map(sameYearSalaryAcctTaxAgents, SalaryAcctTaxAgentPO::getTaxAgentId); + // 联特 获取不需要验证报税的义务人id + BaseBean baseBean = new BaseBean(); + String notDeclareTaxAgentIdStr = baseBean.getPropValue("ltSalary", "not_declaret_tax_agent_id"); + List notDeclareTaxAgentIdList = new ArrayList<>(); + if (StringUtils.isNotBlank(notDeclareTaxAgentIdStr)) { + notDeclareTaxAgentIdList.addAll(Arrays.stream(notDeclareTaxAgentIdStr.split(",")).filter(NumberUtils::isCreatable).map(Long::new).collect(Collectors.toList())); + } + + for (SalaryAcctTaxAgentPO salaryAcctTaxAgent : salaryAcctTaxAgents) { + if (notDeclareTaxAgentIdList.contains(salaryAcctTaxAgent.getTaxAgentId())) { + continue; + } List salaryAcctTaxAgentList = sameYearSalaryAcctTaxAgentMap.getOrDefault(salaryAcctTaxAgent.getTaxAgentId(), Collections.emptyList()) .stream() .filter(e -> !Objects.equals(salaryAcctTaxAgent.getSalaryAcctRecordId(), e.getSalaryAcctRecordId()))