From a054ae4d0cb2c8749fd8d440556ad762e8ea02ec Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期四, 09 五月 2024 11:06:09 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/AgvMobileController.java | 104 +++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 90 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/AgvMobileController.java b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
index 7482bec..f507486 100644
--- a/src/main/java/com/zy/asrs/controller/AgvMobileController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
@@ -7,9 +7,11 @@
import com.zy.asrs.entity.AgvBasDevp;
import com.zy.asrs.entity.AgvLocDetl;
import com.zy.asrs.entity.AgvLocMast;
+import com.zy.asrs.entity.LocMast;
import com.zy.asrs.entity.param.AgvMobileStartPakin;
import com.zy.asrs.entity.param.AgvMobileStartParam;
import com.zy.asrs.entity.param.CombParam;
+import com.zy.asrs.entity.param.PickParam;
import com.zy.asrs.service.*;
import com.zy.common.web.BaseController;
import lombok.Synchronized;
@@ -56,6 +58,14 @@
agvMobileService.comb(combParam, getUserId());
return R.ok();
+ }
+
+ // 鍐嶆鎷f枡
+ @RequestMapping("/pick/again/auth")
+// @ManagerAuth(memo = "缁勬墭")
+ public R pickAgain(@RequestBody PickParam pickParams){
+ agvMobileService.pickAgain(pickParams, 1l);
+ return R.ok("缁勬墭鎴愬姛");
}
/*
@@ -182,7 +192,16 @@
wrapper = Cools.isEmpty(threeCode) ? wrapper.isNull("three_code") : wrapper.eq("three_code",threeCode);
+ if (threeCode.substring(0,2).equals(30)) {
+ wrapper.isNull("specs").or().eq("specs","");
+ }
List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(wrapper);
+
+ for (AgvLocDetl agvLocDetl : agvLocDetls) {
+ AgvLocMast locNo = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocDetl.getLocNo()));
+ agvLocDetl.setLocSts(locNo.getLocSts());
+ agvLocDetl.setLocSts$(locNo.getLocSts$());
+ }
return R.ok(agvLocDetls);
}
@@ -228,57 +247,71 @@
List<AgvLocDetl> listByLocNo = null;
List<AgvLocDetl> listByContainerCode = null;
-
if(!Cools.isEmpty(locNo)){
+ // 婧愬簱浣�
listByLocNo = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
}
if(!Cools.isEmpty(locNo)){
+ // 鐩爣搴撲綅
listByContainerCode = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("supp_code", containerCode));
}
AgvLocMast agvLocMastByContainerCode = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("barcode", containerCode));
AgvLocMast agvLocMastByLocNo = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", locNo));
- if(Cools.eq("F",agvLocMastByContainerCode.getLocSts())
- || Cools.eq("D",agvLocMastByContainerCode.getLocSts())
- || Cools.eq("F",agvLocMastByLocNo.getLocSts())
- || Cools.eq("D",agvLocMastByLocNo.getLocSts())){
+ String barcode1 = agvLocMastByLocNo.getBarcode();
+
+
+
+ if((!Cools.eq("F",agvLocMastByContainerCode.getLocSts())
+ && !Cools.eq("D",agvLocMastByContainerCode.getLocSts()))
+ || (!Cools.eq("F",agvLocMastByLocNo.getLocSts())
+ && !Cools.eq("D",agvLocMastByLocNo.getLocSts()))){
return R.error("搴撲綅鐘舵�佷笉涓篎鎴栬�匘锛屾棤娉曠淮鎶�");
}
-
+ // -------------1-----------------------------
//搴撲綅淇℃伅涓虹┖ 璐ф灦淇℃伅涓嶄负绌�
if(Cools.isEmpty(listByLocNo) && !Cools.isEmpty(listByContainerCode)){
//鏇存柊璐ф灦淇℃伅鐨勫簱浣嶄负褰撳墠搴撲綅
listByContainerCode.forEach(agvLocDetl -> {
+ String sourceLoc = agvLocDetl.getLocNo();
agvLocDetl.setLocNo(locNo);
- agvLocDetlService.updateLocNo(locNo,agvLocDetl);
+ agvLocDetlService.updateLocNo(locNo,sourceLoc,agvLocDetl);
});
agvLocMastByLocNo.setLocSts("F");
+ agvLocMastByLocNo.setBarcode(containerCode);
agvLocMastService.updateById(agvLocMastByLocNo);
- if(!Cools.isEmpty(agvLocMastByContainerCode) && Cools.eq("D",agvLocMastByContainerCode.getLocSts())){
+ if(!Cools.isEmpty(agvLocMastByContainerCode) && Cools.eq("F",agvLocMastByContainerCode.getLocSts())){
agvLocMastByContainerCode.setLocSts("D");
+ agvLocMastByContainerCode.setBarcode(barcode1);
agvLocMastService.updateById(agvLocMastByContainerCode);
}
return R.ok("缁存姢鎴愬姛");
}
+
+ // -------------2-----------------------------
//搴撲綅淇℃伅涓嶄负绌� 璐ф灦淇℃伅涓虹┖
if(!Cools.isEmpty(listByLocNo) && Cools.isEmpty(listByContainerCode)){
+ String newLocNo = agvLocMastByContainerCode.getLocNo();
//鏇存柊璐ф灦淇℃伅鐨勫簱浣嶄负褰撳墠搴撲綅
listByLocNo.forEach(agvLocDetl -> {
+ String sourceLoc = agvLocDetl.getLocNo();
agvLocDetl.setLocNo(agvLocMastByContainerCode.getLocNo());
- agvLocDetlService.updateLocNo(locNo,agvLocDetl);
+ agvLocDetlService.updateLocNo(newLocNo,sourceLoc,agvLocDetl);
});
agvLocMastByContainerCode.setLocSts("F");
+ agvLocMastByContainerCode.setBarcode(agvLocMastByLocNo.getBarcode());
agvLocMastService.updateById(agvLocMastByContainerCode);
agvLocMastByLocNo.setLocSts("D");
+ agvLocMastByLocNo.setBarcode(containerCode);
agvLocMastService.updateById(agvLocMastByLocNo);
return R.ok("缁存姢鎴愬姛");
@@ -288,21 +321,64 @@
return R.ok("璇ュ簱浣嶄笌瀹瑰櫒搴撳瓨涓�鑷达紝鏃犻渶缁存姢");
}
+
+
+ // --------------3----------------------------
+ String locNo1 = listByContainerCode.get(0).getLocNo();
listByContainerCode.forEach(agvLocDetl -> {
+ String sourceLoc = agvLocDetl.getLocNo();
agvLocDetl.setLocNo(agvLocMastByLocNo.getLocNo());
- agvLocDetlService.updateLocNo(locNo,agvLocDetl);
+ agvLocDetlService.updateLocNo(locNo,sourceLoc,agvLocDetl);
});
- listByLocNo.forEach(agvLocDetl -> {
- agvLocDetl.setLocNo(agvLocMastByContainerCode.getLocNo());
- agvLocDetlService.updateLocNo(locNo,agvLocDetl);
- });
+ if (!Cools.isEmpty(listByLocNo)) {
+ String suppCode = listByLocNo.get(0).getSuppCode();
+ List<AgvLocDetl> supp_codes = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("supp_code", suppCode));
+ supp_codes.forEach(agvLocDetl -> {
+ agvLocDetl.setLocNo(locNo1);
+ agvLocDetlService.updateLocNo(locNo1,locNo,agvLocDetl);
+ });
+ }
+
+// listByLocNo.forEach(agvLocDetl -> {
+// String sourceLoc = agvLocDetl.getLocNo();
+// agvLocDetl.setLocNo(agvLocMastByContainerCode.getLocNo());
+// agvLocDetlService.updateLocNo(sourceLoc,locNo,agvLocDetl);
+// });
+ agvLocMastByContainerCode.setBarcode(agvLocMastByLocNo.getBarcode());
+ agvLocMastService.updateById(agvLocMastByContainerCode);
+
+ agvLocMastByLocNo.setBarcode(containerCode);
+ agvLocMastService.updateById(agvLocMastByLocNo);
return R.ok("缁存姢鎴愬姛");
}
+ @PostMapping("/agv/v1/locMove")
+ @Transactional
+ public R agvLocMove(@RequestBody HashMap<String,Object> params){
+ String fl = String.valueOf(params.get("floor"));
+ short floor =(short)Integer.parseInt(fl.substring(0, 1));
+ List<HashMap<String,String>> dbList = (List<HashMap<String, String>>) params.get("dbList");
+ params.get("dbList");
+ Object moveType = params.get("moveType");
+ if (moveType == "unAuto") {
+ return R.error("鎵嬪姩鍔熻兘鏆傛椂鏃犳硶浣跨敤");
+ }
+ for (HashMap<String, String> map : dbList) {
+ String locNo = map.get("locNo");
+ Wrapper<AgvLocMast> wrapper = new EntityWrapper<AgvLocMast>().eq("loc_no", locNo);
+ AgvLocMast agvLocMast = agvLocMastService.selectOne(wrapper);
+ agvLocMast.setLocType("1");
+ agvLocMast.setLocType3(floor);
+ agvLocMastService.update(agvLocMast,wrapper);
+ //System.out.println(locNo);
+ }
+ return R.ok();
+ }
+
public static void main(String[] args) {
List<AgvLocDetl> agvLocDetls1 = new ArrayList<>();
List<AgvLocDetl> agvLocDetls2 = new ArrayList<>();
--
Gitblit v1.9.1