From 2926782a194a79a51ce3a3d6ad43151605892c0e Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期三, 27 八月 2025 16:10:22 +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