Selaa lähdekoodia

aps-前端js和后端java使用相同的排序规则

sucheng 11 kuukautta sitten
vanhempi
commit
ce9bc742ea

+ 7 - 6
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsBlankOrderServiceImpl.java

@@ -34,12 +34,12 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.text.Collator;
 import java.text.SimpleDateFormat;
 import java.time.ZoneId;
 import java.util.*;
@@ -1565,6 +1565,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
 //                }
 //            }
 //        }
+        Collator collator = Collator.getInstance(Locale.US);
         if (checkLevel == 2 || checkLevel == 3) {
             //==============拼接工艺路线输出成品和工艺输出物料规格==============
             //查询坯料计划对应工艺路线的输出成品
@@ -1573,7 +1574,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                 //工艺路线输出成品
                 String outputProcessMaterial = "";
                 //排序
-                processOutputList.sort(String::compareTo);
+                processOutputList.sort(collator);
                 for (int i = 0; i < processOutputList.size(); i++) {
                     outputProcessMaterial += "[" + (i + 1) + "]" + processOutputList.get(i);
                     if (i < processOutputList.size() - 1) {
@@ -1587,7 +1588,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                 List<String> processOutputMaterialSpecificationList = processOutputList.stream().map(item -> {
                     String[] s = item.split(" ");
                     return s[0] + " " + s[1];
-                }).sorted(String::compareTo).collect(Collectors.toList());
+                }).sorted(collator).collect(Collectors.toList());
                 for (int i = 0; i < processOutputMaterialSpecificationList.size(); i++) {
                     processOutputMaterialSpecification += "[" + (i + 1) + "]" + processOutputMaterialSpecificationList.get(i);
                     if (i < processOutputMaterialSpecificationList.size() - 1) {
@@ -2036,7 +2037,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                 }
             }
         }
-
+        Collator collator = Collator.getInstance(Locale.US);
         if (checkLevel == 2 || checkLevel == 3) {
             //==============拼接工艺路线输出成品==============
             //查询坯料计划对应工艺路线的输出成品
@@ -2045,7 +2046,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                 //工艺路线输出成品
                 String outputProcessMaterial = "";
                 //排序
-                processOutputList.sort(String::compareTo);
+                processOutputList.sort(collator);
                 for (int i = 0; i < processOutputList.size(); i++) {
                     outputProcessMaterial += "[" + (i + 1) + "]" + processOutputList.get(i);
                     if (i < processOutputList.size() - 1) {
@@ -2059,7 +2060,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                 List<String> processOutputMaterialSpecificationList = processOutputList.stream().map(item -> {
                     String[] s = item.split(" ");
                     return s[0] + " " + s[1];
-                }).sorted(String::compareTo).collect(Collectors.toList());
+                }).sorted(collator).collect(Collectors.toList());
                 for (int i = 0; i < processOutputMaterialSpecificationList.size(); i++) {
                     processOutputMaterialSpecification += "[" + (i + 1) + "]" + processOutputMaterialSpecificationList.get(i);
                     if (i < processOutputMaterialSpecificationList.size() - 1) {