Browse Source

主报销详情订单信息修改

anderx 1 year ago
parent
commit
2bedea11ff

+ 7 - 0
src/main/java/com/goafanti/common/model/OrderYearMaxDuration.java

@@ -44,6 +44,13 @@ public class OrderYearMaxDuration implements Serializable {
     public OrderYearMaxDuration() {
     }
 
+    public OrderYearMaxDuration(String orderNo, Integer year, Integer status, BigDecimal maxDuration) {
+        this.orderNo = orderNo;
+        this.year = year;
+        this.status = status;
+        this.maxDuration = maxDuration;
+    }
+
     public OrderYearMaxDuration(String orderNo) {
         this.orderNo = orderNo;
     }

+ 8 - 0
src/main/java/com/goafanti/expenseAccount/bo/MainExpenseAccount.java

@@ -40,7 +40,15 @@ public class MainExpenseAccount  {
     private Integer examine;
 
     private List<SonExpenseAccount> sonList;
+    private List<String> strList;
 
+    public List<String> getStrList() {
+        return strList;
+    }
+
+    public void setStrList(List<String> strList) {
+        this.strList = strList;
+    }
 
     @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
     public Date getCreateTime() {

+ 12 - 4
src/main/java/com/goafanti/expenseAccount/service/impl/ExpenseAccountServiceImpl.java

@@ -1408,7 +1408,16 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
 
     private void pushData(MainExpenseAccount res) {
         List<SonExpenseAccount> sonList = res.getSonList();
-        for (SonExpenseAccount e : sonList) {
+        List<String> orderList = new ArrayList<>();
+        List<SonExpenseAccount> orderSonList = new ArrayList<>();
+        sonList.stream().forEach(e -> {
+            if (!orderList.contains(e.getOrderNo())){
+                orderList.add(e.getOrderNo());
+                orderSonList.add(e);
+            }
+        });
+        orderList.clear();
+        for (SonExpenseAccount e : orderSonList) {
             if (StringUtils.isNotEmpty(e.getUserNames())){
                 String userNames = e.getUserNames();
                 String  districtName = e.getDistrictName();
@@ -1465,10 +1474,8 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
                     }
 
                 }
-
-
                 String str = getString(e, out, count, yxyCount, zxsCount,qtCount,useOyd);
-                e.setCountStr(str);
+                orderList.add(str);
             }
         }
 
@@ -1480,6 +1487,7 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
     private String getString(SonExpenseAccount e, TOrderPublicReleaseCount out, BigDecimal count, BigDecimal yxyCount,
                              BigDecimal zxsCount, BigDecimal qtCount,OrderYearMaxDuration useOyd) {
         TOrderPublicReleaseCountBo bo = new TOrderPublicReleaseCountBo();
+        if (out==null||useOyd==null)return String.format("订单%s统计信息不存在,请要营销员先将订单派单。",e.getOrderNo());
         bo.setMaxDuration(useOyd.getMaxDuration());
         bo.setExceedDuration(useOyd.getMaxDuration().subtract(BigDecimal.valueOf(out.getActualDuration())).abs());
         bo.setActualDuration(out.getActualDuration());