From ba1fd16f681598ace796d00032d689bacc3ff972 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期三, 30 七月 2025 10:03:27 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/controller/MonitorController.java |  214 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 210 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MonitorController.java b/src/main/java/com/zy/asrs/controller/MonitorController.java
index a827610..c29889d 100644
--- a/src/main/java/com/zy/asrs/controller/MonitorController.java
+++ b/src/main/java/com/zy/asrs/controller/MonitorController.java
@@ -1,27 +1,36 @@
 package com.zy.asrs.controller;
 
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Arith;
 import com.core.common.Cools;
 import com.core.common.R;
 import com.zy.asrs.domain.dto.AxisBean;
 import com.zy.asrs.domain.dto.WorkChartAxis;
 import com.zy.asrs.domain.vo.LocChartPie;
+import com.zy.asrs.entity.RgvOneSign;
+import com.zy.asrs.entity.WaitPakin;
 import com.zy.asrs.mapper.ReportQueryMapper;
+import com.zy.asrs.mapper.RgvOneSignMapper;
+import com.zy.asrs.mapper.WaitPakinMapper;
+import com.zy.asrs.service.ApiLogService;
+import com.zy.asrs.service.WrkDetlService;
 import com.zy.common.model.MatDto;
 import com.zy.common.service.CommonService;
 import com.zy.core.CrnThread;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.model.DevpSlave;
 import com.zy.core.model.LedSlave;
 import com.zy.core.model.command.LedCommand;
 import com.zy.core.model.protocol.CrnProtocol;
+import com.zy.core.model.protocol.StaProtocol;
 import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.BarcodeThread;
 import com.zy.core.thread.LedThread;
+import com.zy.core.thread.SiemensDevpThread;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -39,6 +48,189 @@
     private ReportQueryMapper reportQueryMapper;
     @Autowired
     private SlaveProperties slaveProperties;
