From 2534c069e82ec81119eb9f2477075e389dadf625 Mon Sep 17 00:00:00 2001
From: lsh <1>
Date: 星期四, 07 三月 2024 14:24:18 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/entity/param/TaskOverParam.java   |    2 +
 src/main/java/com/zy/asrs/controller/OpenController.java    |   38 +++++++++++++++++++
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |   41 ++++++++++++++++++--
 src/main/java/com/zy/asrs/service/OpenService.java          |    3 +
 4 files changed, 80 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 283d0c7..021bfb9 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -127,6 +127,44 @@
         return R.ok().add(taskWrk);
     }
 
+    //鍙栨斁璐х敵璇�
+    @PostMapping("/pick/and/place/v1")
+    @AppAuth(memo = "agv鍙栨斁璐х敵璇�")
+    public R getAgvPickAndPlaceV1(@RequestHeader String appkey,
+                            @RequestBody TaskOverParam param,
+                            HttpServletRequest request){
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        if (Cools.isEmpty(param.getStaNo())){
+            return R.error("鐮佸ご[staNo]涓嶈兘涓虹┖");
+        }
+        if (Cools.isEmpty(param.getType())){
+            return R.error("绫诲瀷[type]涓嶈兘涓虹┖");
+        }
+        return openService.getAgvPickAndPlaceV1(param);
+    }
+
+    //鍙栨斁璐у畬鎴愬弽棣�
+    @PostMapping("/pick/and/place/v2")
+    @AppAuth(memo = "agv鍙栨斁璐у畬鎴愬弽棣�")
+    public R getAgvPickAndPlaceV2(@RequestHeader String appkey,
+                                  @RequestBody TaskOverParam param,
+                                  HttpServletRequest request){
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        if (Cools.isEmpty(param.getStaNo())){
+            return R.error("鐮佸ご[staNo]涓嶈兘涓虹┖");
+        }
+        if (Cools.isEmpty(param.getType())){
+            return R.error("绫诲瀷[type]涓嶈兘涓虹┖");
+        }
+        return openService.getAgvPickAndPlaceV2(param);
+    }
+
     //鏌ヨ浠诲姟鎸囦护闆嗗悎
     @GetMapping("/queryTaskCommand")
     public R queryTaskCommand(@RequestHeader String appkey,
diff --git a/src/main/java/com/zy/asrs/entity/param/TaskOverParam.java b/src/main/java/com/zy/asrs/entity/param/TaskOverParam.java
index 17bb554..0e8d8ba 100644
--- a/src/main/java/com/zy/asrs/entity/param/TaskOverParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/TaskOverParam.java
@@ -6,5 +6,7 @@
 public class TaskOverParam {
     private String wharfCode;
     private Boolean status;
+    private int staNo;
+    private int type;
 
 }
diff --git a/src/main/java/com/zy/asrs/service/OpenService.java b/src/main/java/com/zy/asrs/service/OpenService.java
index 7798985..d763764 100644
--- a/src/main/java/com/zy/asrs/service/OpenService.java
+++ b/src/main/java/com/zy/asrs/service/OpenService.java
@@ -15,4 +15,7 @@
     R AgvToWCSToWms(WMSAndAGVInterfaceParam param) throws IOException;
 
     void getAgvTaskOver(TaskOverParam param);
+
+    R getAgvPickAndPlaceV1(TaskOverParam param);
+    R getAgvPickAndPlaceV2(TaskOverParam param);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 56b2679..b688f7d 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -8,10 +8,7 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.domain.enums.TaskStatusType;
 import com.zy.asrs.domain.enums.WorkNoType;
-import com.zy.asrs.entity.LocMast;
-import com.zy.asrs.entity.StaDesc;
-import com.zy.asrs.entity.TaskWrk;
-import com.zy.asrs.entity.ToWmsDTO;
+import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.TaskOverParam;
 import com.zy.asrs.entity.param.WMSAndAGVInterfaceParam;
 import com.zy.asrs.entity.param.TaskCreateParam;
@@ -50,6 +47,8 @@
     private CommonService commonService;
     @Autowired
     private LocMastService locMastService;
+    @Autowired
+    private BasDevpService basDevpService;
 
 
 
@@ -255,6 +254,40 @@
 
     }
 
+    @Override
+    public R getAgvPickAndPlaceV1(TaskOverParam param) {
+        BasDevp basDevp = basDevpService.selectById(param.getStaNo());
+        if (Cools.isEmpty(basDevp)){
+            return R.error("绔欑偣鍙锋湁璇�"+param.getStaNo());
+        }
+        if (param.getType()==0 && basDevp.getAgvStartPick()==1){
+            return R.ok();
+        }else if (param.getType()==1 && basDevp.getAgvStartPlace()==1){
+            return R.ok();
+        }else {
+            return R.error();
+        }
+    }
+
+    @Override
+    public R getAgvPickAndPlaceV2(TaskOverParam param) {
+        BasDevp basDevp = basDevpService.selectById(param.getStaNo());
+        if (Cools.isEmpty(basDevp)){
+            return R.error("绔欑偣鍙锋湁璇�"+param.getStaNo());
+        }
+        if (param.getType()==0){
+            basDevp.setAgvTargetPick(1);
+            basDevpService.updateById(basDevp);
+            return R.ok();
+        }else if (param.getType()==1){
+            basDevp.setAgvTargetPlace(1);
+            basDevpService.updateById(basDevp);
+            return R.ok();
+        }else {
+            return R.error("璇锋眰绫诲瀷寮傚父"+param.getType());
+        }
+    }
+
     public List<Integer> getInEnableRoadway(){
         int[] roadway = null;
         List<Integer> list = new ArrayList<>();

--
Gitblit v1.9.1