From 35dca726bf82b7d9a77fee5157d9143bd9dde3ea Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期二, 14 一月 2025 14:57:06 +0800
Subject: [PATCH] 添加AGV告警处理及回调接口

---
 src/main/java/com/zy/asrs/utils/Utils.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index d456395..5dc6c20 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -1,6 +1,8 @@
 package com.zy.asrs.utils;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.core.common.Arith;
@@ -458,6 +460,14 @@
         wapperSetCondition(wrapper,"batch",batch);
     }
 
+    public static void confirmOnlyMat2(Wrapper wrapper, String orderNo, String matnr, String batch, String threeCode, String deadTime){
+        wapperSetCondition(wrapper,"matnr",matnr);
+        wapperSetCondition(wrapper,"order_no",orderNo);
+        wapperSetCondition(wrapper,"three_code",threeCode);
+        wapperSetCondition(wrapper,"dead_time",deadTime);
+        wapperSetCondition(wrapper,"batch",batch);
+    }
+
     //鐢熸垚搴撳瓨璋冩暣璁板綍鍗曟嵁鍙� (骞存湀鏃�+4浣嶆祦姘�)
     public static String generateAdjustOrderNo(){
         Date date = new Date();
@@ -494,4 +504,57 @@
         }
     }
 
+    public static String getOrderNo(String orderNo, double anfme){
+        JSONArray orderArray = new JSONArray();
+        //濡傛灉璁㈠崟鍙蜂负jsonString
+        if(orderNo.contains("{")){
+            JSONArray jsonArray = JSON.parseArray(orderNo);
+            //閬嶅巻鎵�鏈夎鍗曞彿鍙婅鍗曟暟閲�
+            for (Object o : jsonArray){
+                JSONObject orderJson = (JSONObject) o;
+                Double orderAnfme = orderJson.getDouble("anfme");
+                //濡傛灉璁㈠崟鏁伴噺涓�0锛屽垯璺宠繃
+                if(orderAnfme <= 0){
+                    continue;
+                }
+                if(orderAnfme > anfme){
+                    //濡傛灉璁㈠崟鏁伴噺澶т簬璇ュ簱瀛樻暟閲忥紝涓旇鍗曟暟缁勪负绌猴紝鍒欑洿鎺ヨ繑鍥炶璁㈠崟鍙凤紝鍚﹀垯灏卞皢璇ヨ鍗曟坊鍔犲埌璁㈠崟鏁扮粍
+                    if(orderArray.isEmpty()){
+                        return orderJson.getString("orderNo");
+                    }else {
+                        orderJson.put("anfme",anfme);
+                        orderArray.add(orderJson);
+                    }
+                }else {
+                    anfme -= orderAnfme;
+                    orderArray.add(orderJson);
+                }
+            }
+            return orderArray.toJSONString();
+        }else {
+            return orderNo;
+        }
+
+    }
+
+    public static String orderMergeUpdate(String orderNo, double anfme){
+        if(orderNo.contains("{")){
+            JSONArray jsonArray = JSON.parseArray(orderNo);
+            for(int i=0; i<jsonArray.size(); i++){
+                JSONObject orderJson = (JSONObject)jsonArray.get(i);
+                Double orderAnfme = orderJson.getDouble("anfme");
+                if(orderAnfme > anfme){
+                    ((JSONObject) jsonArray.get(i)).put("anfme",orderAnfme - anfme);
+                    return jsonArray.toJSONString();
+                }else {
+                    ((JSONObject) jsonArray.get(i)).put("anfme",0);
+                    anfme -= orderAnfme;
+                }
+            }
+            return jsonArray.toJSONString();
+        }else {
+            return orderNo;
+        }
+    }
+
 }

--
Gitblit v1.9.1