From b2354d00c6940e2f9441936165980c22e934dabc Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Thu, 14 Aug 2025 15:17:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=94=E7=89=B9=E6=8A=A5=E8=A1=A8=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/LtSalaryReportConfigDTO.java | 2 + .../impl/SalaryAcctResultServiceImpl.java | 64 +++++++++++++++---- 2 files changed, 54 insertions(+), 12 deletions(-) diff --git a/src/com/engine/salary/entity/salaryacct/dto/LtSalaryReportConfigDTO.java b/src/com/engine/salary/entity/salaryacct/dto/LtSalaryReportConfigDTO.java index c69cb4e3a..94b761a25 100644 --- a/src/com/engine/salary/entity/salaryacct/dto/LtSalaryReportConfigDTO.java +++ b/src/com/engine/salary/entity/salaryacct/dto/LtSalaryReportConfigDTO.java @@ -23,4 +23,6 @@ public class LtSalaryReportConfigDTO { // 数据库字段名 private String field; + private Integer text; + } diff --git a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java index 14ce5c10e..ed0916fd7 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java @@ -2299,13 +2299,23 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe for (LtSalaryReportConfigDTO dto : reportConfigs) { BigDecimal val = new BigDecimal("0"); + String textVal = ""; if (singleAcctResultMap != null) { String valStr = Utils.null2String(singleAcctResultMap.getOrDefault(Utils.null2String(dto.getItem()), "0")); - if (NumberUtils.isCreatable(valStr)) { - val = new BigDecimal(valStr); + if (dto.getText() == null || !dto.getText().equals(1)) { + if (NumberUtils.isCreatable(valStr)) { + val = new BigDecimal(valStr); + } + } else { + textVal = valStr; } + + } + if (dto.getText() == null || !dto.getText().equals(1)) { + firstSb.append(",").append(val.toPlainString()); + } else { + firstSb.append(",'").append(textVal).append("'"); } - firstSb.append(",").append(val.toPlainString()); } firstSb.append(")"); rs.execute(firstSb.toString()); @@ -2373,13 +2383,22 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe for (LtSalaryReportConfigDTO dto : reportConfigs) { BigDecimal val = new BigDecimal("0"); + String textVal = ""; if (singleAcctResultMap != null) { String valStr = Utils.null2String(singleAcctResultMap.getOrDefault(Utils.null2String(dto.getItem()), "0")); - if (NumberUtils.isCreatable(valStr)) { - val = new BigDecimal(valStr); + if (dto.getText() == null || !dto.getText().equals(1)) { + if (NumberUtils.isCreatable(valStr)) { + val = new BigDecimal(valStr); + } + } else { + textVal = valStr; } } - sb.append(",").append(val.toPlainString()); + if (dto.getText() == null || !dto.getText().equals(1)) { + sb.append(",").append(val.toPlainString()); + } else { + sb.append(",'").append(textVal).append("'"); + } } sb.append("),"); } @@ -2552,13 +2571,23 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe for (LtSalaryReportConfigDTO dto : reportConfigs) { BigDecimal val = new BigDecimal("0"); + String textVal = ""; if (singleAcctResultMap != null) { String valStr = Utils.null2String(singleAcctResultMap.getOrDefault(Utils.null2String(dto.getItem()), "0")); - if (NumberUtils.isCreatable(valStr)) { - val = new BigDecimal(valStr); + if (dto.getText() == null || !dto.getText().equals(1)) { + if (NumberUtils.isCreatable(valStr)) { + val = new BigDecimal(valStr); + } + } else { + textVal = valStr; } + + } + if (dto.getText() == null || !dto.getText().equals(1)) { + firstSb.append(",").append(val.toPlainString()); + } else { + firstSb.append(",'").append(textVal).append("'"); } - firstSb.append(",").append(val.toPlainString()); } firstSb.append(")"); rs.execute(firstSb.toString()); @@ -2601,13 +2630,24 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe for (LtSalaryReportConfigDTO dto : reportConfigs) { BigDecimal val = new BigDecimal("0"); + String textVal = ""; if (singleAcctResultMap != null) { String valStr = Utils.null2String(singleAcctResultMap.getOrDefault(Utils.null2String(dto.getItem()), "0")); - if (NumberUtils.isCreatable(valStr)) { - val = new BigDecimal(valStr); + if (dto.getText() == null || !dto.getText().equals(1)) { + if (NumberUtils.isCreatable(valStr)) { + val = new BigDecimal(valStr); + } + } else { + textVal = valStr; } + } - sb.append(",").append(val.toPlainString()); + if (dto.getText() == null || !dto.getText().equals(1)) { + sb.append(",").append(val.toPlainString()); + } else { + sb.append(",'").append(textVal).append("'"); + } + } sb.append("),"); }