在线算税时校验人员是否已报送

This commit is contained in:
钱涛 2024-06-19 09:53:46 +08:00
parent af8cce8525
commit d52e146001
13 changed files with 295 additions and 31 deletions

View File

@ -0,0 +1,37 @@
package com.engine.salary.entity.salaryacct.dto;
import com.engine.salary.annotation.TableTitle;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 未报送人员列表
* <p>Copyright: Copyright (c) 2022</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AbnormalEmployeeListDTO {
//主键id
private Long id;
//人员id
private Long employeeId;
//姓名
@TableTitle(title = "姓名", dataIndex = "employeeName", key = "employeeName")
private String employeeName;
//工号")
@TableTitle(title = "工号", dataIndex = "jobNum", key = "jobNum")
private String jobNum;
}

View File

@ -0,0 +1,39 @@
package com.engine.salary.entity.salaryacct.param;
import com.engine.salary.common.BaseQueryParam;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* 未报送人员列表
* <p>Copyright: Copyright (c) 2023</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AbnormalEmployeeListQueryParam extends BaseQueryParam {
//工号姓名身份证号码")
private String keyword;
//个税申报记录id")
private Long recordId;
@JsonIgnore
//个税扣缴义务人id")
private Long taxAgentId;
@JsonIgnore
//税款所属期")
private Date taxCycle;
}

View File

@ -65,4 +65,8 @@ public class SalarySobCycleDTO {
private Date attendCycleFromDate; private Date attendCycleFromDate;
@SalaryFormulaVar(defaultLabel = "考勤周期结束日期", labelId = 86321, dataType = "string") @SalaryFormulaVar(defaultLabel = "考勤周期结束日期", labelId = 86321, dataType = "string")
private Date attendCycleEndDate; private Date attendCycleEndDate;
//存在异常人员数量
private Integer abnormalEmployeeNum;
} }

View File

