From a38d955f816eb64f297cd587b507defd5839892e Mon Sep 17 00:00:00 2001
From: zzgtfwq <zzgtfwq>
Date: 星期二, 09 十二月 2025 15:08:46 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 86 +++++++++++++++++++++++++-----------------
1 files changed, 51 insertions(+), 35 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index eca924f..46167d3 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.common.*;
import com.core.exception.CoolException;
+import com.zy.asrs.controller.TaskWrkController;
import com.zy.asrs.domain.enums.LedErrorAreaType;
import com.zy.asrs.domain.enums.TaskStatusType;
import com.zy.asrs.entity.*;
@@ -13,24 +14,19 @@
import com.zy.asrs.service.*;
import com.zy.asrs.utils.*;
import com.zy.common.model.LocTypeDto;
-import com.zy.common.model.MatDto;
import com.zy.common.model.SearchLocParam;
import com.zy.common.model.StartupDto;
import com.zy.common.service.CommonService;
-import com.zy.common.utils.CollectionUtils;
import com.zy.common.utils.HttpHandler;
-import com.zy.common.utils.News;
import com.zy.core.CrnThread;
import com.zy.core.DevpThread;
import com.zy.core.cache.*;
import com.zy.core.enums.*;
import com.zy.core.model.*;
import com.zy.core.model.command.CrnCommand;
-import com.zy.core.model.command.LedCommand;
import com.zy.core.model.protocol.*;
import com.zy.core.properties.SlaveProperties;
import com.zy.core.thread.BarcodeThread;
-import com.zy.core.thread.LedThread;
import com.zy.core.thread.RgvThread;
import com.zy.core.thread.SiemensDevpThread;
import com.zy.system.entity.license.LicenseVerify;
@@ -44,7 +40,6 @@
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
/**
* 绔嬩綋浠撳簱WCS绯荤粺涓绘祦绋嬩笟鍔�
@@ -68,17 +63,11 @@
@Autowired
private LocMastService locMastService;
@Autowired
- private StaDescService staDescService;
- @Autowired
private BasCrnpService basCrnpService;
@Autowired
private BasDevpService basDevpService;
@Autowired
private LocDetlService locDetlService;
- @Autowired
- private BasErrLogService basErrLogService;
- @Autowired
- private BasCrnErrorMapper basCrnErrorMapper;
@Autowired
private WrkMastService wrkMastService;
@Autowired
@@ -232,7 +221,7 @@
// LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
barcodeThread.setBarcode("");
staProtocol.setWorkNo(wrkMast.getWrkNo());
- staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+ staProtocol.setStaNo(wrkMast.getStaNoSou$().shortValue());
devpThread.setPakMk(staProtocol.getSiteId(), false,238);
boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
@@ -307,7 +296,7 @@
*/
public synchronized void storeEmptyPlt() {
for (DevpSlave devp : slaveProperties.getDevp()) {
- if (devp.getId()==1) continue;
+// if (devp.getId()==1) continue;
// 閬嶅巻绌烘澘鍏ュ簱鍙�
for (DevpSlave.Sta emptyInSta : devp.getEmptyInSta()) {
// 鑾峰彇绌烘澘鍏ュ簱绔欎俊鎭�
@@ -341,7 +330,7 @@
// 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
staProtocol.setWorkNo(dto.getWorkNo());
- staProtocol.setStaNo(dto.getStaNo().shortValue());
+ staProtocol.setStaNo(dto.getStaNoSou$(dto.getStaNo(),staProtocol.getSiteId()).shortValue());
devpThread.setPakMk(staProtocol.getSiteId(), false,4087);
boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
if (!result) {
@@ -1246,14 +1235,39 @@
for (RgvSlave rgvSlave : slaveProperties.getRgv()) {
try {
for (RgvSlave.RgvStn inSta : rgvSlave.getRgvInSta()) {
- boolean create = deviceDetectionCreate(inSta);
- if (create) {
- continue;
+ WrkMast wrkMast = deviceDetectionCreate(inSta);
+ if (!Cools.isEmpty(wrkMast)) {
+ TaskWrk taskWrk = new TaskWrk(wrkMast);
+ taskWrkService.insert(taskWrk);
}
}
} catch (Exception e){
}
+ }
+ }
+
+ public synchronized void taskCancel() {
+ try {
+ List<String> taskList = new ArrayList<>();
+ for (RgvSlave rgvSlave : slaveProperties.getRgv()) {
+ RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+ TaskProtocolCache taskProtocolCache = rgvThread.getTaskProtocolCache();
+ ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol();
+ for (TaskProtocol taskProtocol : allTaskProtocol.values()){
+ taskList.add(taskProtocol.getTaskNo().toString());
+ }
+ }
+ Wrapper<TaskWrk> wrkWrapper = new EntityWrapper<TaskWrk>().eq("status", 5);
+ for (String taskNo : taskList){
+ wrkWrapper.ne("task_no", taskNo);
+ }
+ int count = taskWrkService.selectCount(wrkWrapper);
+ if (count>0){
+ taskWrkService.delete(wrkWrapper);
+ }
+ } catch (Exception e){
+
}
}
public synchronized void taskStart() {
@@ -1738,31 +1752,33 @@
return true;
}
- public boolean deviceDetectionCreate(RgvSlave.RgvStn inSta) {
+ public WrkMast deviceDetectionCreate(RgvSlave.RgvStn inSta) {
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, inSta.getDevpPlcId());
StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo());
if (staProtocol == null) {
- return false;
+ return null;
}
+
// 鍒ゆ柇鏄惁婊¤冻鍙栬揣鏉′欢
if (staProtocol.isAutoing()
// && staProtocol.isLoading()
// && staProtocol.isStaOk()
&& staProtocol.getWorkNo() != 0) {
- TaskWrk taskWrk = taskWrkService.selectByTaskNo(staProtocol.getWorkNo());
- if (Cools.isEmpty(taskWrk)){
+ WrkMast wrkMast = wrkMastService.selectByWrkNo(staProtocol.getWorkNo());
+ if (!Cools.isEmpty(wrkMast)){
if (inSta.getStaNo()==117 || inSta.getStaNo()==120 || inSta.getStaNo()==123
|| inSta.getStaNo()==217 || inSta.getStaNo()==220 || inSta.getStaNo()==223){
- WrkMast wrkMast = wrkMastService.selectByWrkNo(staProtocol.getWorkNo());
- if (!Cools.isEmpty(wrkMast) && wrkMast.getIoType()<100){
- return true;
+ if (wrkMast.getIoType()>100){
+ return null;
}
- } else {
- return true;
+ }
+ TaskWrk taskWrk = taskWrkService.selectByTaskNo(staProtocol.getWorkNo());
+ if (Cools.isEmpty(taskWrk)){
+ return wrkMast;
}
}
}
- return false;
+ return null;
}
public TaskWrk deviceDetection(RgvSlave.RgvStn inSta) {
@@ -2009,6 +2025,7 @@
issuedTake.setTaskNo(Long.valueOf(taskWrk.getWrkNo()));
issuedTake.setTaskStatus(2);
issuedTake.setTargetPositionStaNo(basDevpPositionSou.getDevNo());
+ issuedTake.setTargetPositionStaNoEnd(basDevpPositionSou.getDevNo$());
issuedTake.setTargetPositionStaNoPlcId(basDevpPositionSou.getPlcId());
issuedTake.setTaskNoDirection(issuedTake.gettaskNoDirection$(issuedTake.getTaskNo(), issuedTake.getTaskStatus()));
issuedTake.setTargetPosition(basDevpPositionSou.getPlcPosition());
@@ -2019,6 +2036,7 @@
issuedPut.setTaskNo(Long.valueOf(taskWrk.getWrkNo()));
issuedPut.setTaskStatus(3);
issuedPut.setTargetPositionStaNo(basDevpPositionEnd.getDevNo());
+ issuedPut.setTargetPositionStaNoEnd(basDevpPositionEnd.getDevNo$());
issuedPut.setTargetPositionStaNoPlcId(basDevpPositionEnd.getPlcId());
issuedPut.setTaskNoDirection(issuedPut.gettaskNoDirection$(issuedPut.getTaskNo(), issuedPut.getTaskStatus()));
issuedPut.setTargetPosition(basDevpPositionEnd.getPlcPosition());
@@ -2026,13 +2044,11 @@
issuedPut.setDirection(basDevpPositionEnd.getRgvSign()==1);
try{
- if (taskWrk.getIoType()==2 && basDevpPositionEnd.getRgvSign()==1){
- Date now = new Date();
- taskWrk.setStatus(TaskStatusType.OVER.id);
- taskWrk.setModiTime(now);//鏇存柊鏃堕棿
- taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
- taskWrkService.updateById(taskWrk);
- }
+ Date now = new Date();
+ taskWrk.setStatus(TaskStatusType.OVER.id);
+ taskWrk.setModiTime(now);//鏇存柊鏃堕棿
+ taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
+ taskWrkService.updateById(taskWrk);
} catch (Exception e){
}
--
Gitblit v1.9.1