From 58bccbc9d1a23c8184217317a9a37345d98883c2 Mon Sep 17 00:00:00 2001
From: 18516761980 <4761516tqsxp>
Date: 星期一, 28 三月 2022 15:44:07 +0800
Subject: [PATCH] .

---
 src/main/java/zy/cloud/wms/manager/controller/OrderController.java |   44 +++++++++++++++++++++++++++++++++++---------
 1 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/src/main/java/zy/cloud/wms/manager/controller/OrderController.java b/src/main/java/zy/cloud/wms/manager/controller/OrderController.java
index 1934bb6..29dd6ce 100644
--- a/src/main/java/zy/cloud/wms/manager/controller/OrderController.java
+++ b/src/main/java/zy/cloud/wms/manager/controller/OrderController.java
@@ -26,6 +26,7 @@
 import zy.cloud.wms.manager.service.OrderService;
 import zy.cloud.wms.manager.service.WaveDetlService;
 import zy.cloud.wms.manager.service.WaveService;
+import zy.cloud.wms.manager.utils.AddZero;
 
 import javax.imageio.ImageIO;
 import javax.servlet.http.HttpServletResponse;
@@ -63,11 +64,15 @@
         excludeTrash(param);
         convert(param, wrapper);
         hostEq(wrapper);
-        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
-        else {
-            wrapper.orderBy("update_time", false);
+        if (!Cools.isEmpty(orderByField)){
+            wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
         }
-        return R.ok(orderService.selectPage(new Page<>(curr, limit), wrapper));
+        else {
+            wrapper.orderBy("create_time",false);
+        }
+
+        Page<Order> orderPage = orderService.selectPage(new Page<>(curr, limit), wrapper);
+        return R.ok(orderPage);
     }
 
     private void convert(Map<String, Object> map, EntityWrapper wrapper){
@@ -202,9 +207,10 @@
      */
     @RequestMapping("/orders/wave/auth")
     @ManagerAuth
+    @Transactional
     public R createWave(@RequestBody List<Order> orders){
         /**
-         * 鎺х
+         * 鎺х涓庡垵濮嬪寲
          */
         Integer seqNo = 1;
         for (Order order : orders) {
@@ -213,17 +219,28 @@
             }
         }
 
-
         /**
          * 鐢熸垚娉㈡琛ㄥご
          */
-
         Wave wave = new Wave();
         wave.setHostId(getHostId());
         String s = UUID.randomUUID().toString().replace("-","");
         wave.setUuid(s);
-        String waveNo = "WAVE-" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
-        wave.setWaveNo(waveNo);
+        String waveNo = "WAVE-" + new SimpleDateFormat("yyyyMMdd").format(new Date())+"-";
+        String currNum = waveService.getCurrNum(waveNo);
+        if (!Cools.isEmpty(currNum)) {
+            String[] split = currNum.split("-");
+            if (split.length < 3){
+                wave.setWaveNo(waveNo + "0001");
+            } else {
+                Integer newNum = Integer.parseInt(split[2]) + 1;
+                String format = AddZero.addZeroForNum(newNum + "", 4);
+                wave.setWaveNo(waveNo + format);
+            }
+        }else {
+            wave.setWaveNo(waveNo + "0001");
+        }
+
         wave.setOrdersQty(orders.size());
         wave.setStatus((short) 0);
         wave.setCreateBy(getUserId());
@@ -267,6 +284,15 @@
                         .eq("id",checkWaveDetl.getId()));
             }
         }
+
+        /**
+         * 鎺х,鍑鸿繃BUG,鍙敓鎴愯〃澶�,涓嶇敓鎴愯〃韬�
+         */
+        if (Cools.isEmpty(allOrderDetls)) {
+            waveService.delete(new EntityWrapper<Wave>()
+                    .eq("id",wave.getId()));
+            throw new CoolException("鎵句笉鍒板嚭搴撳崟缁嗚妭,璇疯仈绯荤鐞嗗憳");
+        }
         /**
          * 鍙嶅啓鍑哄簱鍗曡〃澶�
          */

--
Gitblit v1.9.1