From cb570dc40deb46e5e581eac16ea7da12af51ca7e Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Tue, 29 Aug 2023 10:18:12 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A8=E5=A4=B4=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/entity/ProjectRxswinEO.java | 8 ++ .../impl/ProjectRxswinEOServiceImpl.java | 81 ++++++++++++++++++- 2 files changed, 88 insertions(+), 1 deletion(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRxswinEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRxswinEO.java index 6722e3428..78cd7a299 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRxswinEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRxswinEO.java @@ -97,4 +97,12 @@ public class ProjectRxswinEO implements Serializable { @ApiModelProperty(value = "编号") private String serialNumber; + @TableField(exist = false) + @ApiModelProperty(value = "表头排序字段") + private java.lang.String orderByField; + + @TableField(exist = false) + @ApiModelProperty(value = "排序") + private java.lang.String orderBy; + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRxswinEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRxswinEOServiceImpl.java index 7f05bb5f7..4ce068582 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRxswinEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRxswinEOServiceImpl.java @@ -9,6 +9,7 @@ import com.jero.common.system.vo.LoginUser; import com.jero.common.util.PageUtil; import com.jero.modules.document.entity.BussDocumentLibraryEO; import com.jero.modules.document.service.impl.BussDocumentLibraryEOServiceImpl; +import com.jero.modules.dummy.enums.OrderEnum; import com.jero.modules.project.entity.ProjectLibraryBase; import com.jero.modules.project.entity.ProjectRxswinEO; import com.jero.modules.project.enums.StatusEnum; @@ -19,10 +20,12 @@ import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.text.Collator; import java.util.Arrays; import java.util.Collections; import java.util.Date; import java.util.List; +import java.util.Locale; import java.util.UUID; import java.util.stream.Collectors; @@ -141,7 +144,9 @@ public class ProjectRxswinEOServiceImpl extends ServiceImpl projectRxswinEOList = this.list(wrapper); if(!projectRxswinEOList.isEmpty()){ @@ -158,6 +163,7 @@ public class ProjectRxswinEOServiceImpl extends ServiceImpl e.getSerialNumber().contains(projectRxswinEO.getSerialNumber())).collect(Collectors.toList()); } + heartSort(projectRxswinEO,projectRxswinEOList); } return PageUtil.getPages(pageNo,pageSize,projectRxswinEOList); } @@ -211,6 +217,9 @@ public class ProjectRxswinEOServiceImpl extends ServiceImpl projectRxswinEOList = this.list(wrapper); @@ -228,6 +237,7 @@ public class ProjectRxswinEOServiceImpl extends ServiceImpl e.getSerialNumber().contains(projectRxswinEO.getSerialNumber())).collect(Collectors.toList()); } + heartSort(projectRxswinEO,projectRxswinEOList); } return PageUtil.getPages(pageNo,pageSize,projectRxswinEOList); } @@ -365,4 +375,73 @@ public class ProjectRxswinEOServiceImpl extends ServiceImpl projectRxswinEOList) { + Collator comparator = Collator.getInstance(Locale.CHINESE); + // 编号 + if ("serialNumber".equals(projectRxswinEO.getOrderByField())) { + if (OrderEnum.POSITIVE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1PlannedBpLaunchBatch = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getSerialNumber()) ? e1.getSerialNumber() : ""; + String e2PlannedBpLaunchBatch = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getSerialNumber()) ? e2.getSerialNumber() : ""; + return comparator.compare(e1PlannedBpLaunchBatch, e2PlannedBpLaunchBatch); + }); + } else if (OrderEnum.REVERSE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1PlannedBpLaunchBatch = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getSerialNumber()) ? e1.getSerialNumber() : ""; + String e2PlannedBpLaunchBatch = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getSerialNumber()) ? e2.getSerialNumber() : ""; + return comparator.compare(e2PlannedBpLaunchBatch, e1PlannedBpLaunchBatch); + }); + } + } + // 主题 + if ("theme".equals(projectRxswinEO.getOrderByField())) { + if (OrderEnum.POSITIVE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1Market = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getTheme()) ? e1.getTheme() : ""; + String e2Market = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getTheme()) ? e2.getTheme() : ""; + return comparator.compare(e1Market, e2Market); + }); + } else if (OrderEnum.REVERSE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1Market = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getTheme()) ? e1.getTheme() : ""; + String e2Market = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getTheme()) ? e2.getTheme() : ""; + return comparator.compare(e2Market, e1Market); + }); + } + } + //RXSWIN + if ("rxswin".equals(projectRxswinEO.getOrderByField())) { + if (OrderEnum.POSITIVE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1Market = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getRxswin()) ? e1.getRxswin() : ""; + String e2Market = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getRxswin()) ? e2.getRxswin() : ""; + return comparator.compare(e1Market, e2Market); + }); + } else if (OrderEnum.REVERSE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1Market = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getRxswin()) ? e1.getRxswin() : ""; + String e2Market = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getRxswin()) ? e2.getRxswin() : ""; + return comparator.compare(e2Market, e1Market); + }); + } + } + + //对应版本 + if ("version".equals(projectRxswinEO.getOrderByField())) { + if (OrderEnum.POSITIVE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1Market = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getVersion()) ? e1.getVersion() : ""; + String e2Market = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getVersion()) ? e2.getVersion() : ""; + return comparator.compare(e1Market, e2Market); + }); + } else if (OrderEnum.REVERSE.getValue().equals(projectRxswinEO.getOrderBy())) { + Collections.sort(projectRxswinEOList, (e1, e2) -> { + String e1Market = com.jero.modules.system.util.StringUtils.isNotBlank(e1.getVersion()) ? e1.getVersion() : ""; + String e2Market = com.jero.modules.system.util.StringUtils.isNotBlank(e2.getVersion()) ? e2.getVersion() : ""; + return comparator.compare(e2Market, e1Market); + }); + } + } + } }