From 3bf6f972604761c9ac59a2cb9ea01eeacaec2189 Mon Sep 17 00:00:00 2001
From: zyh <zyh@123>
Date: 星期六, 28 三月 2026 15:43:51 +0800
Subject: [PATCH] 更新为正式部署许可证

---
 src/main/java/com/zy/common/web/WcsController.java |   65 ++++++++++++++++++++++++++++----
 1 files changed, 57 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index bcad0a9..30e3918 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -1,14 +1,18 @@
 package com.zy.common.web;
 
+import com.alibaba.excel.util.StringUtils;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.core.common.Cools;
 import com.core.common.R;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.mes.MesReturn;
 import com.zy.asrs.entity.param.EmptyPlateOutParam;
 import com.zy.asrs.entity.result.FindLocNoAttributeVo;
 import com.zy.asrs.service.*;
+import com.zy.asrs.service.impl.RcsServiceImpl;
 import com.zy.common.CodeRes;
 import com.zy.common.model.LocTypeDto;
 import com.zy.common.model.StartupDto;
@@ -17,6 +21,7 @@
 import com.zy.common.web.param.SearchLocParam;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
@@ -54,6 +59,9 @@
     @Autowired
     private TaskService taskService;
 
+    @Value("${mes.url}")
+    public String MES_URL;
+
     // TODO锛氱О閲嶃�佹媿鐓т笂鎶ュ瓨鍌紝CTU鏂欑杩愯浆
 
     @PostMapping("/pakin/loc/v1")
@@ -65,6 +73,30 @@
         }
         if (Cools.isEmpty(param.getSourceStaNo())) {
             return R.error("婧愮珯缂栧彿涓嶈兘涓虹┖");
+        }
+        if (Cools.isEmpty(param.getBarcode()) || param.getBarcode().equals("00000000")) {
+            return R.error(".鎵樼洏鐮佷笉鑳戒负绌烘垨鑰呮墭鐩樼爜涓�0");
+        }
+        if (param.getSourceStaNo() == 301 || param.getSourceStaNo() == 304){
+            String url = "CameraPictureRecognition";
+
+//            return R.error("閰嶇洏涓嶆纭�");
+//            String URL = MES_URL + url;
+//            String URL = "172.26.160.74:8080/basicmodel/WmsFit/Api/CameraPictureRecognition";
+//            try{
+//                String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(param));
+//                if (!StringUtils.isEmpty(response) && response.contains("Success")) {
+//                    MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
+//                    if ("2".equals(mesReturn.getSuccess())) {
+//                        return R.error("閰嶇洏涓嶆纭�");
+//                    }else {
+//                        log.info("閰嶇洏姝g‘锛屽厑璁稿叆搴�");
+//                    }
+//                }
+//            } catch (Exception e) {
+//                return R.error("MES鍦板潃杩炴帴瓒呮椂");
+//            }
+
         }
         List<WaitPakin> waitPakins = null;
         if (param.getIoType() == 1) {
@@ -89,10 +121,17 @@
             return R.error("楂樹綆妫�娴嬩俊鍙蜂笉鑳戒负绌�");
         }
 
+        //鍏ュ簱鏃跺绌烘澘鍑哄簱浠诲姟杩涜瀹屾垚
+        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode()).eq("wrk_sts",110));
+        if (!Cools.isEmpty(wrkMast)) {
+            wrkMast.setWrkSts(15L);//绌烘澘鍑哄簱浠诲姟杞巻鍙叉。
+            wrkMastService.updateById(wrkMast);
+        }
+
         // 婧愮珯鐐圭姸鎬佹娴�
