diff --git a/src/com/engine/salary/report/web/SalaryStatisticsReportController.java b/src/com/engine/salary/report/web/SalaryStatisticsReportController.java index 0d66ec25a..ed8a52760 100644 --- a/src/com/engine/salary/report/web/SalaryStatisticsReportController.java +++ b/src/com/engine/salary/report/web/SalaryStatisticsReportController.java @@ -4,7 +4,6 @@ import com.engine.common.util.ServiceUtil; import com.engine.salary.report.entity.param.SalaryStatisticsReportDataQueryParam; import com.engine.salary.report.entity.param.SalaryStatisticsReportQueryParam; import com.engine.salary.report.entity.param.SalaryStatisticsReportSaveParam; -import com.engine.salary.report.entity.po.SalaryStatisticsReportPO; import com.engine.salary.report.wrapper.SalaryStatisticsReportWrapper; import com.engine.salary.util.ResponseResult; import io.swagger.v3.oas.annotations.parameters.RequestBody; @@ -55,7 +54,7 @@ public class SalaryStatisticsReportController { @Produces(MediaType.APPLICATION_JSON) public String getForm(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "id") Long id) { User user = HrmUserVarify.getUser(request, response); - return new ResponseResult(user).run(getSalaryStatisticsReportWrapper(user)::getFrom, id); + return new ResponseResult>(user).run(getSalaryStatisticsReportWrapper(user)::getFrom, id); } /** @@ -116,7 +115,7 @@ public class SalaryStatisticsReportController { @POST @Path("/getData") @Produces(MediaType.APPLICATION_JSON) - public String delete(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryStatisticsReportDataQueryParam param) { + public String getData(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryStatisticsReportDataQueryParam param) { User user = HrmUserVarify.getUser(request, response); return new ResponseResult>(user).run(getSalaryStatisticsReportWrapper(user)::getData, param); } diff --git a/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java b/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java index 44d33738c..a0b4d18cc 100644 --- a/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java +++ b/src/com/engine/salary/report/wrapper/SalaryStatisticsReportWrapper.java @@ -3,6 +3,7 @@ package com.engine.salary.report.wrapper; import com.cloudstore.eccom.pc.table.WeaTableColumn; import com.engine.common.util.ServiceUtil; import com.engine.core.impl.Service; +import com.engine.salary.component.WeaFormOption; import com.engine.salary.exception.SalaryRunTimeException; import com.engine.salary.report.entity.bo.SalaryStatisticsReportBO; import com.engine.salary.report.entity.param.SalaryStatisticsReportDataQueryParam; @@ -95,17 +96,27 @@ public class SalaryStatisticsReportWrapper extends Service { * @param * @return */ - public SalaryStatisticsReportPO getFrom(Long id) { + public Map getFrom(Long id) { List salaryStatisticsDimensions = getSalaryStatisticsDimensionService(user).listAll(); - String placeholder = SalaryI18nUtil.getI18nLabel(85987, "请输入"); + List statsDimOptions = salaryStatisticsDimensions.stream().map(sd -> new WeaFormOption(sd.getId().toString(), sd.getDimName())).collect(Collectors.toList()); + // 1.构建基础信息表单 + Map weaForm = new HashMap<>(); + weaForm.put("statsDimOptions",statsDimOptions); - SalaryStatisticsReportPO po = this.getSalaryStatisticsReportService(user).getById(id); - if (po == null) { - throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(161845, "薪酬统计报表不存在")); + + if (id != null) { + SalaryStatisticsReportPO po = this.getSalaryStatisticsReportService(user).getById(id); + if (po == null) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(161845, "薪酬统计报表不存在")); + } + Map dataMap = JsonUtil.parseMap(po, Object.class); + dataMap.put("dimension", Arrays.asList(po.getDimension().split(","))); + weaForm.put("data",dataMap); } - return po; + + return weaForm; } /**