From 62a19bf40e747ab986645728d65a63b927eddb6e Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期三, 09 四月 2025 09:17:54 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/asrs/controller/OpenController.java | 121 +++++++++++++++++++++++++++++++---------
1 files changed, 93 insertions(+), 28 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..7af2501 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -13,6 +13,7 @@
import com.zy.asrs.entity.param.WMSAndAGVInterfaceParam;
import com.zy.asrs.entity.param.TaskCreateParam;
import com.zy.asrs.service.*;
+import com.zy.asrs.utils.Utils;
import com.zy.common.web.BaseController;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -78,38 +79,64 @@
//鍒涘缓浠诲姟
@PostMapping("/taskCreate")
+ @Transactional
public R taskCreate(@RequestHeader String appkey,
@RequestBody List<TaskCreateParam> param1,
HttpServletRequest request) {
auth(appkey, param1, request);
- for (TaskCreateParam param : param1
- ) {
- if (Cools.isEmpty(param)) {
- return R.parse(BaseRes.PARAM);
- }
- if (Cools.isEmpty(param.getTaskNo())) {
- return R.error("浠诲姟鍙穂taskNo]涓嶈兘涓虹┖");
- }
- if (Cools.isEmpty(param.getIoType())) {
- return R.error("浠诲姟绫诲瀷[ioType]涓嶈兘涓虹┖");
- }
- if (Cools.isEmpty(param.getBarcode())) {
- return R.error("鏉$爜[barcode]涓嶈兘涓虹┖");
- }
- String locNo=null;
- if(param.getIoType()==1){
- locNo=param.getTargetPoint();
- }else{
- locNo=param.getStartPoint();
- }
- LocMast locMast=locMastService.selectOne(new EntityWrapper<LocMast>()
- .eq("loc_sts","F")
- .eq("loc_no",locNo)
- .eq("barcode",param.getBarcode()));
- if(Cools.isEmpty(locMast)){
- return R.error("璇ュ簱浣嶄笉婊′綇鍑哄簱鏉′欢"+param.getTargetPoint());
- }
- openService.taskCreate(param);
+ try{
+ List<TaskCreateParam> paramList = new ArrayList<>();
+ List<String> locNoList = new ArrayList<>();
+ for (TaskCreateParam param : param1) {
+ if (Cools.isEmpty(param)) {
+ return R.parse(BaseRes.PARAM);
+ }
+ if (Cools.isEmpty(param.getTaskNo())) {
+ return R.error("浠诲姟鍙穂taskNo]涓嶈兘涓虹┖");
+ }
+ if (Cools.isEmpty(param.getIoType())) {
+ return R.error("浠诲姟绫诲瀷[ioType]涓嶈兘涓虹┖");
+ }
+ if (Cools.isEmpty(param.getBarcode())) {
+ return R.error("鏉$爜[barcode]涓嶈兘涓虹┖");
+ }
+ String locNo=null;
+ if(param.getIoType()==1){
+ locNo=param.getTargetPoint();
+ }else{
+ locNo=param.getStartPoint();
+ }
+ try{
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_no", locNo).ne("loc_sts","X"));
+ if (Cools.isEmpty(locMast)){
+ log.error("搴撲綅鍙蜂笉瀛樺湪"+locNo);
+ return R.error("搴撲綅鍙蜂笉瀛樺湪"+locNo).add("搴撲綅鍙蜂笉瀛樺湪"+locNo);
+ }
+ }catch (Exception e){
+ log.error("搴撲綅鍙锋娴嬬▼搴忓紓甯�==銆嬪紓甯镐俊鎭�"+e);
+ return R.error("搴撲綅鍙锋娴嬬▼搴忓紓甯�").add("搴撲綅鍙锋娴嬬▼搴忓紓甯�==銆嬪紓甯镐俊鎭�"+e);
+ }
+ LocMast locMast=locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_sts","F")
+ .eq("loc_no",locNo)
+ .eq("barcode",param.getBarcode()));
+ if(Cools.isEmpty(locMast)){
+ return R.error("璇ュ簱浣嶄笉婊¤冻鍑哄簱鏉′欢"+param.getTargetPoint());
+ }
+ if (!locNoList.contains(locMast.getLocNo())){
+ locNoList.add(locMast.getLocNo());
+ paramList.add(param);
+ }else {
+ return R.error("璇ュ簱浣嶄笉鑳藉悓鏃朵笅鍙戜袱绗斾换鍔�"+locMast.getLocNo());
+ }
+ }
+ for (TaskCreateParam param : paramList){
+ openService.taskCreate(param);
+ }
+ }catch (Exception e){
+ log.error("浠诲姟涓嬪彂寮傚父"+e);
+ return R.error();
}
return R.ok();
}
@@ -127,6 +154,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,
--
Gitblit v1.9.1