diff --git a/src/com/engine/salary/entity/setting/param/PageListSettingQueryParam.java b/src/com/engine/salary/entity/setting/param/PageListSettingQueryParam.java new file mode 100644 index 000000000..0de49c816 --- /dev/null +++ b/src/com/engine/salary/entity/setting/param/PageListSettingQueryParam.java @@ -0,0 +1,22 @@ +package com.engine.salary.entity.setting.param; + +import com.engine.salary.util.valid.DataCheck; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 薪资帐套表 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PageListSettingQueryParam { + + @DataCheck(require = true,message = "请选择页面") + private String page; + + private String name; +} \ No newline at end of file diff --git a/src/com/engine/salary/report/service/impl/SalaryStatisticsEmployeeServiceImpl.java b/src/com/engine/salary/report/service/impl/SalaryStatisticsEmployeeServiceImpl.java index 635134b5f..dfab42262 100644 --- a/src/com/engine/salary/report/service/impl/SalaryStatisticsEmployeeServiceImpl.java +++ b/src/com/engine/salary/report/service/impl/SalaryStatisticsEmployeeServiceImpl.java @@ -10,6 +10,7 @@ import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO; import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO; import com.engine.salary.entity.salaryitem.po.SalaryItemPO; import com.engine.salary.entity.salarysob.po.SalarySobPO; +import com.engine.salary.entity.setting.param.PageListSettingQueryParam; import com.engine.salary.entity.taxagent.po.TaxAgentPO; import com.engine.salary.enums.UserStatusEnum; import com.engine.salary.enums.datacollection.UseEmployeeTypeEnum; @@ -359,7 +360,8 @@ public class SalaryStatisticsEmployeeServiceImpl extends Service implements Sala List salaryAcctResultValues = getSalaryAcctResultService(user).listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds); // 3.获取薪资项目 - Map setting = getSettingService(user).getPageListSetting("salary_details_report"); + PageListSettingQueryParam param = PageListSettingQueryParam.builder().page("salary_details_report").build(); + Map setting = getSettingService(user).getPageListSetting(param); List checked = setting.get("checked") != null ? JsonUtil.parseList(setting.get("checked"), Long.class) : new ArrayList<>(); List salaryItemList = getSalaryItemService(user).listByIds(checked); // salaryItemList = salaryItemList.stream() diff --git a/src/com/engine/salary/service/SettingService.java b/src/com/engine/salary/service/SettingService.java index 7b4f1d9bc..27b7e679e 100644 --- a/src/com/engine/salary/service/SettingService.java +++ b/src/com/engine/salary/service/SettingService.java @@ -1,5 +1,6 @@ package com.engine.salary.service; +import com.engine.salary.entity.setting.param.PageListSettingQueryParam; import com.engine.salary.entity.setting.param.PageListSettingSaveParam; import java.util.Map; @@ -7,5 +8,5 @@ import java.util.Map; public interface SettingService { void savePageListSetting(PageListSettingSaveParam pageListSettingSaveParam); - Map getPageListSetting(String page); + Map getPageListSetting(PageListSettingQueryParam param); } diff --git a/src/com/engine/salary/service/impl/SettingServiceImpl.java b/src/com/engine/salary/service/impl/SettingServiceImpl.java index 66b13c126..9f52b7ea8 100644 --- a/src/com/engine/salary/service/impl/SettingServiceImpl.java +++ b/src/com/engine/salary/service/impl/SettingServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil; import com.engine.common.util.ServiceUtil; import com.engine.core.impl.Service; import com.engine.salary.entity.salaryitem.po.SalaryItemPO; +import com.engine.salary.entity.setting.param.PageListSettingQueryParam; import com.engine.salary.entity.setting.param.PageListSettingSaveParam; import com.engine.salary.entity.setting.po.PageListSettingPO; import com.engine.salary.mapper.setting.PageListSettingMapper; @@ -67,25 +68,29 @@ public class SettingServiceImpl extends Service implements SettingService { } @Override - public Map getPageListSetting(String page) { - + public Map getPageListSetting(PageListSettingQueryParam param) { + String page = param.getPage(); Map result = new HashMap(); PageListSettingPO pageListSettingPO = getPageListSettingMapper().getByPage(page); if ("salary_details_report".equals(page)) { List salaryItemList = getSalaryItemService(user).listAll(); salaryItemList = salaryItemList.stream() - .sorted(new Comparator() { - @Override - public int compare(SalaryItemPO o1, SalaryItemPO o2) { - if (o1.getSortedIndex() == null && o2.getSortedIndex() == null) { - Integer systemType1 = o1.getSystemType() == null ? 0 : o1.getSystemType(); - Integer systemType2 = o2.getSystemType() == null ? 0 : o2.getSystemType(); - return systemType1.compareTo(systemType2); - } else { - Integer sortedIndex1 = o1.getSortedIndex() == null ? 0 : o1.getSortedIndex(); - Integer sortedIndex2 = o2.getSortedIndex() == null ? 0 : o2.getSortedIndex(); - return sortedIndex2.compareTo(sortedIndex1); - } + .filter(po -> { + String name = param.getName(); + if (StrUtil.isNotEmpty(name)) { + return po.getName() != null && po.getName().contains(name); + } + return true; + }) + .sorted((o1, o2) -> { + if (o1.getSortedIndex() == null && o2.getSortedIndex() == null) { + Integer systemType1 = o1.getSystemType() == null ? 0 : o1.getSystemType(); + Integer systemType2 = o2.getSystemType() == null ? 0 : o2.getSystemType(); + return systemType1.compareTo(systemType2); + } else { + Integer sortedIndex1 = o1.getSortedIndex() == null ? 0 : o1.getSortedIndex(); + Integer sortedIndex2 = o2.getSortedIndex() == null ? 0 : o2.getSortedIndex(); + return sortedIndex2.compareTo(sortedIndex1); } }) .collect(Collectors.toList()); diff --git a/src/com/engine/salary/web/SalaryCommonController.java b/src/com/engine/salary/web/SalaryCommonController.java index 2f7e87d6e..d28dc0d86 100644 --- a/src/com/engine/salary/web/SalaryCommonController.java +++ b/src/com/engine/salary/web/SalaryCommonController.java @@ -1,6 +1,7 @@ package com.engine.salary.web; import com.engine.common.util.ServiceUtil; +import com.engine.salary.entity.setting.param.PageListSettingQueryParam; import com.engine.salary.entity.setting.param.PageListSettingSaveParam; import com.engine.salary.util.ResponseResult; import com.engine.salary.util.SalaryEnumUtil; @@ -65,11 +66,11 @@ public class SalaryCommonController { return new ResponseResult(user).run(getSalaryCommonWrapper(user)::savePageListSetting, param); } - @GET + @POST @Path("/pageList/get/setting") @Produces(MediaType.APPLICATION_JSON) - public String getPageListSetting(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "page") String page) { + public String getPageListSetting(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody PageListSettingQueryParam param) { User user = HrmUserVarify.getUser(request, response); - return new ResponseResult(user).run(getSalaryCommonWrapper(user)::getPageListSetting, page); + return new ResponseResult(user).run(getSalaryCommonWrapper(user)::getPageListSetting, param); } } diff --git a/src/com/engine/salary/wrapper/SalaryCommonWrapper.java b/src/com/engine/salary/wrapper/SalaryCommonWrapper.java index cbeefbb42..e66e09121 100644 --- a/src/com/engine/salary/wrapper/SalaryCommonWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryCommonWrapper.java @@ -2,6 +2,7 @@ package com.engine.salary.wrapper; import com.engine.common.util.ServiceUtil; import com.engine.core.impl.Service; +import com.engine.salary.entity.setting.param.PageListSettingQueryParam; import com.engine.salary.entity.setting.param.PageListSettingSaveParam; import com.engine.salary.service.SalaryCacheService; import com.engine.salary.service.SettingService; @@ -35,7 +36,7 @@ public class SalaryCommonWrapper extends Service { } - public Map getPageListSetting(String page) { - return getSettingService(user).getPageListSetting(page); + public Map getPageListSetting(PageListSettingQueryParam param) { + return getSettingService(user).getPageListSetting(param); } }