diff --git a/src/com/engine/salary/entity/salaryBill/bo/SalaryBillBO.java b/src/com/engine/salary/entity/salaryBill/bo/SalaryBillBO.java
index 4e219c477..aea5cede9 100644
--- a/src/com/engine/salary/entity/salaryBill/bo/SalaryBillBO.java
+++ b/src/com/engine/salary/entity/salaryBill/bo/SalaryBillBO.java
@@ -267,7 +267,7 @@ public class SalaryBillBO {
}
Util_Message.store(messageBean);
} catch (IOException e) {
- log.error("消息发送失败",e);
+ log.error("消息发送失败", e);
}
}
@@ -649,7 +649,8 @@ public class SalaryBillBO {
} else {
for (Object keyName : e.keySet()) {
if ((salaryItem.getId() + SalaryArchiveConstant.DYNAMIC_SUFFIX).equals(keyName.toString())) {
- boolean isHide = (isHideNull && StringUtils.isEmpty(e.getOrDefault(keyName.toString(), StringUtils.EMPTY).toString()))
+ String itemValue = Util.null2String(e.get(keyName.toString()));
+ boolean isHide = (isHideNull && StringUtils.isEmpty(itemValue))
||
(isHideZero && NumberUtils.isCreatable(e.getOrDefault(keyName.toString(), "0").toString())
&& BigDecimal.ZERO.compareTo(new BigDecimal(e.getOrDefault(keyName.toString(), "0").toString())) == 0);
@@ -660,7 +661,7 @@ public class SalaryBillBO {
emailContent.append("");
emailContent.append("
");
- emailContent.append(e.get(keyName.toString()));
+ emailContent.append(itemValue.replaceAll("null", ""));
emailContent.append(" | ");
}
break;
@@ -729,7 +730,8 @@ public class SalaryBillBO {
SalaryTemplateSalaryItemListDTO salaryItem = itemPartition.get(i);
for (Object keyName : e.keySet()) {
if ((salaryItem.getId() + SalaryArchiveConstant.DYNAMIC_SUFFIX).equals(keyName.toString())) {
- boolean isHide = (isHideNull && StringUtils.isEmpty(e.getOrDefault(keyName.toString(), StringUtils.EMPTY).toString()))
+ String itemValue = Util.null2String(e.get(keyName.toString()));
+ boolean isHide = (isHideNull && StringUtils.isEmpty(itemValue))
||
(isHideZero && NumberUtils.isCreatable(e.getOrDefault(keyName.toString(), "0").toString())
&& BigDecimal.ZERO.compareTo(new BigDecimal(e.getOrDefault(keyName.toString(), "0").toString())) == 0);
@@ -740,7 +742,7 @@ public class SalaryBillBO {
emailContent.append("");
emailContent.append("");
- emailContent.append(e.get(keyName.toString()));
+ emailContent.append(itemValue.replaceAll("null", ""));
emailContent.append(" | ");
}
break;
diff --git a/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctConsolidatedTaxBO.java b/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctConsolidatedTaxBO.java
index d5155f0ae..d5399daab 100644
--- a/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctConsolidatedTaxBO.java
+++ b/src/com/engine/salary/entity/salaryacct/bo/SalaryAcctConsolidatedTaxBO.java
@@ -1,5 +1,6 @@
package com.engine.salary.entity.salaryacct.bo;
+import cn.hutool.core.util.StrUtil;
import com.engine.salary.constant.TaxDeclarationDataIndexConstant;
import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
@@ -73,6 +74,9 @@ public class SalaryAcctConsolidatedTaxBO {
.filter(e -> Objects.equals(e.getSalaryItemId(), optional.get()))
.map(e -> SalaryEntityUtil.empty2Zero(e.getResultValue()))
.reduce(BigDecimal.ZERO, BigDecimal::add);
+ if (StrUtil.isBlank(resultValue)) {
+ resultValue = "0.00";
+ }
return new BigDecimal(resultValue).add(income).toPlainString();
}
// 个税调差为0
@@ -98,6 +102,9 @@ public class SalaryAcctConsolidatedTaxBO {
.map(e -> SalaryEntityUtil.empty2Zero(e.getResultValue()))
.reduce(BigDecimal.ZERO, BigDecimal::add);
}
+ if (StrUtil.isBlank(resultValue)) {
+ resultValue = "0.00";
+ }
return new BigDecimal(resultValue).add(refundedOrSupplementedTax).subtract(taxAdjustment).toPlainString();
}
return resultValue;
diff --git a/src/com/engine/salary/entity/salaryacct/param/SalaryAcctCalculateParam.java b/src/com/engine/salary/entity/salaryacct/param/SalaryAcctCalculateParam.java
index 52c3b7f13..d07b79a6b 100644
--- a/src/com/engine/salary/entity/salaryacct/param/SalaryAcctCalculateParam.java
+++ b/src/com/engine/salary/entity/salaryacct/param/SalaryAcctCalculateParam.java
@@ -20,7 +20,7 @@ import java.util.Collection;
@Builder
@NoArgsConstructor
@AllArgsConstructor
-public class SalaryAcctCalculateParam {
+public class SalaryAcctCalculateParam {
//核算人员的id,不是employeeId而是salaryAcctEmpId
private Collection ids;
diff --git a/src/com/engine/salary/entity/salaryacct/param/SalaryAcctRecordQueryParam.java b/src/com/engine/salary/entity/salaryacct/param/SalaryAcctRecordQueryParam.java
index 0632b7e91..106f8574d 100644
--- a/src/com/engine/salary/entity/salaryacct/param/SalaryAcctRecordQueryParam.java
+++ b/src/com/engine/salary/entity/salaryacct/param/SalaryAcctRecordQueryParam.java
@@ -7,6 +7,7 @@ import lombok.Data;
import lombok.NoArgsConstructor;
import java.time.YearMonth;
+import java.util.List;
/**
* 薪资核算列表查询参数
@@ -34,6 +35,11 @@ public class SalaryAcctRecordQueryParam extends BaseQueryParam {
//账套名称")
private String name;
+ /**
+ * 扣缴义务人id集合
+ */
+ private List taxAgentIds;
+
private String startMonthStr;
private String endMonthStr;
}
diff --git a/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationListDTO.java b/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationListDTO.java
index f52ce6a86..420daca25 100644
--- a/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationListDTO.java
+++ b/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationListDTO.java
@@ -37,6 +37,10 @@ public class TaxDeclarationListDTO {
@TableTitle(title = "薪资类型", dataIndex = "incomeCategory", key = "incomeCategory")
private String incomeCategory;
+ @JsonFormat(pattern = "yyyy-MM", timezone = "GMT+8")
+ @TableTitle(title = "税款所属期", dataIndex = "taxCycle", key = "taxCycle")
+ private Date taxCycle;
+
@JsonFormat(pattern = "yyyy-MM", timezone = "GMT+8")
@TableTitle(title = "薪资所属月", dataIndex = "salaryMonth", key = "salaryMonth")
private Date salaryMonth;
@@ -47,10 +51,6 @@ public class TaxDeclarationListDTO {
@TableTitle(title = "个税扣缴义务人", dataIndex = "taxAgentName", key = "taxAgentName")
private String taxAgentName;
- @JsonFormat(pattern = "yyyy-MM", timezone = "GMT+8")
- @TableTitle(title = "税款所属期", dataIndex = "taxCycle", key = "taxCycle")
- private Date taxCycle;
-
//@TableTitle(title = "操作人id", dataIndex = "operateEmployeeId", key = "operateEmployeeId")
private Long operateEmployeeId;
diff --git a/src/com/engine/salary/entity/taxdeclaration/param/TaxDeclarationListQueryParam.java b/src/com/engine/salary/entity/taxdeclaration/param/TaxDeclarationListQueryParam.java
index 521fadd56..a7de714a9 100644
--- a/src/com/engine/salary/entity/taxdeclaration/param/TaxDeclarationListQueryParam.java
+++ b/src/com/engine/salary/entity/taxdeclaration/param/TaxDeclarationListQueryParam.java
@@ -1,9 +1,14 @@
package com.engine.salary.entity.taxdeclaration.param;
import com.engine.salary.common.BaseQueryParam;
-import lombok.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
-import java.time.YearMonth;
+
+import java.util.Date;
/**
* 个税申报记录查询条件
@@ -20,12 +25,13 @@ import java.time.YearMonth;
public class TaxDeclarationListQueryParam extends BaseQueryParam {
//薪资所属月范围起点
- private YearMonth fromSalaryMonth;
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date fromSalaryMonth;
- //薪资所属月范围终点
- private YearMonth endSalaryMonth;
+ //薪资所属月范围终点
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date endSalaryMonth;
- private String fromSalaryMonthStr;
-
- private String endSalaryMonthStr;
+ //个税扣缴义务人菜单")
+ private String taxAgentName;
}
diff --git a/src/com/engine/salary/entity/taxdeclaration/po/TaxDeclarationPO.java b/src/com/engine/salary/entity/taxdeclaration/po/TaxDeclarationPO.java
index 8319f9e4d..9950f55cd 100644
--- a/src/com/engine/salary/entity/taxdeclaration/po/TaxDeclarationPO.java
+++ b/src/com/engine/salary/entity/taxdeclaration/po/TaxDeclarationPO.java
@@ -86,6 +86,13 @@ public class TaxDeclarationPO {
LocalDateRange salaryMonths;
+ //"开始日期
+ private Date taxCycleFromDate;
+
+ //结束日期
+ private Date taxCycleEndDate;
+
+
private Collection taxAgentIds;
}
diff --git a/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml b/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml
index 1810e8970..b034b00ff 100644
--- a/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml
+++ b/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml
@@ -61,6 +61,12 @@
AND salary_month #{salaryMonths.endDate}
+
+ AND tax_cycle = ]]> #{taxCycleFromDate}
+
+
+ AND tax_cycle #{taxCycleEndDate}
+
AND tax_agent_id IN
diff --git a/src/com/engine/salary/report/entity/param/SalaryStatisticsDataPerspectiveQueryParam.java b/src/com/engine/salary/report/entity/param/SalaryStatisticsDataPerspectiveQueryParam.java
index d0afd0c00..0d8303b72 100644
--- a/src/com/engine/salary/report/entity/param/SalaryStatisticsDataPerspectiveQueryParam.java
+++ b/src/com/engine/salary/report/entity/param/SalaryStatisticsDataPerspectiveQueryParam.java
@@ -45,6 +45,9 @@ public class SalaryStatisticsDataPerspectiveQueryParam extends BaseQueryParam {
//个税扣缴义务人配置
private List taxAgent;
+ @JsonIgnore
+ private List salarySob;
+
@JsonIgnore
//收入所得项目配置
private List incomeCategory;
diff --git a/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java b/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java
index 2b62276cd..dbf64ecb8 100644
--- a/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java
+++ b/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java
@@ -469,12 +469,21 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
if (reportPO.getTaxAgentSetting() != null) {
param.setTaxAgent(((List