From bf5ef3b3e0a14781b447750f2b4b3dc02c781bd1 Mon Sep 17 00:00:00 2001
From: lsh <lsh>
Date: 星期五, 12 七月 2024 22:52:01 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/handler/StaEscalationHandler.java         |    2 
 src/main/java/com/zy/asrs/task/ScaleEscalationScheduler.java             |   37 +++++++++
 src/main/java/com/zy/asrs/task/escalationParam/ScaleEscalationParam.java |   28 +++++++
 src/main/java/com/zy/asrs/task/handler/ScaleEscalationHandler.java       |  145 ++++++++++++++++++++++++++++++++++++
 4 files changed, 211 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/ScaleEscalationScheduler.java b/src/main/java/com/zy/asrs/task/ScaleEscalationScheduler.java
new file mode 100644
index 0000000..4928808
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/ScaleEscalationScheduler.java
@@ -0,0 +1,37 @@
+package com.zy.asrs.task;
+
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.task.handler.ScaleEscalationHandler;
+import com.zy.asrs.task.handler.StaEscalationHandler;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+/**
+ * Created by Monkey D. Luffy on 2024.07.11
+ * 浜冲窞鐓滄槦..............浠ヤ笅.............浜冲窞鐓滄槦.............2妤肩炕杞�掓枡淇℃伅涓婁紶澶勭悊澶辫触
+ */
+@Slf4j
+@Component
+public class ScaleEscalationScheduler {
+
+    @Autowired
+    private ScaleEscalationHandler scaleEscalationHandler;
+
+    @Scheduled(cron = "0/3 * * * * ? ")
+    private void execute(){//2妤肩炕杞�掓枡淇℃伅涓婁紶
+        int[] staNos =new int[]{460,453};
+        for (int staNo : staNos){
+            try{
+                ReturnT<String> result = scaleEscalationHandler.start(staNo);
+                if (result.getCode()==200){
+                    break;
+                }
+            }catch (Exception e){
+                log.error("绔欑偣"+staNo+"2妤肩炕杞�掓枡淇℃伅涓婁紶澶勭悊澶辫触锛屽紓甯镐俊鎭細"+e);
+            }
+        }
+    }
+
+}
diff --git a/src/main/java/com/zy/asrs/task/escalationParam/ScaleEscalationParam.java b/src/main/java/com/zy/asrs/task/escalationParam/ScaleEscalationParam.java
new file mode 100644
index 0000000..3cd67fb
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/escalationParam/ScaleEscalationParam.java
@@ -0,0 +1,28 @@
+package com.zy.asrs.task.escalationParam;
+
+import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.entity.WrkMast;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/*
+ *  Created by Monkey D. Luffy on 2023.07.19
+ * */
+@Data
+public class ScaleEscalationParam {
+    private String barcode;//	鏄�	瀛楃涓�	鎵樼洏鐮�
+    private String boxType;//	鏄�	瀛楃涓�	鐮佸灈鏈ㄧ绫诲瀷锛堝悓涓�鎵樼洏涓�绉嶇被鍨嬶級
+    private String palletizingNo;//	鏄�	瀛楃涓�	鐮佸灈鏈ㄧ绫诲瀷锛堝悓涓�鎵樼洏涓�绉嶇被鍨嬶級  搴熷純
+    private String createTime;//		鏄�	瀛楃涓�	鍒涘缓鏃堕棿
+    private Double weight;//		鏄�	瀛楃涓�	鍒涘缓鏃堕棿
+
+
+    public ScaleEscalationParam(){}
+
+    public ScaleEscalationParam(Double weight){
+        this.weight = weight;
+    }
+}
diff --git a/src/main/java/com/zy/asrs/task/handler/ScaleEscalationHandler.java b/src/main/java/com/zy/asrs/task/handler/ScaleEscalationHandler.java
new file mode 100644
index 0000000..2084791
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/handler/ScaleEscalationHandler.java
@@ -0,0 +1,145 @@
+package com.zy.asrs.task.handler;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.service.*;
+import com.zy.asrs.task.AbstractHandler;
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.task.escalationParam.ScaleEscalationParam;
+import com.zy.asrs.task.escalationParam.StaEscalationParam;
+import com.zy.common.utils.HttpHandler;
+import com.zy.core.cache.SlaveConnection;
+import com.zy.core.enums.SlaveType;
+import com.zy.core.model.protocol.StaProtocol;
+import com.zy.core.thread.SiemensDevpThread;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * Created by Monkey D. Luffy on 2024.07.11
+ * 浜冲窞鐓滄槦..............浠ヤ笅.............浜冲窞鐓滄槦.............1妤肩炕杞噸閲忎俊鎭笂浼犲鐞嗗け璐�
+ */
+@Slf4j
+@Service
+@Transactional
+public class ScaleEscalationHandler extends AbstractHandler<String> {
+
+    @Autowired
+    private WrkMastService wrkMastService;
+    @Autowired
+    private WrkDetlService wrkDetlService;
+    @Autowired
+    private StaDescService staDescService;
+    @Autowired
+    private ApiLogService apiLogService;
+    @Autowired
+    private BasDevpService basDevpService;
+
+//    @Value("${srHangJia.url}")
+    private String erpUrl = "10.10.11.100:8580";
+//    @Value("${srHangJia.reportOutPath}")
+    private String reportOutPath = "mes/wms-service/boxWeight";
+
+    public ReturnT<String> start(int staNo) {
+        try{
+            BasDevp basDevp = basDevpService.selectById(staNo);
+            if (Cools.isEmpty(basDevp) || basDevp.getReportSign()==1){
+                return FAIL;
+            }
+            SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+            StaProtocol staProtocol = devpThread.getStation().get(staNo);
+            if (staProtocol == null) {
+                return FAIL;
+            } else {
+                staProtocol = staProtocol.clone();
+            }
+
+            if (!Cools.isEmpty(basDevp) && basDevp.getAutoing().equals("Y") && basDevp.getWrkNo()==0){
+                if (staProtocol.isAutoing() && staProtocol.getWorkNo()==0 && staProtocol.isInEnable()){
+                    log.error("1妤肩炕杞噸閲忎俊鎭笂浼犳椂锛岀珯鐐圭姸鎬侊細"+JSON.toJSONString(staProtocol));
+                    ScaleEscalationParam scaleEscalationParam = new ScaleEscalationParam(basDevp.getGrossWt());
+                    ReturnT<String> result = postMesData(reportOutPath,scaleEscalationParam);
+                    if (result.getCode()==200){
+                        basDevp.setReportSign(1);
+                        basDevpService.updateById(basDevp);
+                        return SUCCESS;
+                    }else {
+                        log.error("1妤肩炕杞噸閲忎俊鎭笂浼犲け璐�");
+                    }
+                }
+            }
+        }catch (Exception e){
+            log.error("寮傚父锛侊紒锛�"+e);
+            return FAIL;
+        }
+        return FAIL;
+    }
+
+    private ReturnT<String> postMesData(String erpPath,Object combParam){
+        if(combParam != null){
+            String response = "";
+            boolean success = false;
+            try {
+                response = new HttpHandler.Builder()
+                        .setUri(erpUrl)
+                        .setPath(erpPath)
+                        .setJson(JSON.toJSONString(combParam))
+                        .build()
+                        .doPost();
+                JSONObject jsonObject = JSON.parseObject(response);
+                if (jsonObject.getInteger("Code")==200) {
+                    success = true;
+                } else {
+                    log.error("1妤肩炕杞噸閲忎俊鎭笂浼犺姹傛帴鍙eけ璐ワ紒锛侊紒url锛歿}锛況equest锛歿}锛況esponse锛歿}"+erpUrl+erpPath, JSON.toJSONString(combParam), response);
+                    throw new CoolException("涓婃姤mes绯荤粺澶辫触");
+                }
+            } catch (Exception e) {
+                log.error("fail", e);
+//                      TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                return FAIL.setMsg(e.getMessage());
+            } finally {
+                try {
+                    // 淇濆瓨鎺ュ彛鏃ュ織
+                    apiLogService.save(
+                            "涓婃姤MES绯荤粺",
+                            erpUrl + erpPath,
+                            null,
+                            erpUrl,
+                            JSON.toJSONString(combParam),
+                            response,
+                            success
+                    );
+                } catch (Exception e) { log.error("", e); }
+            }
+        }
+        return SUCCESS;
+    }
+
+    public Integer getStaOther(Integer staNo){
+        switch (staNo){
+            case 118:
+                return 119;
+            case 119:
+                return 118;
+            case 120:
+                return 121;
+            case 121:
+                return 120;
+            default:
+                return 0;
+        }
+    }
+
+
+}
diff --git a/src/main/java/com/zy/asrs/task/handler/StaEscalationHandler.java b/src/main/java/com/zy/asrs/task/handler/StaEscalationHandler.java
index 4dc12da..1d90d47 100644
--- a/src/main/java/com/zy/asrs/task/handler/StaEscalationHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/StaEscalationHandler.java
@@ -87,7 +87,7 @@
                         basDevpService.updateById(basDevp);
                         return SUCCESS;
                     }else {
-                        log.error("鎷嗗灈淇℃伅涓婁紶澶辫触");
+                        log.error("2妤肩炕杞�掓枡淇℃伅涓婁紶澶辫触");
                     }
                 }
             }

--
Gitblit v1.9.1