+    @Autowired
+    private WrkDetlService wrkDetlService;
+    @Autowired
+    private WaitPakinMapper waitPakinMapper;
+    @Autowired
+    private ApiLogService apiLogService;
+    @Autowired
+    private RgvOneSignMapper rgvOneSignMapper;
+
+    /**
+     * 鑾峰彇褰撳墠鏃堕棿
+     */
+    @PostMapping("/barcode/two")
+    public R barcodeTwo(@RequestParam Integer palletizingNo) {
+        Date now = new Date();
+
+        String barcode = "";
+        for (DevpSlave devp : slaveProperties.getDevp()) {
+            // 閬嶅巻鍏ュ簱鍙�
+            for (DevpSlave.Sta inSta : devp.getDriveSta()) {
+                if (inSta.getStaNo().equals(palletizingNo)){
+                    SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 2);
+                    StaProtocol staProtocolPall = devpThread.getStation().get(palletizingNo);
+                    if (staProtocolPall == null) {
+                        continue;
+                    } else {
+                        staProtocolPall = staProtocolPall.clone();
+                    }
+                    String errorSta = "";
+                    boolean signSta = false;
+
+                    if (!staProtocolPall.isAutoing()){
+                        errorSta = errorSta+"绔欑偣闈炶嚜鍔紒锛侊紒";
+                        signSta = true;
+                    }
+                    if (!staProtocolPall.isLoading()){
+                        errorSta = errorSta+"绔欑偣鏃犳墭鐩橈紒锛侊紒";
+                        signSta = true;
+                    }
+                    if (staProtocolPall.getWorkNo() != 0 ){
+                        errorSta = errorSta+"绔欑偣瀛樺湪浠诲姟鍙凤紒锛侊紒";
+                        signSta = true;
+                    }
+                    if (!staProtocolPall.isPakMk()){
+                        errorSta = errorSta+"绔欑偣瀛樺湪閿佸畾鏍囪锛侊紒锛�";
+                        signSta = true;
+                    }
+                    if (signSta){
+                        try{
+                            // 淇濆瓨鎺ュ彛鏃ュ織
+                            apiLogService.save(
+                                    "涓帶鐢宠鑾峰彇"+palletizingNo+"绔欑偣褰撳墠鏉$爜淇℃伅",
+                                    "/monitor/barcode/two",
+                                    null,
+                                    null,
+                                    JSON.toJSONString(palletizingNo),
+                                    "鏈氨缁紒锛侊紒璇风瓑寰�...  鍘熷洜锛�"+errorSta,
+                                    false
+                            );
+                        }catch (Exception e){
+                        }
+                        return R.error("鏈氨缁紒锛侊紒璇风瓑寰�... 鍘熷洜锛�"+errorSta);
+                    }
+
+                    // 鑾峰彇鏉$爜鎵弿浠俊鎭�
+                    BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode());
+                    if (barcodeThread == null) {
+                        continue;
+                    }
+                    barcode = barcodeThread.getBarcode();
+
+                    if (!Cools.isEmpty(barcode)) {
+//                    log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
+                        if ("NG".endsWith(barcode) || "NoRead".equals(barcode) || "00000000".equals(barcode) || "000000".equals(barcode)) {
+                            barcode = "";
+                        }
+                    } else {
+                        break;
+                    }
+                }
+            }
+        }
+//        Calendar calendar = Calendar.getInstance();
+//        calendar.setTime(now);
+        if (Cools.isEmpty(barcode) || barcode.equals("")){
+            try{
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "涓帶鐢宠鑾峰彇"+palletizingNo+"绔欑偣褰撳墠鏉$爜淇℃伅",
+                        "/monitor/barcode/two",
+                        null,
+                        null,
+                        JSON.toJSONString(palletizingNo),
+                        "鏈氨缁紒锛侊紒鎵樼洏鏉$爜涓虹┖锛侊紒锛佽妫�鏌ワ紒锛侊紒",
+                        false
+                );
+            }catch (Exception e){
+            }
+            return R.error("鏈氨缁紒锛侊紒鎵樼洏鏉$爜涓虹┖锛侊紒锛佽妫�鏌ワ紒锛侊紒");
+        }
+        if (waitPakinMapper.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet", barcode))!=0){
+            try{
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "涓帶鐢宠鑾峰彇"+palletizingNo+"绔欑偣褰撳墠鏉$爜淇℃伅",
+                        "/monitor/barcode/two",
+                        null,
+                        null,
+                        JSON.toJSONString(palletizingNo),
+                        "鏈氨缁紒锛侊紒鎵樼洏鏉$爜涓嶄负绌轰絾鏄凡瀛樺湪鏁版嵁锛屼笉鍙噸澶嶄娇鐢紒锛侊紒璇锋鏌ワ紒锛侊紒",
+                        false
+                );
+            }catch (Exception e){
+            }
+            return R.error("鏈氨缁紒锛侊紒鎵樼洏鏉$爜涓嶄负绌轰絾鏄凡瀛樺湪鏁版嵁锛屼笉鍙噸澶嶄娇鐢紒锛侊紒璇锋鏌ユ垨閲嶆柊鑾峰彇锛侊紒锛�");
+        }
+
+
+        RgvOneSign JarTwo = rgvOneSignMapper.selectOneSign(palletizingNo+"barcode"+barcode);
+        if (!Cools.isEmpty(JarTwo)){
+            try{
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "涓帶鐢宠鑾峰彇"+palletizingNo+"绔欑偣褰撳墠鏉$爜淇℃伅",
+                        "/monitor/barcode/two",
+                        null,
+                        null,
+                        JSON.toJSONString(palletizingNo),
+                        "鏈氨缁紒锛侊紒鏉$爜鏇存柊涓�....",
+                        false
+                );
+            }catch (Exception e){
+            }
+            return R.error("鏈氨缁紒锛侊紒鏉$爜鏇存柊涓�....");
+        }
+
+        try{
+            rgvOneSignMapper.deleteBarcode(palletizingNo+"barcode");
+            try{
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "涓帶鐢宠鑾峰彇"+palletizingNo+"绔欑偣褰撳墠鏉$爜淇℃伅",
+                        "/monitor/barcode/two",
+                        null,
+                        null,
+                        JSON.toJSONString(palletizingNo),
+                        JSON.toJSONString("娓呴櫎鎵樼洏鐮佹爣璁版垚鍔燂紒锛侊紒"),
+                        true
+                );
+            }catch (Exception e){
+            }
+        } catch (Exception e){
+            try{
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "涓帶鐢宠鑾峰彇"+palletizingNo+"绔欑偣褰撳墠鏉$爜淇℃伅",
+                        "/monitor/barcode/two",
+                        null,
+                        null,
+                        JSON.toJSONString(palletizingNo),
+                        JSON.toJSONString("娓呴櫎鎵樼洏鐮佹爣璁板紓甯革紒锛侊紒"),
+                        false
+                );
+            }catch (Exception e1){
+            }
+        }
+
+        Cools.CoolMap coolMap = Cools.add("barcode", barcode).add("Date", now);
+        try{
+            // 淇濆瓨鎺ュ彛鏃ュ織
+            apiLogService.save(
+                    "涓帶鐢宠鑾峰彇"+palletizingNo+"绔欑偣褰撳墠鏉$爜淇℃伅",
+                    "/monitor/barcode/two",
+                    null,
+                    null,
+                    JSON.toJSONString(palletizingNo),
+                    JSON.toJSONString("barcode:"+barcode),
+                    true
+            );
+        }catch (Exception e){
+        }
+        return R.ok(coolMap);
+    }
 
     /**
      * 鑾峰彇褰撳墠鏃堕棿
@@ -296,6 +488,20 @@
 //        return R.ok(ledCommands);
         return R.ok().add(commandList);
     }
+
+    /**
+     * 鑾峰彇鍏朵粬淇℃伅
+     */
+    @GetMapping("/led/useInfo")
+    public R monitorLedUseInfo(@RequestParam("ledId") Integer ledId) {
+        Integer count1 = wrkDetlService.count1();
+        Integer count11 = wrkDetlService.count11();
+        Integer count3 = wrkDetlService.count3();
+        Map<String, Object> map = new HashMap<>();
+        map.put("count1", count1+count11);
+        map.put("count2", count3);
+        return R.ok().add(map);
+    }
     /**
      * 鑾峰彇鍏朵粬淇℃伅
      */

--
Gitblit v1.9.1