From 343c481942557912e81662fc71d73cb45ccde17d Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期三, 10 九月 2025 11:07:50 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 79 +++++++++++++++++++--------------------
1 files changed, 39 insertions(+), 40 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 f46ce75..98a7cc5 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -35,12 +35,10 @@
import com.zy.core.properties.SlaveProperties;
import com.zy.core.thread.BarcodeThread;
import com.zy.core.thread.SiemensDevpThread;
-import com.zy.system.service.ConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.io.IOException;
@@ -53,7 +51,6 @@
*/
@Slf4j
@Service("mainService")
-@Transactional
public class MainServiceImpl {
public static final long COMMAND_TIMEOUT = 5 * 1000;
@@ -150,9 +147,9 @@
if (staProtocol.isAutoing()
&& staProtocol.isLoading()
&& staProtocol.isInEnable()
- && !staProtocol.isEmptyMk()
+// && !staProtocol.isEmptyMk()
&& staProtocol.isPakMk()
- && staProtocol.getWorkNo() == 9999
+ && (staProtocol.getWorkNo() == 9999 || staProtocol.getWorkNo() == 9998)
) {
// 鑾峰彇鏉$爜鎵弿浠俊鎭�
BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode());
@@ -163,6 +160,20 @@
String barcode = barcodeThread.getBarcode();
if (Cools.isEmpty(barcode)) {
News.watchInfo(String.valueOf(staProtocol.getSiteId()), "鍏ュ簱淇″彿婊¤冻锛屾墭鐩樼爜涓虹┖");
+ continue;
+ }
+
+ StaDesc staDesc2 = staDescService.selectOne(new EntityWrapper<StaDesc>().eq("type_no", 1).eq("stn_no", staProtocol.getSiteId()));
+ List<TaskWrk> taskWrkOutList = taskWrkService.selectList(new EntityWrapper<TaskWrk>()
+ .eq("crn_no", staDesc2.getCrnNo())
+ .eq("wrk_sts", 12)
+ );
+ if (!taskWrkOutList.isEmpty()) {
+ News.watchInfo(String.valueOf(staProtocol.getSiteId()), "鐢宠鍏ュ簱浠诲姟鏃跺彂鐜版鍦ㄦ墽琛岀殑鍑哄簱浠诲姟,鍏ュ簱浠诲姟琚己鍒堕��鍥�");
+
+ staProtocol.setWorkNo(9997);
+ staProtocol.setStaNo(inSta.getBackSta().shortValue());
+ MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
continue;
}
@@ -183,10 +194,10 @@
requestParam.put("wcsStatus", 0);//鎴愬姛
}
- String response = "";
+ String response = "None";
Boolean success = false;
try {
- Object object = redisUtil.get(RedisKeyType.IN_TASK_LOCK.key);
+ Object object = redisUtil.get(RedisKeyType.IN_TASK_LOCK.key + inSta.getStaNo());
if(object != null) {
continue;
}
@@ -198,7 +209,8 @@
.build()
.doPost();
JSONObject jsonObject = JSON.parseObject(response);
- redisUtil.set(RedisKeyType.IN_TASK_LOCK.key, "lock", 5);
+ log.info(response);
+ redisUtil.set(RedisKeyType.IN_TASK_LOCK.key + inSta.getStaNo(), "lock", 5);
if (jsonObject.getInteger("code") == 200) {
} else if (jsonObject.getInteger("code") == 500) {
@@ -248,7 +260,7 @@
taskWrk.setBarcode(barcode);//鏉$爜
taskWrk.setCrnNo(locMast.getCrnNo());
taskWrk.setTargetPoint(resultLocNo);
- taskWrk.setStartPoint(String.valueOf(staProtocol.getStaNo()));
+ taskWrk.setStartPoint(String.valueOf(inSta.getStaNo()));
if (!Cools.isEmpty(taskWrk.getTargetPoint())) {
taskWrk.setOriginTargetPoint(taskWrk.getTargetPoint());
}
@@ -456,7 +468,7 @@
flag = true;
}
if (!flag) {
- News.watchError(crnStn.getStaNo() + "绔欑偣", "鍏ュ簱 ===>> 鍫嗗灈鏈虹珯鐐圭姸鎬佹娴嬪け璐ワ紝绔欑偣闇�瑕佹弧瓒筹細鑷姩銆佹湁鐗┿�佹湁宸ヤ綔鍙枫�佺珯鐐瑰彲鍏�");
+// News.watchError(crnStn.getStaNo() + "绔欑偣", "鍏ュ簱 ===>> 鍫嗗灈鏈虹珯鐐圭姸鎬佹娴嬪け璐ワ紝绔欑偣闇�瑕佹弧瓒筹細鑷姩銆佹湁鐗┿�佹湁宸ヤ綔鍙枫�佺珯鐐瑰彲鍏�");
continue;
}
@@ -695,37 +707,24 @@
if (taskWrkMapper.updateById(taskWrk) == 0) {
log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", taskWrk.getWrkNo());
}
- String response = "";
- Boolean bool=false;
- HashMap<String, Object> headParam = new HashMap<>();
- headParam.put("TaskNo", taskWrk.getTaskNo());
- try {
- response = new HttpHandler.Builder()
- // .setHeaders(headParam)
- .setUri(wmsUrl)
- .setPath(taskExecCallback)
- .setJson(JSON.toJSONString(headParam))
- .build()
- .doPost();
- JSONObject jsonObject = JSON.parseObject(response);
- if(jsonObject.get("ReturnStatus").equals(0)){
- bool = true;
- taskWrk.setStatus(2);
- taskWrkMapper.updateById(taskWrk);
- }
- } catch (Exception e) {
- log.error("wcs娲惧彂绉诲簱搴撲换鍔′笂鎶ms澶辫触", taskWrk);
-// throw new CoolException("wcs娲惧彂绉诲簱搴撲换鍔′笂鎶ms澶辫触");
- }finally {
- apiLogService.save("wcs娲惧彂绉诲簱浠诲姟涓婃姤wms"
- , wmsUrl + taskExecCallback
- , null
- , "127.0.0.1"
- , JSON.toJSONString(headParam)
- , response
- , bool
- );
+ //涓婃姤-绉诲簱浠诲姟寮�濮嬫椂锛學CS鍥炶皟WMS
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:ss:mm");
+ HashMap<String, Object> hashMap = new HashMap<>();
+ hashMap.put("taskNo", taskWrk.getTaskNo());
+ hashMap.put("status", TaskStatusType.DISTRIBUTE.id);
+ hashMap.put("ioType", 3);
+ hashMap.put("barcode", taskWrk.getBarcode());
+ hashMap.put("reportTime", format.format(new Date()));
+
+ NotifyCustomDataDto customDataDto = new NotifyCustomDataDto();
+ customDataDto.setUri(wmsUrl);
+ customDataDto.setPath(taskExecCallback);
+ customDataDto.setData(JSON.toJSONString(hashMap));
+ boolean notifyResult = notifyUtils.notify("task", 1, String.valueOf(taskWrk.getWrkNo()), taskWrk.getTaskNo(), NotifyMsgType.TASK_START, JSON.toJSONString(taskWrk), true, customDataDto);
+ if(notifyResult) {
+ taskWrk.setStatus(2);
+ taskWrkService.updateById(taskWrk);
}
}
--
Gitblit v1.9.1