-//        BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getSourceStaNo(), true);
-//        sourceStaNo.setLocType2(param.getLocType1());
-        LocTypeDto locTypeDto = new LocTypeDto();
+        BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getSourceStaNo(), true);
+        sourceStaNo.setLocType1(param.getLocType1());
+        LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo,param.getBarcode());
 
         StartupDto dto = null;
         switch (param.getIoType()) {
@@ -156,7 +195,7 @@
         EmptyPlateOutParam emptyPlateOutParam = new EmptyPlateOutParam();
         emptyPlateOutParam.setOutSite(12);
         emptyPlateOutParam.setLocNos(new ArrayList<String>(){{add(locMast.getLocNo()+"");}});
-        WrkMast wrkMast = workService.emptyPlateOut(emptyPlateOutParam,50);
+        WrkMast wrkMast = workService.emptyPlateOut(emptyPlateOutParam,50,"");
         return R.ok(!Cools.isEmpty(wrkMast)? R.ok("鑷姩绌烘墭鍑哄簱鎴愬姛,宸ヤ綔鍙�:" + wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩绌烘墭鍑哄簱澶辫触"));
     }
 
@@ -250,7 +289,7 @@
         // 妫�绱㈠簱浣�
         FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo();
 
-        StartupDto dto = commonService.getLocNo( 10, devpNo, findLocNoAttributeVo, locTypeDto);
+        StartupDto dto =commonService.getLocNoNew(10,devpNo,locTypeDto);
         int workNo = dto.getWorkNo();
         // 鐢熸垚宸ヤ綔妗�
         WrkMast wrkMast = new WrkMast();
@@ -305,29 +344,39 @@
         }
         //鏌ョ湅鏄惁鏈夌浉鍏崇殑AGV鎼繍浠诲姟瀛樺湪
         List<Task> tasks = taskService.selectList(new EntityWrapper<Task>()
+                .eq("task_type", "AGV琛ョ┖鏂欐灦")
+                .andNew()
                 .in("sta_no", wrkMast.getStaNo(),wrkMast.getMemo())
                 .or()
                 .in("source_sta_no", wrkMast.getStaNo(),wrkMast.getMemo()));
         if (!tasks.isEmpty()){
             return R.error("鏈夊鍫嗗灈鏈烘帴椹崇珯鐐圭殑AGV鎼繍浠诲姟,鏆傛椂鏃犳硶鐢熸垚AGV鎼繍浠诲姟");
         }
+        String sourceStaNo = "Q-";
+        if(wrkMast.getStaNo().equals("401")){
+            sourceStaNo = sourceStaNo + "E3";
+        }else if(wrkMast.getStaNo().equals("402")){
+            sourceStaNo = sourceStaNo + "E2";
+        }else if(wrkMast.getStaNo().equals("307")){
+            sourceStaNo = sourceStaNo + "E1";
+        }
         //鐢熸垚AGV鎼繍绌烘枡鏋朵换鍔�
         // 淇濆瓨宸ヤ綔妗�
         Task task = new Task();
         Date date = new Date();
-        String TaskNo = wrkMast.getWrkNo()+"-"+date.getTime();
+        String TaskNo = wrkMast.getWrkNo()+"aa"+date.getTime();
         task.setWrkNo(wrkMast.getWrkNo())
                 .setTaskNo(TaskNo)
                 .setIoTime(date)
                 .setWrkSts(301L) // 宸ヤ綔鐘舵�侊細301.浠诲姟涓嬪彂
                 .setIoType(5) // 鍏ュ嚭搴撶姸鎬侊細 5.鍖哄煙鍒扮珯
-                .setTaskType("agv")
+                .setTaskType("AGV琛ョ┖鏂欐灦")
                 .setIoPri(10D)
                 .setFullPlt("N") // 婊℃澘锛歒
                 .setPicking("N") // 鎷f枡
                 .setExitMk("N")// 閫�鍑�
                 .setStaNo(wrkMast.getStaNo())
-                .setSourceStaNo("E1")//绌烘枡鏋剁紦瀛樺尯E1
+                .setSourceStaNo(sourceStaNo)//绌烘枡鏋剁紦瀛樺尯
                 .setEmptyMk("Y")// 绌烘澘
                 .setBarcode("")// 鎵樼洏鐮�
                 .setLinkMis("N")

--
Gitblit v1.9.1