From 19feb4af89f6e5e67c3dc97cbbcf6cfc40350781 Mon Sep 17 00:00:00 2001
From: skyouc <958836976@qq.com>
Date: 星期六, 07 二月 2026 15:02:55 +0800
Subject: [PATCH] no message
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 62 +++++----
src/main/java/com/zy/asrs/task/AutoLocMoveScheduler.java | 126 ++++++++++++---------
src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java | 98 +++++++++------
src/main/java/com/zy/asrs/task/WorkMastScheduler.java | 25 ++-
4 files changed, 180 insertions(+), 131 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/AutoLocMoveScheduler.java b/src/main/java/com/zy/asrs/task/AutoLocMoveScheduler.java
index d45fce2..d870508 100644
--- a/src/main/java/com/zy/asrs/task/AutoLocMoveScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoLocMoveScheduler.java
@@ -39,67 +39,85 @@
private OrderDetlService orderDetlService;
- //瀹氭椂鍑哄簱 缁忓吀鍙屼几
- @Scheduled(cron = "0/3 * * * * ? ")
- public void locToLocAutoLocMove(){
- if (slaveWmsParameterProperties.isAutoLocMoveBoolean()){
- Config config = configService.selectConfigByCode("AutoLocMove");
- if (Cools.isEmpty(config) || config.getValue().equals("false")) {
- return;
- }
- OrderPakout orderPakout = orderPakoutService.selectOrderMoveStatus();
- if (!Cools.isEmpty(orderPakout)){
-// autoMoveService.selectList()
- }else {
- orderPakout = orderPakoutService.selectOrderMoveStatusInitial();
- if (Cools.isEmpty(orderPakout)){
- return;
- }
- orderPakout.setMoveStatus(2);
- orderPakoutService.updateById(orderPakout);
- }
+// //瀹氭椂鍑哄簱 缁忓吀鍙屼几
+// @Scheduled(cron = "0/3 * * * * ? ")
+// public void locToLocAutoLocMove() {
+// if (slaveWmsParameterProperties.isAutoLocMoveBoolean()) {
+// Config config = configService.selectConfigByCode("AutoLocMove");
+// if (Cools.isEmpty(config) || config.getValue().equals("false")) {
+// return;
+// }
+// OrderPakout orderPakout = orderPakoutService.selectOrderMoveStatus();
+// if (!Cools.isEmpty(orderPakout)) {
+//// autoMoveService.selectList()
+// } else {
+// orderPakout = orderPakoutService.selectOrderMoveStatusInitial();
+// if (Cools.isEmpty(orderPakout)) {
+// return;
+// }
+// orderPakout.setMoveStatus(2);
+// orderPakoutService.updateById(orderPakout);
+// }
+// }
+// }
+
+@Scheduled(cron = "0/10 * * * * ? ")
+public void locToLoc12() {
+// if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()){
+ Config config = configService.selectConfigByCode("AutoLocMoveUnilateral");
+ if (Cools.isEmpty(config) || config.getValue().equals("false")) {
+ return;
+ }
+ int crnCount = basCrnpService.selectCount(new EntityWrapper<>());
+ for (int crnNo = 6; crnNo <= 6; crnNo++) {
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo));
+// WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo));
+ if (Cools.isEmpty(wrkMast)) {
+ autoLocMoveHandler.start(crnNo, 12);
}
}
+// }
+}
//瀹氭椂鍑哄簱
- @Scheduled(cron = "0/3 * * * * ? ")
- public void locToLoc11(){
- if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()){
- Config config = configService.selectConfigByCode("AutoLocMoveUnilateral");
- if (Cools.isEmpty(config) || config.getValue().equals("false")) {
- return;
- }
- int crnCount = basCrnpService.selectCount(new EntityWrapper<>());
- for (int crnNo = 1;crnNo < crnCount;crnNo++){
- WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo));
- WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo));
- if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)){
- autoLocMoveHandler.start(crnNo,11);
- }
+// @Scheduled(cron = "0/10 * * * * ? ")
+ public void locToLoc11() {
+// if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()){
+ Config config = configService.selectConfigByCode("AutoLocMoveUnilateral");
+ if (Cools.isEmpty(config) || config.getValue().equals("false")) {
+ return;
+ }
+ int crnCount = basCrnpService.selectCount(new EntityWrapper<>());
+ for (int crnNo = 1; crnNo <= 2; crnNo++) {
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo));
+ WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo));
+ if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)) {
+ autoLocMoveHandler.start(crnNo, 11);
}
}
+// }
}
//瀹氭椂鍏ュ簱
- @Scheduled(cron = "0/3 * * * * ? ")
- public void locToLoc111() {
- if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()){
- Config config = configService.selectConfigByCode("AutoLocMoveUnilateral");
- if (Cools.isEmpty(config) || config.getValue().equals("false")) {
- return;
- }
- int crnCount = basCrnpService.selectCount(new EntityWrapper<>());
- for (int crnNo = 1;crnNo < crnCount;crnNo++){
- BasCrnp basCrnp = basCrnpService.selectById(crnNo);
- if (basCrnp == null) {
- continue;
- }
- WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo));
- WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo));
- if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)){
- autoLocMoveHandler.start(crnNo,111);
- }
- }
- }
- }
+// @Scheduled(cron = "0/3 * * * * ? ")
+// public void locToLoc111() {
+// if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()){
+// Config config = configService.selectConfigByCode("AutoLocMoveUnilateral");
+// if (Cools.isEmpty(config) || config.getValue().equals("false")) {
+// return;
+// }
+// int crnCount = basCrnpService.selectCount(new EntityWrapper<>());
+// for (int crnNo = 1;crnNo < crnCount;crnNo++){
+// BasCrnp basCrnp = basCrnpService.selectById(crnNo);
+// if (basCrnp == null) {
+// continue;
+// }
+// WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo));
+// WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo));
+// if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)){
+// autoLocMoveHandler.start(crnNo,111);
+// }
+// }
+// }
+// }
}
diff --git a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
index 1a73349..e14d6bc 100644
--- a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -5,6 +5,8 @@
import com.zy.api.service.WcsApiService;
import com.zy.asrs.entity.Task;
import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.entity.param.CompleteParam;
+import com.zy.asrs.service.MobileService;
import com.zy.asrs.service.TaskService;
import com.zy.asrs.service.WrkMastService;
import com.zy.asrs.task.core.ReturnT;
@@ -34,6 +36,8 @@
private WorkMastHandler workMastHandler;
@Autowired
private WcsApiService wcsApiService;
+ @Autowired
+ private MobileService mobileService;
@Autowired
private TaskService taskService;
@@ -82,22 +86,23 @@
* @author Ryan
* @date 2026/1/10 14:42
*/
- @Scheduled(cron = "0/15 * * * * ? ")
+ @Scheduled(cron = "0/5 * * * * ? ")
private void autoPubTasks() {
- List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().in("wrk_sts", Arrays.asList(11L)));
+ List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().in("wrk_sts", Arrays.asList(11L, 1L)));
if (wrkMasts.isEmpty()) {
return;
}
Collections.shuffle(wrkMasts);
wrkMasts.forEach(wrkMast -> {
WorkTaskParams params = new WorkTaskParams();
-// if (wrkMast.getIoType().equals(1)) {
-// params.setType("in");
-// params.setTaskNo(wrkMast.getWrkNo() + "")
-// .setLocNo(wrkMast.getLocNo())
-// .setBarcode(wrkMast.getBarcode())
-// .setTaskPri(wrkMast.getIoPri().intValue());
-// } else {
+ if (wrkMast.getIoType().equals(11)) {
+ CompleteParam param = new CompleteParam();
+ param.setTaskNo(wrkMast.getWrkNo() + "");
+ param.setSourceLocNo(wrkMast.getSourceLocNo());
+ param.setLocNo(wrkMast.getLocNo());
+// param.set
+ mobileService.taskMove(param, 9527L);
+ } else if (wrkMast.getIoType() > 100) {
params.setType("out")
.setTaskNo(wrkMast.getWrkNo() + "")
.setLocNo(wrkMast.getSourceLocNo())
@@ -105,7 +110,7 @@
.setStaNo(wrkMast.getStaNo())
.setTaskPri(wrkMast.getIoPri().intValue());
wcsApiService.pubWrkToWcs(params);
-// }
+ }
});
}
diff --git a/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java
index 6aea860..fdcd6be 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java
@@ -40,48 +40,66 @@
@Transactional(isolation = Isolation.REPEATABLE_READ)
public ReturnT<String> start(Integer crnNo, Integer ioType) {
try {
-// //11 绌挎绉诲崟杈�
-// if (ioType==11){
-// for (int bay = 1;bay < 27;bay++){
-// for (int lev = 1 ; lev <6 ; lev++){
-// List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay,lev,crnNo);
-// if (!Cools.isEmpty(locMasts) && locMasts.size()<4){
-// for (LocMast locMast:locMasts){
+ //11 绌挎绉诲崟杈�
+ if (ioType == 11) {
+ for (int bay = 2; bay < 141; bay++) {
+ for (int lev = 1; lev < 22; lev++) {
+ List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay, lev, crnNo);
+ if (!Cools.isEmpty(locMasts) && locMasts.size() < 4) {
+ for (LocMast locMast : locMasts) {
// LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
-//// StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null);
+// StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null);
// FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
-//
-// StartupDto startupDto = commonService.getLocNo( ioType, crnNo == 1 ? 917 : 918, sourceStaNo.getDevNo(), findLocNoAttributeVo, null);
-// workService.locMove(locMast.getLocNo(), startupDto.getLocNo(),9527L);
-// }
-// return SUCCESS;
-// }
-// }
-// }
-// }else {//11 鍗曡竟绉荤┛姊�
-// List<Map<String, Object>> list = locDetlService.selectLocDetlUnilateralMoveShuttleMap(crnNo);//111 鍗曡竟绉荤┛姊�
-// for (Map<String, Object> map : list) {
-// String matnr = map.getOrDefault("matnr","").toString();//鐗╂枡鍙�
-// String batch = map.getOrDefault("batch","").toString();//鎵瑰彿
-// String grade = map.getOrDefault("brand","").toString();//绛夌骇
-// int count = Integer.parseInt(map.get("count").toString());//鍗曡竟搴撴暟閲�
-// if (count < 4) {
-// continue;
-// }
-//
-// List<LocDetl> locDetlList = locDetlService.selectLocDetlUnilateralMoveShuttle(matnr, batch, grade, crnNo);
-// for (LocDetl locDetl : locDetlList) {
-//// StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 4 : 3, ioType, crnNo == 1 ? 901 : 932, locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(), null);
-// FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
-//
-// StartupDto startupDto = commonService.getLocNo( ioType, crnNo == 1 ? 901 : 932, sourceStaNo.getDevNo(), findLocNoAttributeVo, null);
-// workService.locMove(locDetl.getLocNo(), startupDto.getLocNo(), 9527L);
-// }
-// }
-// return SUCCESS;
-// }
- }catch (Exception e){
- log.error("鑷姩绉诲簱鍑洪敊,鍫嗗灈鏈哄彿{}锛屽伐浣滅被鍨媨}",crnNo,ioType);
+ StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 109 : 126, 1, null, null);
+ workService.locMove(locMast.getLocNo(), startupDto.getLocNo(), 9527L);
+ break;
+ }
+ return SUCCESS;
+ }
+ }
+ }
+ } else if (ioType == 12) {
+ for (int bay = 2; bay < 61; bay++) {
+ for (int lev = 1; lev < 7; lev++) {
+ List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay, lev, crnNo );
+ if (!Cools.isEmpty(locMasts) && locMasts.size() < 4) {
+ for (LocMast locMast : locMasts) {
+// LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
+// StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null);
+// FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
+ StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 205 : 215, 3, null, null);
+ workService.locMove(locMast.getLocNo(), startupDto.getLocNo(), 9527L);
+ break;
+ }
+ return SUCCESS;
+ }
+ }
+ }
+
+ }else {//11 鍗曡竟绉荤┛姊�
+ List<Map<String, Object>> list = locDetlService.selectLocDetlUnilateralMoveShuttleMap(crnNo);//111 鍗曡竟绉荤┛姊�
+ for (Map<String, Object> map : list) {
+ String matnr = map.getOrDefault("matnr", "").toString();//鐗╂枡鍙�
+ String batch = map.getOrDefault("batch", "").toString();//鎵瑰彿
+ String grade = map.getOrDefault("brand", "").toString();//绛夌骇
+ int count = Integer.parseInt(map.get("count").toString());//鍗曡竟搴撴暟閲�
+ if (count < 4) {
+ continue;
+ }
+
+ List<LocDetl> locDetlList = locDetlService.selectLocDetlUnilateralMoveShuttle(matnr, batch, grade, crnNo);
+ for (LocDetl locDetl : locDetlList) {
+// StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 4 : 3, ioType, crnNo == 1 ? 901 : 932, locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(), null);
+ FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
+
+ StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 901 : 932, null, findLocNoAttributeVo, null);
+ workService.locMove(locDetl.getLocNo(), startupDto.getLocNo(), 9527L);
+ }
+ }
+ return SUCCESS;
+ }
+ } catch (Exception e) {
+ log.error("鑷姩绉诲簱鍑洪敊,鍫嗗灈鏈哄彿{}锛屽伐浣滅被鍨媨}", crnNo, ioType);
}
return SUCCESS;
}
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 1a0345d..dc2a503 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -192,8 +192,8 @@
}
}
} catch (Exception ignore) {
+
}
-
}
// 淇敼搴撲綅鐘舵�� S ====>> F
if (locMast.getLocSts().equals("S")) {
@@ -924,31 +924,39 @@
throw new CoolException("搴撲綅鏄庣粏淇濆瓨澶辫触锛侊紒");
}
- // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
- OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(),
- pakin.getMatnr(), pakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
- pakin.getStandby2(), pakin.getStandby3(),
- pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
- if (orderDetlPakin == null) {
- orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(), pakin.getMatnr(),
- pakin.getBatch(),
- pakin.getBrand(), pakin.getStandby1(), pakin.getStandby2(),
- pakin.getStandby3(),
- pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
+ OrderPakin orderPakin = orderPakinService.selectOne(new EntityWrapper<OrderPakin>().eq("order_no", pakin.getOrderNo()));
+ if (Objects.isNull(orderPakin)) {
+ throw new CoolException("鏁版嵁閿欒锛岃鍗曚俊鎭笉瀛樺湪锛侊紒");
}
- try {
- if (!Cools.isEmpty(orderDetlPakin)) {
- if (!orderDetlPakinService.increaseQtyByOrderNo(pakin.getOrderNo(),
- pakin.getMatnr(),
- orderDetlPakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
- pakin.getStandby2(), pakin.getStandby3(),
- pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3(),
- pakin.getAnfme())) {
- throw new CoolException("AGV鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
- + "],[locNo=" + wrkMast.getLocNo() + "]");
- }
+
+ if (!orderPakin.getDocType().equals(0)) {
+ // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+ OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(),
+ pakin.getMatnr(), pakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
+ pakin.getStandby2(), pakin.getStandby3(),
+ pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
+ if (orderDetlPakin == null) {
+ orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(), pakin.getMatnr(),
+ pakin.getBatch(),
+ pakin.getBrand(), pakin.getStandby1(), pakin.getStandby2(),
+ pakin.getStandby3(),
+ pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
}
- } catch (Exception ignore) {
+ try {
+ if (!Cools.isEmpty(orderDetlPakin)) {
+ if (!orderDetlPakinService.increaseQtyByOrderNo(pakin.getOrderNo(),
+ pakin.getMatnr(),
+ orderDetlPakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
+ pakin.getStandby2(), pakin.getStandby3(),
+ pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3(),
+ pakin.getAnfme())) {
+ throw new CoolException("AGV鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
+ + "],[locNo=" + wrkMast.getLocNo() + "]");
+ }
+ }
+ } catch (Exception ignore) {
+
+ }
}
});
@@ -977,9 +985,9 @@
Set<Long> list = apallets.stream().map(WaitPakin::getOrderId).collect(Collectors.toSet());
List<OrderPakin> pakins = orderPakinService.selectList(new EntityWrapper<OrderPakin>().in("id", list));
- if (Objects.isNull(pakins) || pakins.isEmpty()) {
-// throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
- }
+// if (Objects.isNull(pakins) || pakins.isEmpty()) {
+//// throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
+// }
}else if(wrkMast.getIoType().equals(53)){
// 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗�
List<TaskDetl> wrkDetls53 = taskDetlService
--
Gitblit v1.9.1