diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLawsInventoryEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLawsInventoryEOMapper.xml index b24afb028..cb55c2edf 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLawsInventoryEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLawsInventoryEOMapper.xml @@ -159,7 +159,7 @@ ) temp - + order by temp.serial_number desc diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index 0ec8afc5f..aec45aa36 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -10406,9 +10406,156 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl params, List> result) { + Collator comparator = Collator.getInstance(Locale.CHINESE); + if ("title".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("title")) ? String.valueOf(e1.get("title")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("title")) ? String.valueOf(e2.get("title")) : ""; + return comparator.compare(e1Field, e2Field); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("title")) ? String.valueOf(e1.get("title")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("title")) ? String.valueOf(e2.get("title")) : ""; + return comparator.compare(e2Field, e1Field); + }); + } + } + if ("lawsName".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("lawsName")) ? String.valueOf(e1.get("lawsName")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("lawsName")) ? String.valueOf(e2.get("lawsName")) : ""; + return comparator.compare(e1Field, e2Field); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("lawsName")) ? String.valueOf(e1.get("lawsName")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("lawsName")) ? String.valueOf(e2.get("lawsName")) : ""; + return comparator.compare(e2Field, e1Field); + }); + } + } + if ("projectName".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("projectName")) ? String.valueOf(e1.get("projectName")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("projectName")) ? String.valueOf(e2.get("projectName")) : ""; + return comparator.compare(e1Field, e2Field); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("projectName")) ? String.valueOf(e1.get("projectName")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("projectName")) ? String.valueOf(e2.get("projectName")) : ""; + return comparator.compare(e2Field, e1Field); + }); + } + } + if ("problemType_dictText".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("problemType_dictText")) ? String.valueOf(e1.get("problemType_dictText")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("problemType_dictText")) ? String.valueOf(e2.get("problemType_dictText")) : ""; + return comparator.compare(e1Field, e2Field); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("problemType_dictText")) ? String.valueOf(e1.get("problemType_dictText")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("problemType_dictText")) ? String.valueOf(e2.get("problemType_dictText")) : ""; + return comparator.compare(e2Field, e1Field); + }); + } + } + if ("dutyTerritory".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("dutyTerritory")) ? String.valueOf(e1.get("dutyTerritory")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("dutyTerritory")) ? String.valueOf(e2.get("dutyTerritory")) : ""; + return comparator.compare(e1Field, e2Field); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("dutyTerritory")) ? String.valueOf(e1.get("dutyTerritory")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("dutyTerritory")) ? String.valueOf(e2.get("dutyTerritory")) : ""; + return comparator.compare(e2Field, e1Field); + }); + } + } + if ("createBy".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("createBy")) ? String.valueOf(e1.get("createBy")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("createBy")) ? String.valueOf(e2.get("createBy")) : ""; + return comparator.compare(e1Field, e2Field); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("createBy")) ? String.valueOf(e1.get("createBy")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("createBy")) ? String.valueOf(e2.get("createBy")) : ""; + return comparator.compare(e2Field, e1Field); + }); + } + } + if ("problemState".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("problemState")) ? String.valueOf(e1.get("problemState")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("problemState")) ? String.valueOf(e2.get("problemState")) : ""; + return comparator.compare(e1Field, e2Field); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + String e1Field = ObjectUtils.isNotEmpty(e1.get("problemState")) ? String.valueOf(e1.get("problemState")) : ""; + String e2Field = ObjectUtils.isNotEmpty(e2.get("problemState")) ? String.valueOf(e2.get("problemState")) : ""; + return comparator.compare(e2Field, e1Field); + }); + } + } + if ("createTime".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + if (e1.get("createTime") == null || e2.get("createTime") == null) { + return 0; + } + return comparator.compare(e1.get("createTime"), e2.get("createTime")); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + if (e1.get("createTime") == null || e2.get("createTime") == null) { + return 0; + } + return comparator.compare(e2.get("createTime"), e1.get("createTime")); + }); + } + } + if ("updateTime".equals(params.get("orderByField"))) { + if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + if (e1.get("updateTime") == null || e2.get("updateTime") == null) { + return 0; + } + return comparator.compare(e1.get("updateTime"), e2.get("updateTime")); + }); + } else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) { + Collections.sort(result, (e1, e2) -> { + if (e1.get("updateTime") == null || e2.get("updateTime") == null) { + return 0; + } + return comparator.compare(e2.get("updateTime"), e1.get("updateTime")); + }); + } + } + } + @NotNull private List> getNewData(Map params, String cut) { //新数据