@ -8,12 +8,14 @@ import com.engine.salary.remote.tax.response.declare.GetDeclareTaxResultFeedback
import com.engine.salary.util.SalaryEntityUtil; import com.engine.salary.util.SalaryEntityUtil;
import com.engine.salary.util.excel.ExcelUtil; import com.engine.salary.util.excel.ExcelUtil;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.gson.Gson;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import weaver.general.Util; import weaver.general.Util;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.lang.reflect.Type;
import java.util.*; import java.util.*;
/** /**
@ -38,6 +40,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getZcgzxj().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getZcgzxj().getSscglb();
@ -45,6 +48,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -55,7 +61,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -70,6 +76,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getLwbclb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getLwbclb().getSscglb();
@ -77,6 +84,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -87,7 +97,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -103,6 +113,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQnycxjjsslb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQnycxjjsslb().getSscglb();
@ -110,6 +121,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -120,7 +134,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -136,6 +150,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getNtycxbcjlb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getNtycxbcjlb().getSscglb();
@ -143,6 +158,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -153,7 +171,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -169,6 +187,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getJcldhtycxbcjlb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getJcldhtycxbcjlb().getSscglb();
@ -176,6 +195,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -186,7 +208,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -202,6 +224,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getGrgqjl().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getGrgqjl().getSscglb();
@ -209,6 +232,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -219,7 +245,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -235,6 +261,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQynj().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQynj().getSscglb();
@ -242,6 +269,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -252,7 +282,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -268,6 +298,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getBxyxy().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getBxyxy().getSscglb();
@ -275,6 +306,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -285,7 +319,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -301,6 +335,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getZqjjr().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getZqjjr().getSscglb();
@ -308,6 +343,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -318,7 +356,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -334,6 +372,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQtlxlwbc().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQtlxlwbc().getSscglb();
@ -341,6 +380,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -351,7 +393,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -367,6 +409,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQtflxlwbc().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getQtflxlwbc().getSscglb();
@ -374,6 +417,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -384,7 +430,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -400,6 +446,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getGcsdlb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getGcsdlb().getSscglb();
@ -407,6 +454,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -417,7 +467,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -433,6 +483,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getTxq().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getZhsd().getTxq().getSscglb();
@ -440,6 +491,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.zhsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -450,7 +504,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -466,6 +520,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getWjgzxjlb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getWjgzxjlb().getSscglb();
@ -473,6 +528,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -483,7 +541,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -499,6 +557,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getWjrysyjjlb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getWjrysyjjlb().getSscglb();
@ -506,6 +565,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -516,7 +578,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -532,6 +594,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getLwbclb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getLwbclb().getSscglb();
@ -539,6 +602,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -549,7 +615,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }
@ -564,6 +630,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
@Override @Override
public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) { public Map<Long, SalarySobTaxRuleDTO> parseGetASynIndividualIncomeTaxFeedbackResponse(GetASynIndividualIncomeTaxFeedbackResponse declareTaxResultFeedbackResponse, List<EmployeeDeclarePO> employeeDeclares, SalarySobTaxRuleDTO taxRuleDTO) {
Gson gs = new Gson();
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = taxRuleDTO.getTaxRules();
List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getJcldhtycxbcjlb().getSscglb(); List<GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result> sscglb = declareTaxResultFeedbackResponse.getBody().getFjmsd().getJcldhtycxbcjlb().getSscglb();
@ -571,6 +638,9 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>(); Map<Long, SalarySobTaxRuleDTO> resultMap = new HashMap<>();
for (EmployeeDeclarePO employeeDeclare : employeeDeclares) { for (EmployeeDeclarePO employeeDeclare : employeeDeclares) {
GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum()); GetASynIndividualIncomeTaxFeedbackResponse.Body.fjmsd.ssjgdx.result result = idNoResultMap.get(employeeDeclare.getCardNum());
if (result == null) {
continue;
}
taxRules.forEach(rule -> { taxRules.forEach(rule -> {
String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1); String getter = "get" + rule.getTaxIndex().substring(0, 1).toUpperCase() + rule.getTaxIndex().substring(1);
try { try {
@ -581,7 +651,7 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
log.error("getTaxErr no such method {}", getter, ex); log.error("getTaxErr no such method {}", getter, ex);
} }
}); });
resultMap.put(employeeDeclare.getEmployeeId(), taxRuleDTO); resultMap.put(employeeDeclare.getEmployeeId(), gs.fromJson(gs.toJson(taxRuleDTO), (Type) SalarySobTaxRuleDTO.class));
} }
return resultMap; return resultMap;
} }

View File

@ -1,6 +1,8 @@
package com.engine.salary.mapper.salaryacct; package com.engine.salary.mapper.salaryacct;
import com.engine.salary.entity.salaryacct.dto.AbnormalEmployeeListDTO;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO; import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO;
import com.engine.salary.entity.salaryacct.param.AbnormalEmployeeListQueryParam;
import com.engine.salary.entity.salaryacct.param.SalaryAcctEmployeeQueryParam; import com.engine.salary.entity.salaryacct.param.SalaryAcctEmployeeQueryParam;
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -122,4 +124,8 @@ public interface SalaryAcctEmployeeMapper {
void lockByAcctEmpIds(@Param("lockStatus") Integer lockStatus, @Param("acctEmpIds") Set<Long> acctEmpIds); void lockByAcctEmpIds(@Param("lockStatus") Integer lockStatus, @Param("acctEmpIds") Set<Long> acctEmpIds);
void lockByRecordId(@Param("lockStatus") Integer lockStatus, @Param("recordId") Long recordId); void lockByRecordId(@Param("lockStatus") Integer lockStatus, @Param("recordId") Long recordId);
List<AbnormalEmployeeListDTO> listPage4NotDeclareByParam(@Param("param") AbnormalEmployeeListQueryParam queryParam);
int countNotDeclareByParam(@Param("param") AbnormalEmployeeListQueryParam queryParam);
} }

View File

@ -1281,7 +1281,47 @@
UPDATE hrsa_salary_acct_emp UPDATE hrsa_salary_acct_emp
SET lock_status = #{lockStatus} SET lock_status = #{lockStatus}
WHERE delete_type = 0 WHERE delete_type = 0
AND salary_acct_record_id =#{recordId} AND salary_acct_record_id = #{recordId}
</update> </update>
<select id="listPage4NotDeclareByParam"
resultType="com.engine.salary.entity.salaryacct.dto.AbnormalEmployeeListDTO">
SELECT t.id, e.id as employeeId
, e.LASTNAME as username
, e.workcode as workcode
FROM hrsa_salary_acct_emp t
LEFT JOIN hrmresource e ON e.id = t.employee_id
WHERE delete_type = 0
AND salary_acct_record_id = #{param.recordId}
AND employee_id NOT IN (
SELECT employee_id
FROM hrsa_employee_declare hed
WHERE hed.delete_type = 0
AND hed.tax_agent_id = #{param.taxAgentId}
AND hed.tax_cycle = #{param.taxCycle}
AND hed.successfully_declared = 1
AND hed.employment_status = 0
AND hed.declare_status IN (4)
)
</select>
<select id="countNotDeclareByParam" resultType="int">
SELECT count(1)
FROM hrsa_salary_acct_emp t
LEFT JOIN hrmresource e ON e.id = t.employee_id
WHERE delete_type = 0
AND salary_acct_record_id = #{param.recordId}
AND employee_id NOT IN (
SELECT employee_id
FROM hrsa_employee_declare hed
WHERE hed.delete_type = 0
AND hed.tax_agent_id = #{param.taxAgentId}
AND hed.tax_cycle = #{param.taxCycle}
AND hed.successfully_declared = 1
AND hed.employment_status = 0
AND hed.declare_status IN (4)
)
</select>
</mapper> </mapper>

View File

@ -494,7 +494,7 @@ public class GetASynIndividualIncomeTaxFeedbackResponse extends BaseResponse {
/** /**
* 速算扣除数 必填 * 速算扣除数 必填
*/ */
@TaxField(name = "速算扣除数", taxIndex = "sskcs ") @TaxField(name = "速算扣除数", taxIndex = "sskcs")
private BigDecimal sskcs; private BigDecimal sskcs;
/** /**

View File

@ -1,5 +1,6 @@
package com.engine.salary.service; package com.engine.salary.service;
import com.engine.salary.entity.salaryacct.dto.AbnormalEmployeeListDTO;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO; import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO;
import com.engine.salary.entity.salaryacct.param.*; import com.engine.salary.entity.salaryacct.param.*;
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
@ -264,4 +265,14 @@ public interface SalaryAcctEmployeeService {
*/ */
void lockEmp(SalaryAcctResultUpdateLockStatusParam updateParam); void lockEmp(SalaryAcctResultUpdateLockStatusParam updateParam);
/**
* 未报送人员
* @param queryParam
* @return
*/
PageInfo<AbnormalEmployeeListDTO> listPage4NotDeclareByParam(AbnormalEmployeeListQueryParam queryParam);
int countNotDeclareByParam(AbnormalEmployeeListQueryParam queryParam);
} }

