src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/WrkMastMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -47,7 +47,7 @@ // 出库第二步,从堆垛机出库站到目标出库站,堆垛机出库站有物时执行 // @Select("select top 1 * from dbo.asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=12 and io_type>100 order by io_pri desc,io_time desc,wrk_no ASC") WrkMast selectPakOutStep2(@Param("sourceStaNo")Integer sourceStaNo); WrkMast selectPakOutStep15(@Param("sourceStaNo")Integer sourceStaNo); // 库位移转工作档,在进行一次入出库作业后紧跟库位移转 // @Select("select top 1 * from dbo.asr_wrk_mast where wrk_sts=11 and (io_type=11 or io_type=110) and crn_no=#{crnNo} order by io_time,wrk_no") src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -428,7 +428,7 @@ } if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) { // 查询工作档 WrkMast wrkMast = wrkMastMapper.selectPakOutStep2(staProtocol.getSiteId()); WrkMast wrkMast = wrkMastMapper.selectPakOutStep15(staProtocol.getSiteId()); if (wrkMast == null) { continue; } @@ -457,14 +457,14 @@ continue; } // 更新工作档状态为14失败 wrkMast.setWrkSts(14L); // 更新工作档状态为 16.出库完成 wrkMast.setWrkSts(16L); wrkMast.setCrnEndTime(new Date()); if (wrkMastMapper.updateById(wrkMast) != 0) { // 复位堆垛机 crnThread.setResetFlag(true); } else { log.error("更新工作档的工作状态为14失败!!! [工作号:{}]", wrkMast.getWrkNo()); log.error("更新工作档的工作状态为 16.出库完成 失败!!! [工作号:{}]", wrkMast.getWrkNo()); } } @@ -905,6 +905,12 @@ return; } // todo // 最外层库位,直接堆垛机出库 if (locMastService.isOutMost(wrkMast.getLocNo())) { // 1.堆垛机开始移动 CrnCommand crnCommand = new CrnCommand(); crnCommand.setCrnNo(slave.getId()); // 堆垛机编号 @@ -920,15 +926,30 @@ if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) { log.error("堆垛机命令下发失败,堆垛机号={},任务数据={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); } else { // 修改工作档状态 11.生成出库ID => 12.吊车出库中 // 修改工作档状态 11.生成出库ID => 15.吊车出库中 Date now = new Date(); wrkMast.setWrkSts(12L); wrkMast.setWrkSts(15L); wrkMast.setCrnStrTime(now); wrkMast.setModiTime(now); if (wrkMastMapper.updateById(wrkMast) == 0) { log.error("修改工作档状态 11.生成出库ID => 12.吊车出库中 失败!!,工作号={}", wrkMast.getWrkNo()); log.error("修改工作档状态 11.生成出库ID => 15.吊车出库中 失败!!,工作号={}", wrkMast.getWrkNo()); } } } else { } } } } @@ -1059,7 +1080,7 @@ continue; } // 入库 + 库位转移 if (wrkMast.getWrkSts() == 7 || (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11)){ if (wrkMast.getWrkSts() == 7 || (wrkMast.getWrkSts() == 15 && wrkMast.getIoType() == 11)){ // 判断是否需要小车入库 if (locMastService.isOutMost(wrkMast.getLocNo())) { // ==> 9.入库完成 src/main/resources/mapper/WrkMastMapper.xml
@@ -112,8 +112,8 @@ select top 1 * from dbo.asr_wrk_mast where crn_no=#{crnNo} and source_sta_no=#{sourceStaNo} and wrk_sts=11 and io_type>100 order by io_pri desc,io_time,wrk_no asc </select> <select id="selectPakOutStep2" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=12 and io_type>100 order by io_pri desc,io_time desc,wrk_no ASC <select id="selectPakOutStep15" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=15 and io_type>100 order by io_pri desc,io_time desc,wrk_no ASC </select> <select id="selectLocMove" resultMap="BaseResultMap">