From 68639448283c5e90625f55d0e3183575b84930ca Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 13 九月 2024 10:07:52 +0800
Subject: [PATCH] 订单号修改

---
 north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue          |    5 ++++-
 north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml               |   14 ++++++++++++++
 north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java   |    6 ++++++
 north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java |   14 ++++++++++++++
 4 files changed, 38 insertions(+), 1 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
index 0c870cc..a8c6187 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -1006,7 +1006,8 @@
 const updateOrderId = () => {
   let orderId ={
     oldOrderId:titleUploadData.value.orderId,
-    newOrderId:newOrderId.value
+    newOrderId:newOrderId.value,
+    orderIdType:company.orderIdType
   }
   request.post(`/order/updateOrderId`,orderId).then((res) => {
     if(res.code==200 && res.data==="true"){
@@ -1024,6 +1025,8 @@
       ElMessage.warning("杈撳叆璁㈠崟鍙烽暱搴︿笉绗�")
     }else if(res.data==="false5"){
       ElMessage.warning("璇疯緭鍏ユ暟瀛�")
+    }else if(res.data==="false6"){
+      ElMessage.warning("涓嶈兘淇敼绗竴涓崟瀛�")
     }
   })
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java
index 2c2a8a6..1737b71 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java
@@ -39,5 +39,11 @@
 
     Integer selectOrderIdIs(Integer substringInt);
 
+    Integer selectOrderIdDay(String oldOrderId);
+
+    Integer selectOrderIdMonth(String oldOrderId);
+
+    Integer selectOrderIdYear(String oldOrderId);
+
     Boolean updateOrderId(String oldOrderId,String newOrderId);
 }
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 c23c3ab..05f20a0 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
@@ -688,6 +688,7 @@
         JSONObject orderJson = new JSONObject(map);
         String oldOrderId = orderJson.getString("oldOrderId");
         String newOrderId = orderJson.getString("newOrderId");
+        String orderIdType = orderJson.getString("orderIdType");
         if(!Objects.equals(newOrderId, oldOrderId)){
             if(newOrderId.length()!=10){
                 return "false4";
@@ -695,6 +696,19 @@
             if(!newOrderId.substring(2, 10).matches("\\d+")){
                 return "false5";
             }
+            if(Objects.equals(orderIdType, "day")){
+                if(orderMapper.selectOrderIdDay(oldOrderId)==1){
+                    return "false6";
+                }
+            }else if(Objects.equals(orderIdType, "month")){
+                if(orderMapper.selectOrderIdMonth(oldOrderId)==1){
+                    return "false6";
+                }
+            }else if(Objects.equals(orderIdType, "year")){
+                if(orderMapper.selectOrderIdYear(oldOrderId)==1){
+                    return "false6";
+                }
+            }
             String substring = newOrderId.substring(1, 3);
             Integer substringInt = Integer.parseInt(newOrderId.substring(2, 10));
             if(!substring.equals("NG")){
diff --git a/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
index 7436f02..ab9cad0 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
@@ -49,6 +49,20 @@
         select count(*) from sd.`order` where SUBSTR(order_id,3,11)=#{substringInt}
     </select>
 
+    <select id="selectOrderIdDay">
+        select count(*) from sd.`order` where order_id=#{oldOrderId} and SUBSTR(#{oldOrderId},9,2)=01
+    </select>
+
+    <select id="selectOrderIdMonth">
+        select count(*) from sd.`order` where order_id=#{oldOrderId} and SUBSTR(#{oldOrderId},7,4)=0001
+    </select>
+
+    <select id="selectOrderIdYear">
+        select count(*) from sd.`order` where order_id=#{oldOrderId} and SUBSTR(#{oldOrderId},5,2)=000001
+    </select>
+
+
+
     <update id="updateOrderId">
         update sd.`order` set order_id=#{newOrderId} where order_id=#{oldOrderId}
     </update>

--
Gitblit v1.8.0