View File

@ -5,11 +5,12 @@ import cn.hutool.core.date.DateUtil;
import com.api.formmode.mybatis.util.SqlProxyHandle; import com.api.formmode.mybatis.util.SqlProxyHandle;
import com.engine.common.util.ServiceUtil; import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service; import com.engine.core.impl.Service;
import com.engine.hrmelog.entity.dto.LoggerContext;
import com.engine.salary.config.SalaryElogConfig; import com.engine.salary.config.SalaryElogConfig;
import com.engine.salary.constant.SalaryDefaultTenantConstant; import com.engine.salary.constant.SalaryDefaultTenantConstant;
import com.engine.hrmelog.entity.dto.LoggerContext;
import com.engine.salary.entity.datacollection.DataCollectionEmployee; import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.salaryacct.bo.SalaryAcctEmployeeBO; import com.engine.salary.entity.salaryacct.bo.SalaryAcctEmployeeBO;
import com.engine.salary.entity.salaryacct.dto.AbnormalEmployeeListDTO;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO; import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO;
import com.engine.salary.entity.salaryacct.param.*; import com.engine.salary.entity.salaryacct.param.*;
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
@ -788,4 +789,30 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
} }
} }
@Override
public PageInfo<AbnormalEmployeeListDTO> listPage4NotDeclareByParam(AbnormalEmployeeListQueryParam queryParam) {
Long recordId = queryParam.getRecordId();
SalaryAcctRecordPO recordPO = getSalaryAcctRecordService(user).getById(recordId);
SalarySobPO sobPO = getSalarySobService(user).getById(recordPO.getSalarySobId());
queryParam.setTaxCycle(recordPO.getTaxCycle());
queryParam.setTaxAgentId(sobPO.getTaxAgentId());
List<AbnormalEmployeeListDTO> list = getSalaryAcctEmployeeMapper().listPage4NotDeclareByParam(queryParam);
return SalaryPageUtil.buildPage(queryParam.getCurrent(), queryParam.getPageSize(), list, AbnormalEmployeeListDTO.class);
}
@Override
public int countNotDeclareByParam(AbnormalEmployeeListQueryParam queryParam) {
Long recordId = queryParam.getRecordId();
SalaryAcctRecordPO recordPO = getSalaryAcctRecordService(user).getById(recordId);
SalarySobPO sobPO = getSalarySobService(user).getById(recordPO.getSalarySobId());
queryParam.setTaxCycle(recordPO.getTaxCycle());
queryParam.setTaxAgentId(sobPO.getTaxAgentId());
return getSalaryAcctEmployeeMapper().countNotDeclareByParam(queryParam);
}
} }

