| src/main/java/com/zy/asrs/controller/MonitorController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/controller/OpenController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/MainProcess.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/thread/RgvThread.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/license.lic | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/WrkMastMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/MonitorController.java
@@ -215,7 +215,7 @@ Map<String, Object> map1 = new HashMap<>(); map1.put("name", "空"); map1.put("value", 11200-used); map1.put("value", 8064-used); pie.add(map1); Map<String, Object> map2 = new HashMap<>(); @@ -231,15 +231,15 @@ // 库位使用率 double usedDivides = Arith.divides(3, used, 11200); double usedDivides = Arith.divides(3, used, 8064); double usedPr = Arith.multiplys(1, usedDivides, 100); return R.ok( Cools.add("pie", pie) .add("stockCunt", locUseRate.getFqty()) .add("emptyCount", 11200-used) .add("emptyCount", 8064-used) .add("noneCount", locUseRate.getXqty()) .add("total", 11200) .add("total", 8064) .add("used", used) .add("usedPr", usedPr) ); src/main/java/com/zy/asrs/controller/OpenController.java
@@ -195,12 +195,13 @@ if (Cools.isEmpty(param.getBarcode())) { return R.error("容器编码[barcode]不能为空"); } if (Cools.isEmpty(param.getStartPoint())) { return R.error("起点[startPoint]不能为空"); } if (Cools.isEmpty(param.getTargetPoint())) { return R.error("目标点[targetPoint]不能为空"); } // if (Cools.isEmpty(param.getStartPoint())) { // return R.error("起点[startPoint]不能为空"); // } // if (Cools.isEmpty(param.getTargetPoint())) { // return R.error("目标点[targetPoint]不能为空"); // } try { boolean result = openService.taskCreate(param); src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -31,7 +31,7 @@ WrkMast selectPakInStep1(@Param("sourceStaNo")Integer sourceStaNo, @Param("barcode")String barcode); WrkMast selectPakInStep5(@Param("staNo")Integer staNo,@Param("sheetNo")String sheetNo); WrkMast selectPakInStep6(@Param("barcode")String barcode); /** * 查询同一台堆垛机下所有出库任务 * @param crnNo src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -414,19 +414,18 @@ // 遍历拣料入库口 for (DevpSlave.Sta pickSta : devp.getPickSta()) { // // 获取条码扫描仪信息 // BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, pickSta.getBarcode()); // if (barcodeThread == null) { // continue; // } // String barcode = barcodeThread.getBarcode(); // if(!Cools.isEmpty(barcode)) { // log.info("{}号条码扫描器检测条码信息:{}", pickSta.getBarcode(), barcode); // if("NG".endsWith(barcode) || "NoRead".equals(barcode)) { // continue; // } // } else { // continue; // } BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, pickSta.getBarcode()); if (barcodeThread == null) { continue; } String barcode = barcodeThread.getBarcode(); if(!Cools.isEmpty(barcode)) { if("NG".endsWith(barcode) || "NoRead".equals(barcode)) { continue; } } else { continue; } // 获取拣料入库站信息 SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); @@ -440,9 +439,9 @@ // // 入出库模式判断 // if (devpThread.ioMode != IoModeType.PAKIN_MODE) { continue; } if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk() ) { if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk() && staProtocol.getWorkNo() == 9998) { // WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode); WrkMast wrkMast = wrkMastMapper.selectPakInStep5(staProtocol.getSiteId(),"7"); WrkMast wrkMast = wrkMastMapper.selectPakInStep6(barcode); if (wrkMast == null) { // 无拣料数据 continue; @@ -455,59 +454,38 @@ // 获取库位号 try { SearchLocParam param = new SearchLocParam(); Integer staNo = wrkMast.getSourceStaNo(); param.setBarcode(wrkMast.getBarcode()); param.setIoType(wrkMast.getIoType()); param.setSourceStaNo(pickSta.getStaNo()); //作业站点 param.setLocType1((short)1); String response = ""; log.info("入库作业站"+pickSta.getStaNo()+"盘点再入库任务请求WMS===>>参数:" + param); try { response = new HttpHandler.Builder() .setUri(wmsUrl) .setPath("/rpc/pakin2/loc/v1") .setJson(JSON.toJSONString(param)) .setTimeout(15, TimeUnit.SECONDS) .build() .doPost(); } catch(Exception e){ log.error("入库作业站"+pickSta.getStaNo()+"盘点再入库任务请求WMS===>>参数:" + param); log.error("stnToCrnStnPick2===>>盘点查库位入库接口失败", e); e.printStackTrace(); continue; wrkMast.setIoType(wrkMast.getIoType() - 50); wrkMast.setWrkSts(2L); wrkMast.setSourceStaNo(wrkMast.getStaNo()-1); wrkMast.setStaNo(staNo - 2); wrkMast.setLocNo(wrkMast.getSourceLocNo()); LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",wrkMast.getLocNo())); if(locMast.getLocSts().equals("P")){ locMast.setLocSts("Q"); locMastService.updateById(locMast); } log.info("入库作业站"+pickSta.getStaNo()+"盘点再入库任务请求WMS===>>参数:" + param); log.info("入库作业站"+pickSta.getStaNo()+"下发盘点再入库任务请求WMS返回结果===>>" + response); if(response.equals("")) { continue; } JSONObject jsonObject = JSON.parseObject(response); // LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, pickSta.getLed()); Integer code = jsonObject.getInteger("code"); if (code == 200) { StartupDto dto = jsonObject.getObject("data", StartupDto.class); if (Cools.isEmpty(dto) || Cools.isEmpty(dto.getStaNo())) { log.error("任务号"+wrkMast.getWrkNo()+"盘点再入库查询库位失败===>>" + jsonObject.toJSONString()); } else { log.info("任务号"+wrkMast.getWrkNo()+"盘点再入库查询库位成功===>>" + jsonObject.toJSONString()); try { // 更新站点信息 且 下发plc命令 staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo(dto.getStaNo().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false,1096); if (wrkMastService.updateById(wrkMast)) { try { // 更新站点信息 且 下发plc命令 staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo((short)(wrkMast.getSourceStaNo() - 1)); devpThread.setPakMk(staProtocol.getSiteId(), false,9998); // ledThread.errorReset(); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { log.error("发布命令至输送线队列失败!!! [plc编号:{}]", devp.getId()); } log.info("任务号"+wrkMast.getWrkNo()+"盘点/拣料再入库任务下发成功===>>" + staProtocol); } catch (Exception e) { log.error("盘点再入库失败===>>" + e); e.printStackTrace(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { log.error("发布命令至输送线队列失败!!! [plc编号:{}]", devp.getId()); } log.info("任务号"+wrkMast.getWrkNo()+"盘点/拣料再入库任务下发成功===>>" + staProtocol); } catch (Exception e) { log.error("盘点再入库失败===>>" + e); e.printStackTrace(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); } } else { log.error("请求接口失败!!!url:{};request:{};response:{}", wmsUrl + "/rpc/pakin2/loc/v1", JSON.toJSONString(param), response); } } catch (Exception e) { log.error("stnToCrnStnPick2===>>fail", e); src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -180,52 +180,44 @@ // 2. 保存WrkMast WrkMast wrkMast = new WrkMast(); int workNo = getWorkNo(0); if(param.getIoType() == 2 || param.getIoType() == 12){ wrkMast.setWrkNo(workNo); wrkMast.setUserNo(param.getTaskNo()); wrkMast.setIoType(param.getIoType() != 2?10:1); wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0); wrkMast.setBarcode(param.getBarcode()); wrkMast.setMemo(param.getMemo()); wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint())); wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint())); wrkMast.setLocNo(param.getTargetLocNo()); wrkMast.setSourceLocNo(param.getSourceLocNo()); }else if(param.getIoType() == 22 || param.getIoType() == 32){ wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode",param.getBarcode())); wrkMast.setWrkSts(param.getIoType() != 32 ? 53L: 57L); wrkMast.setWrkNo(workNo); wrkMast.setUserNo(param.getTaskNo()); wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0); wrkMast.setBarcode(param.getBarcode()); wrkMast.setMemo(param.getMemo()); wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint())); wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint())); wrkMast.setLocNo(param.getTargetLocNo()); wrkMast.setSourceLocNo(param.getSourceLocNo()); }else if(param.getIoType() == 3){ wrkMast.setWrkNo(workNo); wrkMast.setUserNo(param.getTaskNo()); Integer sourceStaNo = (param.getStartPoint() == null || param.getStartPoint().isEmpty()) ? null : Integer.valueOf(param.getStartPoint()); Integer targetStaNo = (param.getTargetPoint() == null || param.getTargetPoint().isEmpty()) ? null : Integer.valueOf(param.getTargetPoint()); if (param.getIoType() == 2 || param.getIoType() == 12) { wrkMast.setIoType(param.getIoType() != 2 ? 10 : 1); } else if (param.getIoType() == 22 || param.getIoType() == 32) { wrkMast = wrkMastService.selectOne( new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode()) ); wrkMast.setWrkSts(param.getIoType() != 32 ? 53L : 57L); } else if (param.getIoType() == 3) { wrkMast.setEmptyMk("N"); wrkMast.setIoType(11); wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 12.0); wrkMast.setBarcode(param.getBarcode()); wrkMast.setMemo(param.getMemo()); wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint())); wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint())); wrkMast.setLocNo(param.getTargetLocNo()); wrkMast.setSourceLocNo(param.getSourceLocNo()); }else{ wrkMast.setWrkNo(workNo); wrkMast.setUserNo(param.getTaskNo()); } else { wrkMast.setIoType(ioType); wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0); wrkMast.setBarcode(param.getBarcode()); wrkMast.setMemo(param.getMemo()); wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint())); wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint())); wrkMast.setLocNo(param.getTargetLocNo()); wrkMast.setSourceLocNo(param.getSourceLocNo()); } /* 公共字段 */ wrkMast.setWrkNo(workNo); wrkMast.setUserNo(param.getTaskNo()); wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0); wrkMast.setBarcode(param.getBarcode()); wrkMast.setMemo(param.getMemo()); wrkMast.setSourceStaNo(sourceStaNo); wrkMast.setStaNo(targetStaNo); wrkMast.setLocNo(param.getTargetLocNo()); wrkMast.setSourceLocNo(param.getSourceLocNo()); if(Inbound){ wrkMast.setWrkSts(2L); @@ -268,7 +260,7 @@ } // 3. 保存WrkDetl if (param.getDetlList() != null && !param.getDetlList().isEmpty()) { if (param.getDetlList() != null && !param.getDetlList().isEmpty() && param.getIoType()!=3) { for (TaskCreateParam.Detl detl : param.getDetlList()) { WrkDetl wrkDetl = new WrkDetl(); wrkDetl.setWrkNo(wrkMast.getWrkNo()); src/main/java/com/zy/core/MainProcess.java
@@ -58,7 +58,7 @@ // continue; // } //盘点拣料再入库 // mainService.stnToCrnStnPick(); mainService.stnToCrnStnPick(); // 入库 ===>> 入库站到堆垛机站,根据条码扫描生成入库工作档 mainService.generateStoreWrkFile(); // 组托 src/main/java/com/zy/core/thread/RgvThread.java
@@ -415,6 +415,7 @@ RgvErrCache.updateRgvErr(slave.getId(),errorRgv); break; } Thread.sleep(1000); } if (taskProtocol.getTargetPosition()<=rgvProtocol.getRgvPos()+50 && taskProtocol.getTargetPosition()>=rgvProtocol.getRgvPos()-50){ src/main/resources/license.licBinary files differ
src/main/resources/mapper/WrkMastMapper.xml
@@ -119,7 +119,9 @@ <select id="selectPakInStep5" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where sta_no=#{staNo} and wrk_sts = 14 and io_type>100 and sheet_no!=#{sheetNo} </select> <select id="selectPakInStep6" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where barcode=#{barcode} and wrk_sts = 14 </select> <select id="selectPakInStep12" resultMap="BaseResultMap"> select * from dbo.asr_wrk_mast where wrk_sts=2 and crn_no=#{crnNo} and (io_type=1 or io_type=10 or io_type=53 or io_type=54 or io_type=57) order by io_pri desc,io_time,wrk_no ASC </select>