From 68e7f00ceeb7fd8ebbe832bad56c753fbac45074 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期二, 23 九月 2025 17:00:27 +0800
Subject: [PATCH] AGV任务档修改
---
src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java | 68 +++++++++++++++++++--------------
src/main/java/com/zy/asrs/service/TaskDetlLogService.java | 1
src/main/java/com/zy/asrs/service/impl/TaskDetlLogServiceImpl.java | 35 +++++++++++++++++
src/main/webapp/static/js/task/task.js | 2
4 files changed, 76 insertions(+), 30 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/TaskDetlLogService.java b/src/main/java/com/zy/asrs/service/TaskDetlLogService.java
index cc7b3cd..5bda2b4 100644
--- a/src/main/java/com/zy/asrs/service/TaskDetlLogService.java
+++ b/src/main/java/com/zy/asrs/service/TaskDetlLogService.java
@@ -5,4 +5,5 @@
public interface TaskDetlLogService extends IService<TaskDetlLog> {
+ boolean save(Integer wrkNo);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/TaskDetlLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TaskDetlLogServiceImpl.java
index 3def8a6..5c2334e 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskDetlLogServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskDetlLogServiceImpl.java
@@ -1,12 +1,47 @@
package com.zy.asrs.service.impl;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.Task;
+import com.zy.asrs.entity.TaskDetl;
+import com.zy.asrs.entity.TaskLog;
import com.zy.asrs.mapper.TaskDetlLogMapper;
import com.zy.asrs.entity.TaskDetlLog;
import com.zy.asrs.service.TaskDetlLogService;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.asrs.service.TaskDetlService;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
@Service("taskDetlLogService")
public class TaskDetlLogServiceImpl extends ServiceImpl<TaskDetlLogMapper, TaskDetlLog> implements TaskDetlLogService {
+ @Autowired
+ private TaskDetlService taskDetlService;
+
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public boolean save(Integer wrkNo) {
+ List<TaskDetl> detls = taskDetlService.selectList(new EntityWrapper<TaskDetl>().eq("wrk_no", wrkNo));
+ if (Objects.isNull(detls) || detls.isEmpty()) {
+ throw new CoolException("鏁版嵁閿欒锛氫换鍔′笉瀛樺湪锛侊紒");
+ }
+ detls.forEach(detl -> {
+ TaskDetlLog detlLog = new TaskDetlLog();
+ BeanUtils.copyProperties(detl, detlLog);
+ detlLog.setId(null);
+ detlLog.setLogId(detl.getId());
+ if (!this.insert(detlLog)) {
+ throw new CoolException("宸ヤ綔妗f槑缁嗗巻鍙蹭繚瀛樺け璐ワ紒锛�");
+ }
+ });
+ return false;
+ }
}
diff --git a/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
index 154b87d..99c2b31 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
@@ -7,8 +7,7 @@
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.mapper.TaskMapper;
-import com.zy.asrs.service.TaskLogService;
-import com.zy.asrs.service.TaskService;
+import com.zy.asrs.service.*;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.zy.asrs.utils.OrderInAndOutUtil;
import org.springframework.beans.factory.annotation.Autowired;
@@ -24,6 +23,17 @@
@Autowired
private TaskLogService taskLogService;
+ @Autowired
+ private LocCacheService locCacheService;
+ @Autowired
+ private WaitPakinService waitPakinService;
+ @Autowired
+ private TaskDetlService taskDetlService;
+ @Autowired
+ private TaskService taskService;
+
+ @Autowired
+ private TaskDetlLogService taskDetlLogService;
@Override
@Transactional
@@ -78,35 +88,35 @@
throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
}
// 鑾峰彇鐩爣绔�
- Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
- .eq("type_no", wrkMast.getIoType() - 50)
- .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
- .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
- StaDesc staDesc = staDescService.selectOne(wrapper);
- if (Cools.isEmpty(staDesc)) {
- throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
- }
+// Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+// .eq("type_no", wrkMast.getIoType() - 50)
+// .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
+// .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
+// StaDesc staDesc = staDescService.selectOne(wrapper);
+// if (Cools.isEmpty(staDesc)) {
+// throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
+// }
Date now = new Date();
// 鍫嗗灈鏈虹珯鐐�(鐩爣绔�)
- Integer staNo = staDesc.getCrnStn();
+// Integer staNo = staDesc.getCrnStn();
// 鏇存柊宸ヤ綔妗f暟鎹姸鎬�
wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
- wrkMast.setStaNo(staNo + ""); // 鐩爣绔�
+// wrkMast.setStaNo(staNo + ""); // 鐩爣绔�
wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
wrkMast.setModiTime(now);
wrkMast.setModiUser(userId);
- if (!wrkMastService.updateById(wrkMast)) {
+ if (!this.updateById(wrkMast)) {
throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�");
}
// 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�
- LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+ LocCache locMast = locCacheService.selectOne(new EntityWrapper<LocCache>().eq("loc_no", wrkMast.getLocNo()));
locMast.setLocSts("Q");
locMast.setModiTime(now);
locMast.setModiUser(userId);
- if (!locMastService.updateById(locMast)) {
+ if (!locCacheService.updateById(locMast)) {
throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�");
}
}
@@ -117,7 +127,7 @@
@Transactional
public void cancelWrkMast(String workNo, Long userId) {
Date now = new Date();
- WrkMast wrkMast = wrkMastService.selectById(workNo);
+ Task wrkMast = this.selectOne(new EntityWrapper<Task>().eq("wrk_no", workNo));
if (Cools.isEmpty(wrkMast)) {
throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
}
@@ -131,14 +141,14 @@
// 搴撲綅杞Щ
if (wrkMast.getIoType() == 11) {
// 搴撲綅杞Щ锛氭簮搴撲綅
- LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());
+ LocCache locMast = locCacheService.selectOne(new EntityWrapper<LocCache>().eq("loc_no", wrkMast.getSourceLocNo()));
if (Cools.isEmpty(locMast)) {
throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛屾簮搴撲綅涓嶅瓨鍦�:" + wrkMast.getSourceLocNo());
}
locMast.setLocSts(wrkMast.getFullPlt().equalsIgnoreCase("N") ? "D" : "F");
locMast.setModiTime(now);
locMast.setModiUser(userId);
- locMastService.updateById(locMast);
+ locCacheService.updateById(locMast);
}
// 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛�
} else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) {
@@ -153,14 +163,14 @@
} else if (wrkMast.getIoType() == 11) {
locSts = wrkMast.getFullPlt().equalsIgnoreCase("N") ? "D" : "F";
// 搴撲綅杞Щ锛氱洰鏍囧簱浣�
- LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+ LocCache locMast = locCacheService.selectOne(new EntityWrapper<LocCache>().eq("loc_no", wrkMast.getLocNo()));
if (Cools.isEmpty(locMast)) {
throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛岀洰鏍囧簱浣嶄笉瀛樺湪:" + wrkMast.getSourceLocNo());
}
locMast.setLocSts("O");
locMast.setModiTime(now);
locMast.setModiUser(userId);
- locMastService.updateById(locMast);
+ locCacheService.updateById(locMast);
}
} else {
throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
@@ -184,8 +194,8 @@
//鍙栨秷鍑哄簱宸ヤ綔妗f椂锛屾煡璇㈠崟鎹鐞嗚〃锛屽洖婊氫綔涓氫腑鏁伴噺
if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 103) {
- List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
- for (WrkDetl wrkDetl : wrkDetls) {
+ List<TaskDetl> wrkDetls = taskDetlService.selectList(new EntityWrapper<TaskDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+ for (TaskDetl wrkDetl : wrkDetls) {
if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
// if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
// throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
@@ -237,34 +247,34 @@
wrkMast.setManuType("鎵嬪姩鍙栨秷");
wrkMast.setModiUser(userId);
wrkMast.setModiTime(now);
- if (!wrkMastService.updateById(wrkMast)) {
+ if (!taskService.updateById(wrkMast)) {
throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐�");
}
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
- if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+ if (!taskLogService.save(wrkMast.getWrkNo())) {
throw new CoolException("淇濆瓨宸ヤ綔鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo());
}
// 鍒犻櫎宸ヤ綔涓绘。
- boolean wrkMastRes = wrkMastService.deleteById(wrkMast);
+ boolean wrkMastRes = taskService.deleteById(wrkMast);
if (wrkMast.getIoType() != 10 && wrkMast.getIoType() != 110) {
// 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
- if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
+ if (!taskDetlLogService.save(wrkMast.getWrkNo())) {
// throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo());
}
// 鍒犻櫎宸ヤ綔妗f槑缁�
- boolean wrkDetlRes = wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo));
+ boolean wrkDetlRes = taskDetlService.delete(new EntityWrapper<TaskDetl>().eq("wrk_no", workNo));
}
// 淇敼搴撲綅鐘舵��
- LocMast locMast = locMastService.selectById(locNo);
+ LocCache locMast = locCacheService.selectOne(new EntityWrapper<LocCache>().eq("loc_no", locNo));
if (Cools.isEmpty(locMast)) {
throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐ワ紝搴撲綅涓嶅瓨鍦�:" + locNo);
}
locMast.setLocSts(locSts);
locMast.setModiTime(now);
locMast.setModiUser(userId);
- boolean locMastRes = locMastService.updateById(locMast);
+ boolean locMastRes = locCacheService.updateById(locMast);
if (!wrkMastRes || !locMastRes) {
throw new CoolException("淇濆瓨鏁版嵁澶辫触");
}
diff --git a/src/main/webapp/static/js/task/task.js b/src/main/webapp/static/js/task/task.js
index f1b3380..6e44333 100644
--- a/src/main/webapp/static/js/task/task.js
+++ b/src/main/webapp/static/js/task/task.js
@@ -157,7 +157,7 @@
// 瀹屾垚
case 'complete':
layer.confirm('纭瀹屾垚璇ョ瑪宸ヤ綔妗o紵', {title: '宸ヤ綔鍙凤細' + data.wrkNo, shadeClose: true}, function () {
- http.post(baseUrl + "/hand/control/wrkMast", {workNo: data.wrkNo, type: 1}, function (res) {
+ http.post(baseUrl + "/task/control", {workNo: data.wrkNo, type: 1}, function (res) {
$(".layui-laypage-btn")[0].click();
layer.msg(data.wrkNo + res.msg);
})
--
Gitblit v1.9.1