View File

@ -3,15 +3,13 @@ package com.engine.salary.service.impl;
import com.api.formmode.mybatis.util.SqlProxyHandle; import com.api.formmode.mybatis.util.SqlProxyHandle;
import com.engine.common.util.ServiceUtil; import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service; import com.engine.core.impl.Service;
import com.engine.hrmelog.entity.dto.LoggerContext;
import com.engine.salary.common.LocalDateRange; import com.engine.salary.common.LocalDateRange;
import com.engine.salary.common.YearMonthRange; import com.engine.salary.common.YearMonthRange;
import com.engine.salary.constant.SalaryDefaultTenantConstant;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.report.po.SalaryAcctResultReportPO;
import com.engine.salary.config.SalaryElogConfig; import com.engine.salary.config.SalaryElogConfig;
import com.engine.hrmelog.entity.dto.LoggerContext;
import com.engine.salary.entity.salaryBill.po.SalarySendPO; import com.engine.salary.entity.salaryBill.po.SalarySendPO;
import com.engine.salary.entity.salaryacct.bo.SalaryAcctRecordBO; import com.engine.salary.entity.salaryacct.bo.SalaryAcctRecordBO;
import com.engine.salary.entity.salaryacct.param.AbnormalEmployeeListQueryParam;
import com.engine.salary.entity.salaryacct.param.SalaryAcctRecordQueryParam; import com.engine.salary.entity.salaryacct.param.SalaryAcctRecordQueryParam;
import com.engine.salary.entity.salaryacct.param.SalaryAcctRecordSaveParam; import com.engine.salary.entity.salaryacct.param.SalaryAcctRecordSaveParam;
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
@ -20,9 +18,9 @@ import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
import com.engine.salary.entity.salaryacct.po.SalaryAcctTaxAgentPO; import com.engine.salary.entity.salaryacct.po.SalaryAcctTaxAgentPO;
import com.engine.salary.entity.salarysob.dto.SalarySobCycleDTO; import com.engine.salary.entity.salarysob.dto.SalarySobCycleDTO;
import com.engine.salary.entity.salarysob.po.SalarySobPO; import com.engine.salary.entity.salarysob.po.SalarySobPO;
import com.engine.salary.enums.OperateTypeEnum;
import com.engine.salary.entity.taxagent.po.TaxAgentPO; import com.engine.salary.entity.taxagent.po.TaxAgentPO;
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO; import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO;
import com.engine.salary.enums.OperateTypeEnum;
import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum; import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum;
import com.engine.salary.enums.salarysob.IncomeCategoryEnum; import com.engine.salary.enums.salarysob.IncomeCategoryEnum;
import com.engine.salary.exception.SalaryRunTimeException; import com.engine.salary.exception.SalaryRunTimeException;
@ -41,7 +39,6 @@ import com.engine.salary.util.db.MapperProxyFactory;
import com.engine.salary.util.page.PageInfo; import com.engine.salary.util.page.PageInfo;
import com.engine.salary.util.page.SalaryPageUtil; import com.engine.salary.util.page.SalaryPageUtil;
import com.engine.salary.util.valid.ValidUtil; import com.engine.salary.util.valid.ValidUtil;
import com.engine.salary.util.db.IdGenerator;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
@ -286,8 +283,11 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98747, "薪资核算记录不存在或已被删除")); throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98747, "薪资核算记录不存在或已被删除"));
} }
// 查询薪资核算所用薪资账套的薪资周期考勤周期 // 查询薪资核算所用薪资账套的薪资周期考勤周期
return getSalarySobService(user).getSalarySobCycle(salaryAcctRecordPO.getSalarySobId(), SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth())); SalarySobCycleDTO salarySobCycle = getSalarySobService(user).getSalarySobCycle(salaryAcctRecordPO.getSalarySobId(), SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth()));
int i = getSalaryAcctEmployeeService(user).countNotDeclareByParam(AbnormalEmployeeListQueryParam.builder().recordId(id).build());
salarySobCycle.setAbnormalEmployeeNum(i);
return salarySobCycle;
} }
@Override @Override

