Преглед изворни кода

客户收支明细表适配排序

liuyao пре 1 година
родитељ
комит
fb83f7d089

+ 1 - 0
src/main/java/com/dk/mdm/mapper/report/ReportMapper.xml

@@ -3087,6 +3087,7 @@
         </if>
         </if>
         GROUP BY a.object_id, tmc.cus_name, tmc.cus_phone, tmc.address_full
         GROUP BY a.object_id, tmc.cus_name, tmc.cus_phone, tmc.address_full
         HAVING SUM(COALESCE(tpo.out_amt, 0) + COALESCE(tpo.return_amt, 0)) - SUM(COALESCE(tmrp.sum_amt_rec, 0) + COALESCE(sum_amt_pay, 0)) > 0
         HAVING SUM(COALESCE(tpo.out_amt, 0) + COALESCE(tpo.return_amt, 0)) - SUM(COALESCE(tmrp.sum_amt_rec, 0) + COALESCE(sum_amt_pay, 0)) > 0
+
         <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
         <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
             limit #{end} offset #{start}
             limit #{end} offset #{start}
         </if>
         </if>

+ 16 - 4
src/main/java/com/dk/mdm/service/report/ReportService.java

@@ -36,10 +36,7 @@ import java.math.RoundingMode;
 import java.rmi.MarshalledObject;
 import java.rmi.MarshalledObject;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.concurrent.atomic.AtomicReference;
 import java.util.concurrent.atomic.AtomicReference;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 import java.util.regex.Matcher;
 import java.util.regex.Matcher;
@@ -767,6 +764,21 @@ public class ReportService {
 //            map.put("item", userArrearsItem);
 //            map.put("item", userArrearsItem);
             map.put("arrears", total);
             map.put("arrears", total);
         }
         }
+        if(params.get("sort") != null) {
+            List<Map<String, Object>> processedArrears = arrears;
+            switch (String.valueOf(params.get("sort"))){
+                case "order":
+                    arrears = arrears.stream()
+                            .sorted(Comparator.comparingDouble((Map map) -> Double.valueOf(String.valueOf(map.get("arrears")))))
+                            .collect(Collectors.toList());
+                    break;
+                case "down":
+                    arrears = arrears.stream()
+                            .sorted(Comparator.comparingDouble((Map map) -> Double.valueOf(String.valueOf(map.get("arrears")))).reversed())
+                            .collect(Collectors.toList());
+                    break;
+            }
+        }
         if (Integer.parseInt(params.get("currentPage").toString()) == 1) {
         if (Integer.parseInt(params.get("currentPage").toString()) == 1) {
             // 查询公司概况
             // 查询公司概况
             // 获取销售额
             // 获取销售额