From b187814d7cfa5ace1ed9c203372524c69fe56553 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期三, 31 十二月 2025 08:11:44 +0800
Subject: [PATCH] 1.完善AGV任务任务下发 2.拣料回库数据更新维护
---
src/main/java/com/zy/asrs/task/AGVTaskReportScheduler.java | 59 +++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 41 insertions(+), 18 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/AGVTaskReportScheduler.java b/src/main/java/com/zy/asrs/task/AGVTaskReportScheduler.java
index 2c0a156..a0cf2b6 100644
--- a/src/main/java/com/zy/asrs/task/AGVTaskReportScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AGVTaskReportScheduler.java
@@ -67,7 +67,7 @@
// 淇濆瓨宸ヤ綔妗�
Task task = new Task();
Date date = new Date();
- String TaskNo = wrkMast.getWrkNo() + "-" + date.getTime();
+ String TaskNo = wrkMast.getWrkNo() + "aa" + date.getTime();
task.setWrkNo(wrkMast.getWrkNo())
.setTaskNo(TaskNo)
.setIoTime(date)
@@ -78,8 +78,8 @@
.setFullPlt("Y") // 婊℃澘锛歒
.setPicking("N") // 鎷f枡
.setExitMk("N")// 閫�鍑�
- .setStaNo(stnNo)
- .setSourceStaNo(wrkMast.getSourceStaNo())//绌烘枡鏋剁紦瀛樺尯E1
+ .setStaNo(wrkMast.getMemo())
+ .setSourceStaNo(wrkMast.getSourceStaNo())
.setEmptyMk("N")// 绌烘澘
.setBarcode(wrkMast.getBarcode())// 鎵樼洏鐮�
.setLinkMis("N")
@@ -107,7 +107,7 @@
return;
}
//鏌ヨ鎵�鏈塧gv寰呬笅鍙戜换鍔�
- List<Task> wrkSts = taskService.selectList(new EntityWrapper<Task>().eq("wrk_sts", 301));
+ List<Task> wrkSts = taskService.selectList(new EntityWrapper<Task>().eq("wrk_sts", 301).orderBy("appe_time"));
if (wrkSts != null && !wrkSts.isEmpty()) {
for (Task task : wrkSts) {
//鏌ヨ鏄惁鏈夋鍦ㄤ綔涓氱殑婧愮珯鍜岀洰鏍囩珯鏈変竴鏍风殑agv鎼繍浠诲姟
@@ -116,6 +116,7 @@
.eq("wrk_sts", 302)
.andNew()
.in("source_sta_no", task.getSourceStaNo(), task.getStaNo())
+ .or()
.in("sta_no", task.getStaNo(), task.getSourceStaNo()));
Boolean flag = true;
if (Cools.isEmpty(task1)) {
@@ -124,44 +125,51 @@
//濡傛灉鏈夌┖鏂欐灦闇�瑕佸垽鏂槸鍚︽湁鍑哄簱浠诲姟
//鏈夊嚭搴撲换鍔″垯绂佹涓嬪彂鏈鎼繍浠诲姟
if (task.getStaNo().equals("401") || task.getStaNo().equals("402") || task.getStaNo().equals("307")) {
+ flag = false;
BasDevp basDevp = basDevpService.checkSiteStatus(Integer.parseInt(task.getStaNo()));
- if (basDevp != null && !Cools.isEmpty(basDevp.getInreq1()) && basDevp.getInreq1().equals("Y")) {
+ if (basDevp != null && !Cools.isEmpty(basDevp.getInreq1())
+ && basDevp.getInreq1().equals("Y")
+ && basDevp.getLoading().equals("N")
+ && basDevp.getWrkNo()!=9991
+ && basDevp.getWrkNo()!=9999) {
List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
.in("io_type", 101, 110)
- .eq("sta_no", task1.getStaNo()));
- flag = false;
- if (Cools.isEmpty(wrkMasts)) {
+ .le("wrk_sts", 14)
+ .eq("sta_no", task.getStaNo()));
+ List<WrkMast> wrkMasts1 = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("io_type", 1).eq("sta_no", task.getStaNo()));
+ if (Cools.isEmpty(wrkMasts)&&Cools.isEmpty(wrkMasts1)) {
//鍒ゆ柇鏄惁宸茬粡鐢熸垚绌烘枡鏋舵惉杩愬洖绌烘枡鏋惰ˉ搴撳尯
//濡傛灉鏈夌殑璇濓紝涓嶅湪鐢熸垚浠诲姟
- Task task2 = taskService.selectOne(new EntityWrapper<Task>().eq("sta_no", task1.getStaNo()).eq("source_sta_no", task1.getSourceStaNo()));
+ Task task2 = taskService.selectOne(new EntityWrapper<Task>().eq("task_type","AGV绌烘枡鏋跺洖缂撳瓨鍖�").eq("source_sta_no", task.getStaNo()));
//鏈夊叆搴撲换鍔℃惉杩愶紝闇�瑕佺敓鎴愮┖鏂欐灦鎼繍鍒扮┖鏂欐灦缂撳啿鍖篈GV浠诲姟
if (Cools.isEmpty(task2)) {
+
//鐢熸垚AGV鎼繍鍑哄簱浠诲姟
// 淇濆瓨宸ヤ綔妗�
String SourceStaNo = "";
if (task.getStaNo().equals("401")) {
//澶ф枡鏋剁紦鍐插尯
- SourceStaNo = "E3";
+ SourceStaNo = "Q-E3";
}else if (task.getStaNo().equals("402")) {
- SourceStaNo = "E2";
+ SourceStaNo = "Q-E2";
}else if (task.getStaNo().equals("307")) {
- SourceStaNo = "E1";
+ SourceStaNo = "Q-E1";
}
Task task3 = new Task();
Date date = new Date();
- String TaskNo = task.getTaskNo() + "-" + date.getTime();
+ String TaskNo = task.getTaskNo() + "bb" + date.getTime();
task3.setWrkNo(999999)
.setTaskNo(TaskNo)
.setIoTime(date)
.setWrkSts(301L) // 宸ヤ綔鐘舵�侊細301.浠诲姟涓嬪彂
.setIoType(4) // 鍏ュ嚭搴撶姸鎬侊細 3.绔欏埌绔� 4.绔欏埌鍖哄煙
- .setTaskType("agv")
+ .setTaskType("AGV绌烘枡鏋跺洖缂撳瓨鍖�")
.setIoPri(10D)
.setFullPlt("Y") // 婊℃澘锛歒
.setPicking("N") // 鎷f枡
.setExitMk("N")// 閫�鍑�
- .setStaNo(task.getStaNo())
- .setSourceStaNo(SourceStaNo)//绌烘枡鏋剁紦瀛樺尯E1
+ .setStaNo(SourceStaNo)
+ .setSourceStaNo(task.getStaNo())//绌烘枡鏋剁紦瀛樺尯E1
.setEmptyMk("N")// 绌烘澘
.setBarcode("")// 鎵樼洏鐮�
.setLinkMis("N")
@@ -169,24 +177,39 @@
.setAppeTime(date)
.setModiUser(9945L)
.setModiTime(date);
- if (!taskService.insert(task)) {
+ if (!taskService.insert(task3)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
+ break;
}
}
+ }else if(basDevp != null && !Cools.isEmpty(basDevp.getInreq1())
+ && basDevp.getInreq1().equals("N")
+ && basDevp.getLoading().equals("N")
+ ) {
+ flag = true;
}
}
- if (flag) {
+ if (flag || task.getTaskType().equals("AGV绌烘枡鏋跺洖缂撳瓨鍖�")) {
//AGV浠诲姟涓嬪彂
ReturnT<String> start = AGVTaskReportHandler.start(task);
if (!start.isSuccess()) {
task.setUpdMk("X");
task.setErrorMemo(start.getMsg());
+ task.setCtnType(task.getCtnType()+1);//涓嬪彂浠诲姟璁℃暟
task.setModiTime(new Date());
if (!taskService.updateById(task)) {
log.error("宸ヤ綔妗workNo={}]鏍囪寰呭鐞嗗け璐�", task.getWrkNo());
}
+ break;
+ }else {
+ task.setCtnType(task.getCtnType()+1);
+ task.setModiTime(new Date());
+ task.setWrkSts(302L);//浠诲姟鎵ц涓�
+ if (!taskService.updateById(task)) {
+ log.error("宸ヤ綔妗workNo={}]鏍囪寰呭鐞嗗け璐�", task.getWrkNo());
+ }
}
}
--
Gitblit v1.9.1