View File

@ -7,6 +7,7 @@ import com.engine.salary.constant.SzyhApiConstant;
import com.engine.salary.entity.employeedeclare.po.EmployeeDeclarePO; import com.engine.salary.entity.employeedeclare.po.EmployeeDeclarePO;
import com.engine.salary.entity.salaryacct.bo.SalaryCalcTax; import com.engine.salary.entity.salaryacct.bo.SalaryCalcTax;
import com.engine.salary.entity.salaryacct.dto.SalaryCalcTaxInfoDTO; import com.engine.salary.entity.salaryacct.dto.SalaryCalcTaxInfoDTO;
import com.engine.salary.entity.salaryacct.param.AbnormalEmployeeListQueryParam;
import com.engine.salary.entity.salaryacct.param.SalaryCalcTaxParam; import com.engine.salary.entity.salaryacct.param.SalaryCalcTaxParam;
import com.engine.salary.entity.salaryacct.po.*; import com.engine.salary.entity.salaryacct.po.*;
import com.engine.salary.entity.salarysob.dto.SalarySobTaxRuleDTO; import com.engine.salary.entity.salarysob.dto.SalarySobTaxRuleDTO;
@ -110,6 +111,11 @@ public class SalaryCalcTaxServiceImpl extends Service implements SalaryCalcTaxSe
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(160525, "接口流量不足,暂无法使用该功能,请先购买智能算薪接口流量")); throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(160525, "接口流量不足,暂无法使用该功能,请先购买智能算薪接口流量"));
} }
int i = getSalaryAcctEmployeeService(user).countNotDeclareByParam(AbnormalEmployeeListQueryParam.builder().recordId(salaryCalcTaxParam.getSalaryAcctRecordId()).build());
if (i > 0) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(11111, "存在未报送的人员,请先进行人员报送"));
}
// 查询薪资核算记录 // 查询薪资核算记录
SalaryAcctRecordPO salaryAcctRecord = getSalaryAcctRecordService(user).getById(salaryCalcTaxParam.getSalaryAcctRecordId()); SalaryAcctRecordPO salaryAcctRecord = getSalaryAcctRecordService(user).getById(salaryCalcTaxParam.getSalaryAcctRecordId());
// 查询薪资核算记录关联的个税扣缴义务人 // 查询薪资核算记录关联的个税扣缴义务人
@ -231,7 +237,7 @@ public class SalaryCalcTaxServiceImpl extends Service implements SalaryCalcTaxSe
continue; continue;
} }
SalarySobTaxRuleDTO taxRuleDTO = salarySobTaxRuleMap.get(incomeCategoryEnum.getValue().toString()); SalarySobTaxRuleDTO taxRuleDTO = salarySobTaxRuleMap.get(incomeCategoryEnum.getValue().toString());
Map<Long, SalarySobTaxRuleDTO> empIdResult = incomeCategoryEnum.parseGetASynIndividualIncomeTaxFeedbackResponse(feedbackResponse, subEmployeeDeclares,taxRuleDTO); Map<Long, SalarySobTaxRuleDTO> empIdResult = incomeCategoryEnum.parseGetASynIndividualIncomeTaxFeedbackResponse(feedbackResponse, subEmployeeDeclares, taxRuleDTO);
List<SalaryAcctEmployeePO> subSalaryAcctEmployees = salaryAcctEmployeeMap.get(salaryAcctTaxAgent.getTaxAgentId() + "-" + salaryAcctTaxAgent.getIncomeCategory()); List<SalaryAcctEmployeePO> subSalaryAcctEmployees = salaryAcctEmployeeMap.get(salaryAcctTaxAgent.getTaxAgentId() + "-" + salaryAcctTaxAgent.getIncomeCategory());
if (CollectionUtils.isEmpty(subSalaryAcctEmployees)) { if (CollectionUtils.isEmpty(subSalaryAcctEmployees)) {
continue; continue;
@ -243,10 +249,12 @@ public class SalaryCalcTaxServiceImpl extends Service implements SalaryCalcTaxSe
} }
SalarySobTaxRuleDTO salarySobTaxRuleDTO = empIdResult.get(salaryAcctEmployee.getEmployeeId()); SalarySobTaxRuleDTO salarySobTaxRuleDTO = empIdResult.get(salaryAcctEmployee.getEmployeeId());
List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = salarySobTaxRuleDTO.getTaxRules(); List<SalarySobTaxRuleDTO.TaxRuleDTO> taxRules = salarySobTaxRuleDTO.getTaxRules();
taxRules.forEach(rule->{ taxRules.forEach(rule -> {
SalaryAcctResultPO salaryAcctResultPO = salaryAcctResultValue.get(rule.getSalaryItemId()); SalaryAcctResultPO salaryAcctResultPO = salaryAcctResultValue.get(rule.getSalaryItemId());
salaryAcctResultPO.setResultValue(rule.getValue()); if (salaryAcctResultPO != null) {
resultPOS.add(salaryAcctResultPO); salaryAcctResultPO.setResultValue(rule.getValue());
resultPOS.add(salaryAcctResultPO);
}
}); });
} }
} }

