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
@@ -49,6 +49,9 @@ // @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 selectPakOutStep3(@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") WrkMast selectLocMove(@Param("crnNo")Integer crnNo); src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -730,6 +730,60 @@ } /** * 堆垛库到四向库 */ public synchronized void toSxk(Integer mark) { for (CrnSlave crnSlave : slaveProperties.getCrn()) { // 遍历堆垛机出库站 for (CrnSlave.CrnStn crnStn : crnSlave.getCrnOutStn()) { if (crnStn.getStaNo() != 1035) { continue; } // 获取堆垛机出库站信息 DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId()); StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo()); if (staProtocol == null) { continue; } else { staProtocol = staProtocol.clone(); } if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) { // 查询工作档 WrkMast wrkMast = wrkMastMapper.selectPakOutStep3(staProtocol.getSiteId()); if (wrkMast == null) { continue; } // 判断工作档条件 if (wrkMast.getIoType() < 100 || wrkMast.getStaNo() == null || wrkMast.getSourceStaNo() == null) { continue; } // 下发站点信息 staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue()); staProtocol.setStaNo(RouteUtils.CrnStaEnd(1031, 1135)); if (!MessageQueue.offer(SlaveType.Devp, crnStn.getDevpPlcId(), new Task(2, staProtocol))) { log.info(staProtocol.getWorkNo() + "," + staProtocol.getStaNo() + "输送线出库命令下发失败222"); continue; } else { log.info(staProtocol.getWorkNo() + "," + staProtocol.getStaNo() + "输送线出库命令下发成功222"); } // 更新工作档状态为14失败 wrkMast.setWrkSts(108L); wrkMast.setCrnEndTime(new Date()); if (wrkMastMapper.updateById(wrkMast) != 0) { log.error("转移至1031,工作号={}", wrkMast.getWrkNo()); } else { News.error("" + mark + " - 1" + " - 更新工作档的工作状态为107失败!!! [工作号:{}]", wrkMast.getWrkNo()); } } } } } /** * 入出库 ===>> 堆垛机入出库作业下发 */ public synchronized void crnIoExecute(Integer mark) { src/main/resources/mapper/WrkMastMapper.xml
@@ -114,6 +114,10 @@ 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> <select id="selectPakOutStep3" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=107 and io_type>100 order by io_pri desc,io_time desc,wrk_no ASC </select> <select id="selectLocMove" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where wrk_sts=11 and io_type=11 and crn_no=#{crnNo} order by io_time,wrk_no </select>