From 0cfbe05c54027ab787913823ccc129fab3dd210e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Thu, 9 Nov 2023 16:14:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E6=97=A5=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../report/SalaryStatisticsReportMapper.xml | 15 ++++++++ .../entity/bo/SalaryStatisticsReportBO.java | 35 +++++++++++++++---- .../SalaryStatisticsReportServiceImpl.java | 6 ++-- .../web/SalaryStatisticsReportController.java | 2 ++ .../SalaryStatisticsReportWrapper.java | 6 ++-- 5 files changed, 52 insertions(+), 12 deletions(-) diff --git a/src/com/engine/salary/mapper/report/SalaryStatisticsReportMapper.xml b/src/com/engine/salary/mapper/report/SalaryStatisticsReportMapper.xml index 61a42b1ab..d85fc85bd 100644 --- a/src/com/engine/salary/mapper/report/SalaryStatisticsReportMapper.xml +++ b/src/com/engine/salary/mapper/report/SalaryStatisticsReportMapper.xml @@ -16,6 +16,7 @@ + @@ -56,6 +57,7 @@ , t.tax_agent_setting , t.tenant_key , t.update_time + , t.time_type @@ -123,6 +125,9 @@ AND report_name = #{reportName} + + AND time_type = #{timeType} + AND salary_end_month = #{salaryEndMonth} @@ -210,6 +215,9 @@ report_name, + + time_type, + salary_end_month, @@ -284,6 +292,9 @@ #{reportName}, + + #{timeType}, + #{salaryEndMonth}, @@ -334,6 +345,7 @@ position_setting=#{positionSetting}, remark=#{remark}, report_name=#{reportName}, + time_type=#{timeType}, salary_end_month=#{salaryEndMonth}, salary_start_month=#{salaryStartMonth}, second_dimension=#{secondDimension}, @@ -392,6 +404,9 @@ report_name=#{reportName}, + + time_type=#{timeType}, + salary_end_month=#{salaryEndMonth}, diff --git a/src/com/engine/salary/report/entity/bo/SalaryStatisticsReportBO.java b/src/com/engine/salary/report/entity/bo/SalaryStatisticsReportBO.java index 7088ee9d6..88adfe57d 100644 --- a/src/com/engine/salary/report/entity/bo/SalaryStatisticsReportBO.java +++ b/src/com/engine/salary/report/entity/bo/SalaryStatisticsReportBO.java @@ -99,19 +99,39 @@ public class SalaryStatisticsReportBO { * @param po */ public static void poToQueryParam(SalaryStatisticsReportDataQueryParam param, SalaryStatisticsReportPO po) { - param.setSalaryStartMonth(SalaryDateUtil.getFormatYearMonth(po.getSalaryStartMonth())); - param.setSalaryEndMonth(SalaryDateUtil.getFormatYearMonth(po.getSalaryEndMonth())); + String salaryStartMonth = param.getSalaryStartMonth(); + if (salaryStartMonth == null) { + param.setSalaryStartMonth(SalaryDateUtil.getFormatYearMonth(po.getSalaryStartMonth())); + } else { + param.setSalaryStartMonth(SalaryDateUtil.getFormatYearMonth(SalaryDateUtil.dateStrToLocalDate(salaryStartMonth))); + } + String salaryEndMonth = param.getSalaryEndMonth(); + if (salaryEndMonth == null) { + param.setSalaryEndMonth(SalaryDateUtil.getFormatYearMonth(po.getSalaryEndMonth())); + } else { + param.setSalaryEndMonth(SalaryDateUtil.getFormatYearMonth(SalaryDateUtil.dateStrToLocalDate(salaryEndMonth))); + } String key = "id"; - param.setTaxAgent(((List) JSON.parseArray(po.getTaxAgentSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); + if (po.getTaxAgentSetting() != null) { + param.setTaxAgent(((List) JSON.parseArray(po.getTaxAgentSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); + } // param.setIncomeCategory(((List) JSON.parseArray(po.getIncomeCategorySetting(), Map.class)).stream().map(m -> Integer.valueOf(m.get(key).toString())).collect(Collectors.toList())); - param.setSubCompany(((List) JSON.parseArray(po.getSubCompanySetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); - param.setDepart(((List) JSON.parseArray(po.getDepartSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); + if (po.getSubCompanySetting() != null) { + param.setSubCompany(((List) JSON.parseArray(po.getSubCompanySetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); + } + if (po.getDepartSetting() != null) { + param.setDepart(((List) JSON.parseArray(po.getDepartSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); + } // param.setGrade(((List) JSON.parseArray(po.getGradeSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); // param.setPosition(((List) JSON.parseArray(po.getPositionSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); // param.setStatus(((List) JSON.parseArray(po.getStatusSetting(), Map.class)).stream().map(m -> m.get(key).toString()).collect(Collectors.toList())); - param.setEmployee(((List) JSON.parseArray(po.getEmployeeSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); - param.setHiredate(JSON.parseArray(po.getHiredateSetting(), Date.class)); + if (po.getEmployeeSetting() != null) { + param.setEmployee(((List) JSON.parseArray(po.getEmployeeSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList())); + } + if (po.getHiredateSetting() != null) { + param.setHiredate(JSON.parseArray(po.getHiredateSetting(), Date.class)); + } // param.setLeavedate(JSON.parseArray(po.getLeavedateSetting(), LocalDate.class)); } @@ -812,6 +832,7 @@ public class SalaryStatisticsReportBO { .map(Map.Entry::getKey) .orElse(""); } + /** * 平铺 * diff --git a/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java b/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java index f3f878e23..c71f5193c 100644 --- a/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java +++ b/src/com/engine/salary/report/service/impl/SalaryStatisticsReportServiceImpl.java @@ -372,9 +372,9 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary public PageInfo> buildReportRecords(SalaryStatisticsDimensionPO dimension, SalaryStatisticsReportDataQueryParam param, List salaryStatisticsItemList) { Map checkMap = SalaryStatisticsReportBO.checkLoad(salaryStatisticsItemList); // 如果一个都没有,直接返回 - if (!checkMap.get("isNow")) { - return new PageInfo>(); - } +// if (!checkMap.get("isNow")) { +// return new PageInfo>(); +// } // 获取本期报表分权后的核算人员 diff --git a/src/com/engine/salary/report/web/SalaryStatisticsReportController.java b/src/com/engine/salary/report/web/SalaryStatisticsReportController.java index 4ab48ee54..6fa9b5c24 100644 --- a/src/com/engine/salary/report/web/SalaryStatisticsReportController.java +++ b/src/com/engine/salary/report/web/SalaryStatisticsReportController.java @@ -165,6 +165,8 @@ public class SalaryStatisticsReportController { SalaryStatisticsReportDataQueryParam param = SalaryStatisticsReportDataQueryParam.builder() .id(Long.parseLong(request.getParameter("id"))) .dimensionId(Long.parseLong(request.getParameter("dimensionId"))) + .salaryStartMonth(request.getParameter("salaryStartMonth")) + .salaryEndMonth(request.getParameter("salaryEndMonth")) .isShare(StringUtils.equals(request.getParameter("isShare"), "true")) .build(); try { diff --git a/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java b/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java index 1b9910eda..ce270b1fa 100644 --- a/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java +++ b/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java @@ -130,7 +130,9 @@ public class SalaryStatisticsReportWrapper extends Service { Map temp = new HashMap<>(); temp.put("id", po.getId().toString()); temp.put("reportName", po.getReportName()); - temp.put("timeType", po.getTimeType() == null ? "10" : po.getTimeType().toString()); + temp.put("timeType", po.getTimeType() == null ? 10 : po.getTimeType()); + temp.put("salaryStartMonth", SalaryDateUtil.getFormatYearMonth(po.getSalaryStartMonth())); + temp.put("salaryEndMonth", SalaryDateUtil.getFormatYearMonth(po.getSalaryEndMonth())); List dimNames = Arrays.stream(po.getDimension().split(",")).map(dim -> Optional.ofNullable(salaryStatisticsDimensionMap.get(dim)).orElse("")).collect(Collectors.toList()); temp.put("dimension", StringUtils.join(dimNames, ",")); temp.put("dimensionId", po.getDimension()); @@ -238,7 +240,7 @@ public class SalaryStatisticsReportWrapper extends Service { SalaryAssert.notNull(po, SalaryI18nUtil.getI18nLabel(152563, "报表不存在")); Map data = new HashMap<>(); - data.put("timeType", po.getTimeType() == null ? 10 : po.getTimeType().toString()); + data.put("timeType", po.getTimeType() == null ? 10 : po.getTimeType()); data.put("salaryStartMonth", SalaryDateUtil.getFormatYearMonth(po.getSalaryStartMonth())); data.put("salaryEndMonth", SalaryDateUtil.getFormatYearMonth(po.getSalaryEndMonth())); data.put("taxAgent", JSONArray.parseArray(po.getTaxAgentSetting()));