View File

@ -400,6 +400,17 @@ public class SalaryAcctController {
} }
} }
/**
* 未报送人员列表
*/
@POST
@Path("/acctemployee/listPage4NotDeclare")
@Produces(MediaType.APPLICATION_JSON)
public String listPage4NotDeclare(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AbnormalEmployeeListQueryParam param) {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<AbnormalEmployeeListQueryParam, PageInfo<AbnormalEmployeeListDTO>>(user).run(getSalaryAcctEmployeeWrapper(user)::listPage4NotDeclareByParam, param);
}
// **********************************薪资核算人员相关 end*********************************/ // **********************************薪资核算人员相关 end*********************************/

View File

@ -4,6 +4,7 @@ import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service; import com.engine.core.impl.Service;
import com.engine.salary.entity.datacollection.DataCollectionEmployee; import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.salaryacct.bo.SalaryAcctEmployeeBO; import com.engine.salary.entity.salaryacct.bo.SalaryAcctEmployeeBO;
import com.engine.salary.entity.salaryacct.dto.AbnormalEmployeeListDTO;
import com.engine.salary.entity.salaryacct.dto.SalaryAccEmployeeListDTO; import com.engine.salary.entity.salaryacct.dto.SalaryAccEmployeeListDTO;
import com.engine.salary.entity.salaryacct.param.*; import com.engine.salary.entity.salaryacct.param.*;
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
@ -195,4 +196,14 @@ public class SalaryAcctEmployeeWrapper extends Service {
public void lockEmp(SalaryAcctResultUpdateLockStatusParam salaryAcctResultUpdateLockStatusParam) { public void lockEmp(SalaryAcctResultUpdateLockStatusParam salaryAcctResultUpdateLockStatusParam) {
getSalaryAcctEmployeeService(user).lockEmp(salaryAcctResultUpdateLockStatusParam); getSalaryAcctEmployeeService(user).lockEmp(salaryAcctResultUpdateLockStatusParam);
} }
/**
* 未报送人员列表
* @param param
* @return
*/
public PageInfo<AbnormalEmployeeListDTO> listPage4NotDeclareByParam(AbnormalEmployeeListQueryParam param) {
return getSalaryAcctEmployeeService(user).listPage4NotDeclareByParam(param);
}
} }