From 4098ea2b95d6da283ac62f2ebb30ce37fe0d6d3f Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期五, 05 七月 2024 10:12:31 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override

---
 north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java |   59 ++++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 38 insertions(+), 21 deletions(-)

diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
index 3485126..3a1aafb 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -46,6 +46,7 @@
 
     public boolean saveOrder(Map<String,Object> orderMap) throws Exception {
         JSONObject orderJson = new JSONObject(orderMap);
+        String orderIdType = orderJson.getString("orderIdType");
         Order order = JSONObject.parseObject(JSONObject.toJSONString(orderJson.get("title")), Order.class);
         List<OrderDetail> OrderDetails = JSONArray.parseArray(JSONObject.toJSONString(orderJson.get("detail")), OrderDetail.class);
         List<OrderOtherMoney> orderOtherMoneyList = JSONArray.parseArray(JSONObject.toJSONString(orderJson.get("otherMoney")), OrderOtherMoney.class);
@@ -56,7 +57,7 @@
         //鍒ゆ柇浼犲叆id鍙傛暟鏄惁涓虹┖锛屾湭浼犲叆id涓虹┖鎻掑叆璁㈠崟琛紝浼犲叆鏇存柊琛�
         try{
             if(order.getOrderId() == null || order.getOrderId().isEmpty()){
-                insertOrder(order,OrderDetails,orderOtherMoneyList);
+                insertOrder(order,OrderDetails,orderOtherMoneyList,orderIdType);
             }else {
                 updateOrder(order,OrderDetails,orderOtherMoneyList);
             }
@@ -117,24 +118,42 @@
         return map;
     }
     //鐢熸垚璁㈠崟鏁版嵁
-    public void insertOrder(Order order,List<OrderDetail> OrderDetails,List<OrderOtherMoney> orderOtherMoneyList) {
-        Integer maxOrderId = orderMapper.selectMaxOrderId();
-        //鏌ヨ璁㈠崟id锛屽苟涓旇嚜澧�
-        String formattedNumber = String.format("%02d", maxOrderId+1);
-        //鏍煎紡鍖栧綋鍓嶆棩鏈�
-        Date currentDate = new Date();
-        SimpleDateFormat dateFormat = new SimpleDateFormat("yyMMdd");
-        String formattedDate = dateFormat.format(currentDate);
-        String orderId =  "NG"+formattedDate+formattedNumber;
+    public void insertOrder(Order order, List<OrderDetail> OrderDetails, List<OrderOtherMoney> orderOtherMoneyList, String orderIdType) {
+        //鏍规嵁浼犲叆鐨勫綋鍓嶆湀浠芥垨鑰呭綋澶╃敓鎴愯鍗昳d
+        String orderId =  getOrderId(orderIdType);
         //寰�涓昏〃鎻掓暟鎹�
         order.setOrderId(orderId);
         order.setCreateOrder(2);
         orderMapper.insert(order);
 
         insertOtherDetail(orderId,OrderDetails,orderOtherMoneyList);
-
-
     }
+
+    private String getOrderId(String dateType){
+        String orderId = null;
+        if(dateType.equals("day")){
+            Integer maxOrderId = orderMapper.selectMaxOrderId();
+            //鏌ヨ璁㈠崟id锛屽苟涓旇嚜澧�
+            String formattedNumber = String.format("%02d", maxOrderId+1);
+            //鏍煎紡鍖栧綋鍓嶆棩鏈�
+            Date currentDate = new Date();
+            SimpleDateFormat dateFormat = new SimpleDateFormat("yyMMdd");
+            String formattedDate = dateFormat.format(currentDate);
+            orderId =  "NG"+formattedDate+formattedNumber;
+        }else if(dateType.equals("month")){
+            Integer maxOrderId = orderMapper.selectMaxOrderIdByMonth();
+            String formattedNumber = String.format("%04d", maxOrderId+1);
+            Date currentDate = new Date();
+            SimpleDateFormat dateFormat = new SimpleDateFormat("yyMM");
+            String formattedDate = dateFormat.format(currentDate);
+            orderId =  "NG"+formattedDate+formattedNumber;
+
+        }
+
+        return orderId;
+    }
+
+
     //淇敼璁㈠崟鏁版嵁锛屽苟涓旈噸鏂扮敓鎴愬涓壇琛ㄦ暟鎹�
     public void updateOrder(Order order,List<OrderDetail> OrderDetails,List<OrderOtherMoney> orderOtherMoneyList) {
         LambdaUpdateWrapper<Order> updateWrapper = new LambdaUpdateWrapper<>();
@@ -214,11 +233,7 @@
         //淇敼璁㈠崟涓昏〃闈㈢Н涓庡懆闀夸互鍙婇噸閲�
         orderMapper.updateOrderParameter(orderId);
 
-        //鏌ヨ璁㈠崟灏忕墖琛ㄨ幏鍙栧伐鑹轰紶鍏ュ皬鐗囧伐鑹鸿〃
-        //List<OrderGlassDetail> orderGlassDetails = orderGlassDetailMapper.selectOrderGlassDetail(orderId);
-        /*List<OrderProcessDetail> orderProcessDetailList = getOrderProcessDetails(orderGlassDetails);
-        //璧嬪�艰鍗曞伐鑹鸿〃
-        orderProcessDetailMapper.insertOrderProcessDetail(orderProcessDetailList);*/
+        
     }
 
     public static List<OrderProcessDetail> getOrderProcessDetails(List<OrderGlassDetail> orderGlassDetails) {
@@ -273,6 +288,8 @@
         Order order = orderMapper.selectOne(new QueryWrapper<Order>().eq("order_id",id));
         List<OrderDetail> orderDetails = orderDetailMapper.selectList(new QueryWrapper<OrderDetail>().eq("order_id",id));
         List<OrderOtherMoney> orderOtherMoneyList = orderOtherMoneyMapper.findById(id);
+
+
         Map<String,Object> map = new HashMap<>();
         map.put("order",order);
         map.put("orderDetails",orderDetails);
@@ -457,12 +474,12 @@
         return returns;
     }
 
-    public Object printOrderProductDetails(String orderId,String productId) {
+    public Object printOrderProductDetails(String orderId,List<String> productId) {
         List<Map<String,Object>> orderProductDistinct;
-        if (productId!=""){
-             orderProductDistinct = orderDetailMapper.getOrderProductDistinctByIds(orderId,productId);
+        if (productId.size()>0){
+            orderProductDistinct = orderDetailMapper.getOrderProductDistinctByIds(orderId,productId);
         }else{
-             orderProductDistinct = orderDetailMapper.getOrderProductDistinctById(orderId);
+            orderProductDistinct = orderDetailMapper.getOrderProductDistinctById(orderId);
         }
 
         List<Map<String,Object>> orderProductDetail = new ArrayList<>();

--
Gitblit v1.8.0