From fa3303ec0e60325f7e0cafeac8fe9a2a7de0652c Mon Sep 17 00:00:00 2001
From: Administrator <1051256694@qq.com>
Date: 星期六, 28 三月 2026 19:57:52 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/WorkMastScheduler.java | 167 ++++++++++++++++++++++++++++---------------------------
1 files changed, 85 insertions(+), 82 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
index 243be65..94eb0d1 100644
--- a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -80,101 +80,104 @@
*/
@Scheduled(cron = "0/3 * * * * ? ")
private synchronized void autoPubTasks() {
- List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().in("wrk_sts", Arrays.asList(1L, 11L)).orderBy("io_pri",false).orderBy("appe_time", true));
- if (wrkMasts.isEmpty()) {
- return;
- }
- Collections.shuffle(wrkMasts);
- for (WrkMast wrkMast : wrkMasts) {
- try {
- //鏌ョ湅涓嬪彂浠诲姟鏄惁涓哄喕缁撳簱浣嶏紝鏄喕缁撳簱浣嶅垯璺宠繃涓嬪彂浠诲姟
- LocAroundBind locAroundBind = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>()
- .eq("b_loc_no", wrkMast.getLocNo())
- .eq("freeze", 1));
- if (Cools.isEmpty(locAroundBind)) {
- locAroundBind = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>()
- .eq("b_loc_no", wrkMast.getSourceLocNo())
+ for (int i = 1 ;i<=4;i++){
+ List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no",i).in("wrk_sts", 1L, 11L).orderBy("io_pri",false).orderBy("appe_time", true));
+ if (wrkMasts.isEmpty()) {
+ continue;
+ }
+// Collections.shuffle(wrkMasts);
+ for (WrkMast wrkMast : wrkMasts) {
+ try {
+ //鏌ョ湅涓嬪彂浠诲姟鏄惁涓哄喕缁撳簱浣嶏紝鏄喕缁撳簱浣嶅垯璺宠繃涓嬪彂浠诲姟
+ LocAroundBind locAroundBind = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>()
+ .eq("b_loc_no", wrkMast.getLocNo())
.eq("freeze", 1));
- if (!Cools.isEmpty(locAroundBind)) {
- markPublishError(wrkMast.getWrkNo(), String.valueOf("婧愬簱浣嶈鍐荤粨"));
+ if (Cools.isEmpty(locAroundBind)) {
+ locAroundBind = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>()
+ .eq("b_loc_no", wrkMast.getSourceLocNo())
+ .eq("freeze", 1));
+ if (!Cools.isEmpty(locAroundBind)) {
+ markPublishError(wrkMast.getWrkNo(), String.valueOf("婧愬簱浣嶈鍐荤粨"));
+ continue;
+ }
+ } else {
+ markPublishError(wrkMast.getWrkNo(), String.valueOf("鐩爣搴撲綅琚喕缁�"));
continue;
}
- } else {
- markPublishError(wrkMast.getWrkNo(), String.valueOf("鐩爣搴撲綅琚喕缁�"));
- continue;
- }
- Integer crnNo = wrkMast.getCrnNo();
- //濡傛灉浠诲姟鏄Щ搴撲换鍔℃椂锛氳鍫嗗灈鏈哄凡缁忎笅鍙戜换鍔$粰wcs鍚庝笉鍐嶄笅鍙戞柊鐨勬惉杩愪换鍔�
- if(wrkMast.getIoType()==101&&!Cools.isEmpty(wrkMast.getLocNo())){
- LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("crn_no", crnNo).eq("loc_no", wrkMast.getLocNo()));
- if (!Cools.isEmpty(locMast)) {
- List<WrkMast> wrkMasts1 = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", crnNo).in("wrk_sts", Arrays.asList(12L,13L,14L)));
- if (!wrkMasts1.isEmpty()) {
+ Integer crnNo = wrkMast.getCrnNo();
+ //濡傛灉浠诲姟鏄Щ搴撲换鍔℃椂锛氳鍫嗗灈鏈哄凡缁忎笅鍙戜换鍔$粰wcs鍚庝笉鍐嶄笅鍙戞柊鐨勬惉杩愪换鍔�
+ if(wrkMast.getIoType()==101&&!Cools.isEmpty(wrkMast.getLocNo())){
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("crn_no", crnNo).eq("loc_no", wrkMast.getLocNo()));
+ if (!Cools.isEmpty(locMast)) {
+ List<WrkMast> wrkMasts1 = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", crnNo).in("wrk_sts", 12L,13L,14L));
+ if (!wrkMasts1.isEmpty()) {
+ continue;
+ }
+ }
+
+ }
+
+ //婧愬簱浣嶄负鍐荤粨搴撲綅鏃剁姝笅鍙戞惉杩愪换鍔$粰鍫嗗灈鏈�
+ if (!Cools.isEmpty(wrkMast.getSourceLocNo())) {
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_no", wrkMast.getSourceLocNo())
+ .eq("frozen", 0));
+ if (Cools.isEmpty(locMast)) {
continue;
}
}
- }
-
- //婧愬簱浣嶄负鍐荤粨搴撲綅鏃剁姝笅鍙戞惉杩愪换鍔$粰鍫嗗灈鏈�
- if (!Cools.isEmpty(wrkMast.getSourceLocNo())) {
- LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
- .eq("loc_no", wrkMast.getSourceLocNo())
- .eq("frozen", 0));
- if (Cools.isEmpty(locMast)) {
- continue;
+ //鐩爣搴撲綅涓哄喕缁撳簱浣嶆椂绂佹涓嬪彂鎼繍浠诲姟缁欏爢鍨涙満
+ if (!Cools.isEmpty(wrkMast.getLocNo())) {
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_no", wrkMast.getLocNo())
+ .eq("frozen", 0));
+ if (Cools.isEmpty(locMast)) {
+ continue;
+ }
}
- }
- //鐩爣搴撲綅涓哄喕缁撳簱浣嶆椂绂佹涓嬪彂鎼繍浠诲姟缁欏爢鍨涙満
- if (!Cools.isEmpty(wrkMast.getLocNo())) {
- LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
- .eq("loc_no", wrkMast.getLocNo())
- .eq("frozen", 0));
- if (Cools.isEmpty(locMast)) {
- continue;
+ String wcsSourceLocNo = Cools.isEmpty(wrkMast.getSourceLocNo()) ? "" : Utils.WMSLocToWCSLoc(wrkMast.getSourceLocNo());
+ String wcsLocNo = Cools.isEmpty(wrkMast.getLocNo()) ? "" : Utils.WMSLocToWCSLoc(wrkMast.getLocNo());
+ Integer taskPri = wrkMast.getIoPri() == null ? null : wrkMast.getIoPri().intValue();
+ WorkTaskParams params = new WorkTaskParams();
+ //鍑哄簱鍜岀Щ搴�
+ if ((wrkMast.getIoType() == 101 || wrkMast.getIoType() == 110) && !Cools.isEmpty(wrkMast.getStaNo()) && !wrkMast.getStaNo().equals("0")) {
+ params.setType("out")
+ .setTaskNo(wrkMast.getWrkNo() + "")
+ .setSourceLocNo(wcsSourceLocNo)
+ .setLocNo(wcsLocNo)
+ .setStaNo(wrkMast.getStaNo())
+ .setTaskPri(taskPri)
+ .setBarcode(wrkMast.getBarcode());
+ } else if (wrkMast.getIoType() == 2 && !Cools.isEmpty(wrkMast.getSourceStaNo())) {
+ params.setType("in")
+ .setTaskNo(wrkMast.getWrkNo() + "")
+ .setSourceStaNo(wrkMast.getSourceStaNo())
+ .setStaNo(wrkMast.getStaNo())
+ .setLocNo(wcsLocNo)
+ .setTaskPri(taskPri)
+ .setBarcode(wrkMast.getBarcode());
+ } else {
+ params.setType("move")
+ .setTaskNo(wrkMast.getWrkNo() + "")
+ .setSourceLocNo(wcsSourceLocNo)
+ .setLocNo(wcsLocNo)
+ .setBarcode(wrkMast.getBarcode());
}
+ R r = wcsApiService.pubWrkToWcs(params);
+ if (isSuccess(r)) {
+ clearPublishError(wrkMast.getWrkNo());
+ break;
+ }
+ markPublishError(wrkMast.getWrkNo(), String.valueOf(r.get("msg")));
+ } catch (Exception e) {
+ log.error("宸ヤ綔妗wrkNo={}]涓嬪彂浠诲姟寮傚父", wrkMast.getWrkNo(), e);
+ markPublishError(wrkMast.getWrkNo(), e.getMessage());
}
-
- String wcsSourceLocNo = Cools.isEmpty(wrkMast.getSourceLocNo()) ? "" : Utils.WMSLocToWCSLoc(wrkMast.getSourceLocNo());
- String wcsLocNo = Cools.isEmpty(wrkMast.getLocNo()) ? "" : Utils.WMSLocToWCSLoc(wrkMast.getLocNo());
- Integer taskPri = wrkMast.getIoPri() == null ? null : wrkMast.getIoPri().intValue();
- WorkTaskParams params = new WorkTaskParams();
- //鍑哄簱鍜岀Щ搴�
- if ((wrkMast.getIoType() == 101 || wrkMast.getIoType() == 110) && !Cools.isEmpty(wrkMast.getStaNo()) && !wrkMast.getStaNo().equals("0")) {
- params.setType("out")
- .setTaskNo(wrkMast.getWrkNo() + "")
- .setSourceLocNo(wcsSourceLocNo)
- .setLocNo(wcsLocNo)
- .setStaNo(wrkMast.getStaNo())
- .setTaskPri(taskPri)
- .setBarcode(wrkMast.getBarcode());
- } else if (wrkMast.getIoType() == 2 && !Cools.isEmpty(wrkMast.getSourceStaNo())) {
- params.setType("in")
- .setTaskNo(wrkMast.getWrkNo() + "")
- .setSourceStaNo(wrkMast.getSourceStaNo())
- .setStaNo(wrkMast.getStaNo())
- .setLocNo(wcsLocNo)
- .setTaskPri(taskPri)
- .setBarcode(wrkMast.getBarcode());
- } else {
- params.setType("move")
- .setTaskNo(wrkMast.getWrkNo() + "")
- .setSourceLocNo(wcsSourceLocNo)
- .setLocNo(wcsLocNo)
- .setBarcode(wrkMast.getBarcode());
- }
- R r = wcsApiService.pubWrkToWcs(params);
- if (isSuccess(r)) {
- clearPublishError(wrkMast.getWrkNo());
- break;
- }
- markPublishError(wrkMast.getWrkNo(), String.valueOf(r.get("msg")));
- } catch (Exception e) {
- log.error("宸ヤ綔妗wrkNo={}]涓嬪彂浠诲姟寮傚父", wrkMast.getWrkNo(), e);
- markPublishError(wrkMast.getWrkNo(), e.getMessage());
}
}
+
}
private boolean isSuccess(R r) {
--
Gitblit v1.9.1