From 01caa61052be94abef9d84f63f97ea427cd1e043 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期二, 03 九月 2024 15:38:57 +0800 Subject: [PATCH] #缓存队列bug fixed --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/OpenServiceImpl.java | 138 +++++++++++++++++++-------------------------- 1 files changed, 58 insertions(+), 80 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/OpenServiceImpl.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/OpenServiceImpl.java index 970c736..0bd2a9e 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/OpenServiceImpl.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/OpenServiceImpl.java @@ -59,7 +59,7 @@ @Override @Transactional - public R createInTask(CreateInTaskParam param) { + public R createInTask(CreateInTaskParam param, CreateWcsTaskParam createWcsTaskParam) { //鑾峰彇鍏ュ簱浠诲姟绫诲瀷 TaskCtg taskCtg = taskCtgService.getOne(new LambdaQueryWrapper<TaskCtg>() .eq(TaskCtg::getFlag, String.valueOf(TaskCtgType.IN)) @@ -148,37 +148,54 @@ priority = param.getPriority(); } - Task task = new Task(); - task.setUuid(String.valueOf(snowflakeIdWorker.nextId())); - task.setTaskNo(String.valueOf(Utils.getTaskNo("IN"))); - task.setWmsTaskNo(param.getTaskNo()); - task.setTaskSts(TaskStsType.NEW_INBOUND.sts); - task.setTaskCtg(taskCtg.getId()); - task.setPriority(priority); - task.setOriginSite(param.getOriginSite()); - task.setOriginLoc(null); - task.setDestSite(destSite); - task.setDestLoc(param.getDestLoc()); - task.setZpallet(param.getBarcode()); - task.setIoTime(new Date()); - task.setStartTime(new Date()); - task.setStatus(1); - task.setMemo(""); - task.setShuttleNo(null);//绛夊緟涓荤嚎绋嬪垎閰嶅皬杞� - task.setRecordLoc("Y");//璁板綍搴撳瓨淇℃伅 - task.setHostId(hostId);//涓存椂鎺у埗鍙厑璁竓ost涓�1 - task.setMemo(param.getEndSite()); + if (createWcsTaskParam != null) { + //杞彂agv + if (!createWcsTaskParam.getFrmPos().equals("06YZ0001")){ + try { + AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam(); + getInRequestParam(agvTaskCreateParam, createWcsTaskParam); + String httpRequest = doHttpRequest(agvTaskCreateParam, "172.18.16.248:443", "/rcs/rtas/api/robot/controller/task/submit"); + if (!httpRequest.equals("SUCCESS")){ + throw new CoolException("杞彂AGV浠诲姟澶辫触" + httpRequest); + } - boolean result = taskService.save(task); - if (!result) { - throw new CoolException("鐢熸垚鍏ュ簱浠诲姟澶辫触锛�"); + Task task = new Task(); + task.setUuid(String.valueOf(snowflakeIdWorker.nextId())); + task.setTaskNo(String.valueOf(Utils.getTaskNo("IN"))); + task.setWmsTaskNo(param.getTaskNo()); + task.setTaskSts(TaskStsType.NEW_INBOUND.sts); + task.setTaskCtg(taskCtg.getId()); + task.setPriority(priority); + task.setOriginSite(param.getOriginSite()); + task.setOriginLoc(null); + task.setDestSite(destSite); + task.setDestLoc(param.getDestLoc()); + task.setZpallet(param.getBarcode()); + task.setIoTime(new Date()); + task.setStartTime(new Date()); + task.setStatus(1); + task.setMemo(""); + task.setShuttleNo(null);//绛夊緟涓荤嚎绋嬪垎閰嶅皬杞� + task.setRecordLoc("Y");//璁板綍搴撳瓨淇℃伅 + task.setHostId(hostId);//涓存椂鎺у埗鍙厑璁竓ost涓�1 + task.setMemo(param.getEndSite()); + + boolean result = taskService.save(task); + if (!result) { + throw new CoolException("鐢熸垚鍏ュ簱浠诲姟澶辫触锛�"); + } + }catch (Exception e){ + throw new CoolException("杞彂AGV浠诲姟鍑洪敊" + e.getMessage()); + } + } } + return R.ok(); } @Override @Transactional - public R createOutTask(CreateOutTaskParam param) { + public R createOutTask(CreateOutTaskParam param, CreateWcsTaskParam createWcsTaskParam) { //鑾峰彇鍑哄簱浠诲姟绫诲瀷 TaskCtg taskCtg = taskCtgService.getOne(new LambdaQueryWrapper<TaskCtg>() .eq(TaskCtg::getFlag, String.valueOf(TaskCtgType.OUT)) @@ -221,12 +238,12 @@ .eq(BasConveyorPath::getTypeNo, taskCtg.getId()) .eq(BasConveyorPath::getHostId, hostId) .eq(BasConveyorPath::getStnNo, param.getDestSite())); - if(path == null) { + if (path == null) { throw new CoolException("鍐呯疆璺緞涓嶅瓨鍦�"); } Integer deviceNo = path.getDeviceNo();//鑾峰彇鎻愬崌鏈哄彿 BasLift basLift = basLiftService.getOne(new LambdaQueryWrapper<BasLift>().eq(BasLift::getLiftNo, deviceNo).eq(BasLift::getHostId, hostId)); - if(basLift == null) { + if (basLift == null) { throw new CoolException("鎻愬崌鏈哄璞′笉瀛樺湪"); } List<BasLiftStaDto> staList = JSON.parseArray(basLift.getSta(), BasLiftStaDto.class); @@ -264,12 +281,12 @@ } BasConveyor basConveyor = basConveyorService.getOne(new LambdaQueryWrapper<BasConveyor>().eq(BasConveyor::getConveyorNo, basConveyorSta.getConveyorNo())); - if(basConveyor == null) { + if (basConveyor == null) { throw new CoolException("杈撻�佺嚎涓嶅瓨鍦�"); } DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Conveyor, basConveyor.getDeviceId().intValue()); - if(devpThread == null) { + if (devpThread == null) { throw new CoolException("杈撻�佺嚎绾跨▼涓嶅瓨鍦�"); } @@ -309,6 +326,7 @@ if (!result) { throw new CoolException("鐢熸垚鍑哄簱浠诲姟澶辫触锛�"); } + return R.ok(); } @@ -329,43 +347,20 @@ createInTaskParam.setEndSite(param.getToPos()); R inTask = null; try { - inTask = this.createInTask(createInTaskParam); + inTask = this.createInTask(createInTaskParam, param); int code = (int) inTask.get("code"); if (code == 200){ map.put("success", "1"); map.put("message", inTask.get("msg")); map.put("result", ""); map.put("requestPK", param.getRequestPK()); - - if (!param.getFrmPos().equals("06YZ0001")){ - try { - AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam(); - getInRequestParam(agvTaskCreateParam,param); - String httpRequest = doHttpRequest(agvTaskCreateParam, "172.18.16.248:443", "/rcs/rtas/api/robot/controller/task/submit"); - if (!httpRequest.equals("SUCCESS")){ - map.put("success", "0"); - map.put("message", httpRequest); - map.put("result", ""); - map.put("requestPK", param.getRequestPK()); - log.info("杩斿洖mes淇℃伅:"+ JSONObject.toJSONString(map)); - return map; - } - }catch (Exception e){ - map.put("success", "0"); - map.put("message", "杞彂AGV浠诲姟鍑洪敊"); - map.put("result", ""); - map.put("requestPK", param.getRequestPK()); - log.info("杩斿洖mes淇℃伅:"+JSONObject.toJSONString(map)); - return map; - } - } - }else { map.put("success", "0"); map.put("message", inTask.get("msg")); map.put("result", ""); map.put("requestPK", param.getRequestPK()); } + }catch (Exception e){ map.put("success", "0"); map.put("message", e.getMessage()); @@ -385,7 +380,7 @@ createOutTaskParam.setZpallet(param.getContNo()); R outTask = null; try { - outTask = this.createOutTask(createOutTaskParam); + outTask = this.createOutTask(createOutTaskParam, param); int code = (int) outTask.get("code"); if (code == 200){ @@ -393,30 +388,6 @@ map.put("message", outTask.get("msg")); map.put("result", ""); map.put("requestPK", param.getRequestPK()); - - if (!param.getFrmPos().equals("06YZ0001")){ - try { - AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam(); - getInRequestParam(agvTaskCreateParam,param); - String httpRequest = doHttpRequest(agvTaskCreateParam, "172.18.16.248:443", "/rcs/rtas/api/robot/controller/task/submit"); - if (!httpRequest.equals("SUCCESS")){ - map.put("success", "0"); - map.put("message", httpRequest); - map.put("result", ""); - map.put("requestPK", param.getRequestPK()); - log.info("杩斿洖mes淇℃伅:"+ JSONObject.toJSONString(map)); - return map; - } - }catch (Exception e){ - map.put("success", "0"); - map.put("message", "杞彂AGV浠诲姟鍑洪敊"); - map.put("result", ""); - map.put("requestPK", param.getRequestPK()); - log.info("杩斿洖mes淇℃伅:"+JSONObject.toJSONString(map)); - return map; - } - } - }else { map.put("success", "0"); map.put("message", outTask.get("msg")); @@ -426,7 +397,7 @@ }catch (Exception e){ map.put("success", "0"); - map.put("message", "鐢熸垚浠诲姟鍑洪敊"); + map.put("message", e.getMessage()); map.put("result", ""); map.put("requestPK", param.getRequestPK()); log.info("杩斿洖mes淇℃伅:"+JSONObject.toJSONString(map)); @@ -519,6 +490,13 @@ map.put("requestPK", param.getRequestPK()); log.info("杩斿洖mes淇℃伅:"+JSONObject.toJSONString(map)); return map; + }else { + map.put("success", "1"); + map.put("message", "success"); + map.put("result", ""); + map.put("requestPK", param.getRequestPK()); + log.info("杩斿洖mes淇℃伅:"+JSONObject.toJSONString(map)); + return map; } }catch (Exception e){ map.put("success", "0"); -- Gitblit v1.9.1