From 95cc083ea58c4db51d0b89184c58ad67bc4f3b12 Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期四, 20 三月 2025 15:38:00 +0800 Subject: [PATCH] 初始化 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 247 ++++++++++++++++++------------------------------- 1 files changed, 91 insertions(+), 156 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 e6eb109..288ec0b 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -131,38 +131,6 @@ } Short workNo = staProtocol.getWorkNo(); Short stano = staProtocol.getStaNo(); - - // 灏哄妫�娴嬪紓甯� - boolean back = false; - String errMsg = ""; - if (staProtocol.isFrontErr()) { - errMsg = "鍓嶈秴闄�"; - back = true; - } - if (!back && staProtocol.isBackErr()) { - errMsg = "鍚庤秴闄�"; - back = true; - } - if (!back && staProtocol.isHighErr()) { - errMsg = "楂樿秴闄�"; - back = true; - } - if (!back && staProtocol.isLeftErr()) { - errMsg = "宸﹁秴闄�"; - back = true; - } - if (!back && staProtocol.isRightErr()) { - errMsg = "鍙宠秴闄�"; - back = true; - } - if (!back && staProtocol.isWeightErr()) { - errMsg = "瓒呴噸"; - back = true; - } - if (!back && staProtocol.isBarcodeErr()) { - errMsg = "鎵爜澶辫触"; - back = true; - } // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() @@ -174,25 +142,38 @@ continue; } String BoxNo = barcodeThread.getBarcode(); - TaskWrk taskWrk1 = taskWrkService.selectOne(new EntityWrapper<TaskWrk>().eq("barcode", BoxNo)); - if (!Cools.isEmpty(taskWrk1)) { - log.info("鎵樼洏鐮侊細" + BoxNo + "浠诲姟妗e瓨鍦�"); - if (taskWrk1.getIoType() == 1 && taskWrk1.getStartPoint().equals(staProtocol.getSiteId().toString())) { - StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() - .eq("crn_no", taskWrk1.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); - if (Cools.isEmpty(staDesc)) { - return; - } else { - continue; + if (BoxNo.equals("00000000")) { + storageEscalationParam.setWCSStatus(1); + storageEscalationParam.setWCSErrorMessage("娌℃湁鎵埌鐮�"); + BasDevp basDevp= basDevpService.selectOne(new EntityWrapper<BasDevp>() + .eq("dev_no",staProtocol.getSiteId())); + if(Cools.isEmpty(basDevp)){ + log.error("鎵爜澶辫触骞朵笖娌℃湁鎵惧埌璇ョ珯鐐�---"+staProtocol.getSiteId()); + }else{ + basDevp.setStaErr(1);//娌℃湁鎵埌鐮� + basDevp.setStaErrMsg("娌℃湁鎵埌鐮侊紒"); + basDevpService.updateById(basDevp); + } + continue; + }else{ + TaskWrk taskWrk1 = taskWrkService.selectOne(new EntityWrapper<TaskWrk>().eq("barcode", BoxNo)); + if (!Cools.isEmpty(taskWrk1)) { + log.info("鎵樼洏鐮侊細" + BoxNo + "浠诲姟妗e瓨鍦�"); + if (taskWrk1.getIoType() == 1 && taskWrk1.getStartPoint().equals(staProtocol.getSiteId().toString())) { + StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() + .eq("crn_no", taskWrk1.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); + if (Cools.isEmpty(staDesc)) { + return; + } else { + continue; + } } } } - if (back) { - storageEscalationParam.setWCSStatus(1); - storageEscalationParam.setWCSErrorMessage(storageEscalationParam.getWCSErrorMessage() + errMsg); - } log.info("缁勬墭鍏ュ簱={}", storageEscalationParam); storageEscalationParam.setBoxNo(BoxNo); + storageEscalationParam.setWcsIoType(1);//婊℃澘 + storageEscalationParam.setWcsSourceStaNo(staProtocol.getSiteId()); String response = ""; Boolean success = false; try { @@ -203,84 +184,52 @@ .build() .doPost(); JSONObject jsonObject = JSON.parseObject(response); - if (back) { - if (staProtocol.getWorkNo() >= 9801 && staProtocol.getWorkNo() <= 9825) { - staProtocol.setStaNo((short) 105); - } else if (staProtocol.getWorkNo() >= 9826 && staProtocol.getWorkNo() <= 9850) { - staProtocol.setStaNo((short) 107); - } else if (staProtocol.getWorkNo() >= 9851 && staProtocol.getWorkNo() <= 9875) { - staProtocol.setStaNo((short) 109); - } else { - staProtocol.setStaNo((short) 110); - } - devpThread.setPakMk(staProtocol.getSiteId(), false); - MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - } else { - if (!Cools.isEmpty(response) && !Cools.isEmpty(jsonObject.get("ReturnStatus")) && jsonObject.get("ReturnStatus").equals(0) && !Cools.isEmpty(jsonObject.get("Result").toString())) { - Result result = JSON.parseObject(jsonObject.get("Result").toString(), Result.class); - // 鍒涙柊涓�涓叆搴撳伐浣滄。 - TaskWrk taskWrk = taskWrkService.selectByTaskNo(result.getTaskNo()); + + if (!Cools.isEmpty(response) && !Cools.isEmpty(jsonObject.get("ReturnStatus")) && jsonObject.get("ReturnStatus").equals(0) && !Cools.isEmpty(jsonObject.get("Result").toString())) { + Result result = JSON.parseObject(jsonObject.get("Result").toString(), Result.class); + // 鍒涙柊涓�涓叆搴撳伐浣滄。 + TaskWrk taskWrk = taskWrkService.selectByTaskNo(result.getTaskNo()+""); + if (Cools.isEmpty(taskWrk)) { + taskWrk = createTask1(result, BoxNo,staProtocol.getSiteId()); if (Cools.isEmpty(taskWrk)) { - taskWrk = createTask1(result, BoxNo); - if (Cools.isEmpty(taskWrk)) { - log.error("搴撲綅寮傚父锛屽簱浣嶅彿锛�={}", taskWrk.getOriginTargetPoint()); - } else { - taskWrkService.insert(taskWrk); - StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() - .eq("crn_no", taskWrk.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); - staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue()); - staProtocol.setStaNo(staDesc.getCrnStn().shortValue()); - MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - HashMap<String, Object> hashMap = new HashMap<>(); - hashMap.put("TaskNo", taskWrk.getTaskNo()); - Boolean bool = false; - try { - //寮�濮嬩笂鎶�,浠诲姟寮�濮嬫椂锛學CS鍥炶皟WMS - response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setPath(taskStatusFeedbackPath) - .setJson(JSON.toJSONString(hashMap)) - .build() - .doPost(); - JSONObject jsonObject1 = JSON.parseObject(response); - - if (jsonObject1.get("ReturnStatus").equals(0)) { - bool = true; - } - - } catch (Exception e) { - - }finally { - apiLogService.save("wcs寮�濮嬪叆搴撲换鍔′笂鎶ms" - , wmsUrl + TaskExecCallback - , null - , "127.0.0.1" - , JSON.toJSONString(hashMap) - , response - , bool - ); - } - } + log.error("搴撲綅寮傚父锛屽簱浣嶅彿锛�={}", taskWrk.getOriginTargetPoint()); } else { -// staProtocol.setWorkNo((short) 9991); - if (staProtocol.getWorkNo() >= 9801 && staProtocol.getWorkNo() <= 9825) { - staProtocol.setStaNo((short) 105); - } else if (staProtocol.getWorkNo() >= 9826 && staProtocol.getWorkNo() <= 9850) { - staProtocol.setStaNo((short) 107); - } else if (staProtocol.getWorkNo() >= 9851 && staProtocol.getWorkNo() <= 9875) { - staProtocol.setStaNo((short) 109); - } else { - staProtocol.setStaNo((short) 110); - } - devpThread.setPakMk(staProtocol.getSiteId(), false); + taskWrkService.insert(taskWrk); + StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() + .eq("crn_no", taskWrk.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); + staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue()); + staProtocol.setStaNo(staDesc.getCrnStn().shortValue()); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - } + HashMap<String, Object> hashMap = new HashMap<>(); + hashMap.put("TaskNo", taskWrk.getTaskNo()); + Boolean bool = false; + try { + //寮�濮嬩笂鎶�,浠诲姟寮�濮嬫椂锛學CS鍥炶皟WMS + response = new HttpHandler.Builder() + .setUri(wmsUrl) + .setPath(taskStatusFeedbackPath) + .setJson(JSON.toJSONString(hashMap)) + .build() + .doPost(); + JSONObject jsonObject1 = JSON.parseObject(response); - } else { -// staProtocol.setWorkNo((short) 9991); - staProtocol.setStaNo(inSta.getBackSta().shortValue()); - devpThread.setPakMk(staProtocol.getSiteId(), false); - MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + if (jsonObject1.get("ReturnStatus").equals(0)) { + bool = true; + } + + } catch (Exception e) { + + } finally { + apiLogService.save("wcs寮�濮嬪叆搴撲换鍔′笂鎶ms" + , wmsUrl + TaskExecCallback + , null + , "127.0.0.1" + , JSON.toJSONString(hashMap) + , response + , bool + ); + } + } } } } catch (Exception e) { @@ -423,13 +372,13 @@ continue; } - String mbz=taskWrk.getTargetPoint().substring(5); + String mbz = taskWrk.getTargetPoint().substring(5); HashMap<String, Object> hashMap = new HashMap<>(); - hashMap.put("taskNo",taskWrk.getTaskNo());//wms浠诲姟鍙� - hashMap.put("sourceStaNo",staDetl.getDevNo());//婧愮珯鐐� - hashMap.put("staNo",Integer.parseInt(mbz)+"");//鐩爣绔� - hashMap.put("locNo",taskWrk.getTargetPoint());//鐩爣搴撲綅 + hashMap.put("taskNo", taskWrk.getTaskNo());//wms浠诲姟鍙� + hashMap.put("sourceStaNo", staDetl.getDevNo());//婧愮珯鐐� + hashMap.put("staNo", Integer.parseInt(mbz) + "");//鐩爣绔� + hashMap.put("locNo", taskWrk.getTargetPoint());//鐩爣搴撲綅 String response = ""; Boolean bool = false; try { @@ -442,7 +391,7 @@ .doPost(); JSONObject jsonObject = JSON.parseObject(response); - if(jsonObject.get("code").equals(200)){ + if (jsonObject.get("code").equals(200)) { bool = true; // taskWrk.setStatus(TaskStatusType.DISTRIBUTE.id);//娲惧彂鐘舵�� taskWrk.setAssignTime(new Date());//娲惧彂鏃堕棿 @@ -452,7 +401,7 @@ taskWrk.setModiUser(9988L); } } catch (Exception e) { - }finally { + } finally { apiLogService.save("wcs娲惧彂鍏ュ簱浠诲姟缁橰CS" , wcsUrl + wcsInboundTaskApplyPath , null @@ -521,13 +470,13 @@ break; } - String mbz=taskWrk.getTargetPoint().substring(5); + String mbz = taskWrk.getTargetPoint().substring(5); HashMap<String, Object> hashMap = new HashMap<>(); - hashMap.put("taskNo",taskWrk.getTaskNo());//wms浠诲姟鍙� - hashMap.put("sourceStaNo",staDetl.getDevNo());//婧愮珯鐐� - hashMap.put("staNo",Integer.parseInt(mbz)+"");//鐩爣绔� - hashMap.put("locNo",taskWrk.getTargetPoint());//鐩爣搴撲綅 + hashMap.put("taskNo", taskWrk.getTaskNo());//wms浠诲姟鍙� + hashMap.put("sourceStaNo", staDetl.getDevNo());//婧愮珯鐐� + hashMap.put("staNo", Integer.parseInt(mbz) + "");//鐩爣绔� + hashMap.put("locNo", taskWrk.getTargetPoint());//鐩爣搴撲綅 String response = ""; Boolean bool = false; try { @@ -540,7 +489,7 @@ .doPost(); JSONObject jsonObject = JSON.parseObject(response); - if(jsonObject.get("code").equals(200)){ + if (jsonObject.get("code").equals(200)) { bool = true; // taskWrk.setStatus(TaskStatusType.DISTRIBUTE.id);//娲惧彂鐘舵�� taskWrk.setAssignTime(new Date());//娲惧彂鏃堕棿 @@ -550,7 +499,7 @@ taskWrk.setModiUser(9988L); } } catch (Exception e) { - }finally { + } finally { apiLogService.save("wcs娲惧彂鍑哄簱浠诲姟缁橰CS" , wcsUrl + wcsInboundTaskApplyPath , null @@ -1140,35 +1089,21 @@ return response; } - private TaskWrk createTask1(Result result, String barcode) { - String locNo = Utils.Fusion(result.getRow(), result.getFloor(), result.getColumn()); - - + private TaskWrk createTask1(Result result, String barcode,Integer devNo) { Date now = new Date(); TaskWrk taskWrk = new TaskWrk(); - int workNo1 = commonService.getWorkNo(WorkNoType.PAKIN.type);//鑾峰彇鍏ュ簱宸ヤ綔鍙� - taskWrk.setTaskNo(result.getTaskNo());//浠诲姟鍙� - taskWrk.setWrkNo(workNo1); +// int workNo1 = commonService.getWorkNo(WorkNoType.PAKIN.type);//鑾峰彇鍏ュ簱宸ヤ綔鍙� + taskWrk.setTaskNo(result.getTaskNo()+"");//浠诲姟鍙� + taskWrk.setWrkNo(result.getTaskNo()); taskWrk.setStatus(TaskStatusType.DISTRIBUTE.id);//浠诲姟鐘舵�侊細娲惧彂 taskWrk.setCreateTime(now); taskWrk.setIoType(1);//浠诲姟绫诲瀷 taskWrk.setIoPri(13);//浼樺厛绾� taskWrk.setBarcode(barcode);//鏉$爜 - LocMast locMast = locMastService.selectByLocNo(locNo); - taskWrk.setCrnNo(locMast.getCrnNo()); - taskWrk.setTargetPoint(locNo); - taskWrk.setStartPoint("116"); - if (result.getAlley().equals("1")) { - taskWrk.setCrnNo(1); - } else { - taskWrk.setCrnNo(2); - } - if (taskWrk.getIoType() == 1) { - taskWrk.setWrkSts(2); - if (!Cools.isEmpty(taskWrk.getTargetPoint())) { - taskWrk.setOriginTargetPoint(taskWrk.getTargetPoint()); - } - } + taskWrk.setTargetPoint(devNo+"");//绔欑偣缁堢偣 + taskWrk.setStartPoint(devNo+"");//绔欑偣璧风偣 + taskWrk.setOriginStartPoint("");//婧愬簱浣� + taskWrk.setOriginTargetPoint(result.getShelfUnitId());//鐩爣搴撲綅 return taskWrk; } -- Gitblit v1.9.1