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/utils/RouteUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/WrkMastMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -177,18 +177,33 @@ /*================================================RGV任务绑定相关 ==================================================*/ /** * 查找是否存在RGV正在出库工作中的任务 * 查找是否存在入库工作中正在走向RGV的任务 * @param wrkNo * @return */ WrkMast selectRgvInSteWrkNo(@Param("wrkNo")Integer wrkNo); /** * 查找是否存在RGV正在出库工作中的任务 * 查找是否存在出库工作中正在走向RGV的任务 * @param wrkNo * @return */ WrkMast selectRgvOutSteWrkNo(@Param("wrkNo")Integer wrkNo); /** * 查找是否存在入库工作中等待RGV搬运的任务 * @param rgvNo * @return */ WrkMast selectRgvInSteNo(@Param("rgvNo")Integer rgvNo); /** * 查找是否存在出库工作中等待RGV搬运的任务 * @param rgvNo * @return */ WrkMast selectRgvOutSteNo(@Param("rgvNo")Integer rgvNo); /*================================================RGV任务绑定相关 ==================================================*/ } src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1332,6 +1332,9 @@ * 入库 ===>> RGV入库站到站 */ public synchronized void rgvInStn(RgvSlave slave, RgvProtocol rgvProtocol) { WrkMast wrkMast = wrkMastMapper.selectRgvInSteNo(slave.getId()); //查找工作状态为2(设备上走),且RGV入库接驳站符合的的入库工作档,提取出最多2笔 List<WrkMast> wrkMastTask = getRgvInTask(slave); if(wrkMastTask.size() <= 0){ src/main/java/com/zy/asrs/utils/RouteUtils.java
@@ -39,7 +39,8 @@ } // 获取当前小车未行走的路线 public static List<Integer> getRoute(boolean sign,Integer drop){ public static List<Integer> getRoute(Integer groupStart,Integer groupEnd){ boolean sign = groupStart < groupEnd; List<Integer> result = new ArrayList<>(); List<Integer> groupRoute = new ArrayList<>(); if (sign){ @@ -47,11 +48,15 @@ }else { groupRoute = TRACK_POSITION_REVERSE_SEQUENCE; } if (groupRoute.contains(drop)) { if (groupRoute.contains(groupStart) && groupRoute.contains(groupEnd)) { sign = false; for (Integer route : groupRoute) { if (route == drop){ if (route.equals(groupStart)){ sign=true; } if (route.equals(groupEnd)){ result.add(route); break; } if (sign){ result.add(route); @@ -60,9 +65,6 @@ }else { return null; } return result; } // 外侧方向的货位 优先入库方向/优先出库方向 ===>> 反之 src/main/resources/mapper/WrkMastMapper.xml
@@ -248,6 +248,26 @@ select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =24 and wrk_no=#{wrkNo} and rgv_no is null </select> <select id="selectRgvInSteNo" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =12 and rgv_no=#{rgvNo} <if test="rgvNo == 1"> order by rgv_dsta_no </if> <if test="rgvNo == 2"> order by rgv_dsta_no desc </if> </select> <select id="selectRgvOutSteNo" resultMap="BaseResultMap"> select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =24 and rgv_no=#{rgvNo} <if test="rgvNo == 1"> order by rgv_dsta_no </if> <if test="rgvNo == 2"> order by rgv_dsta_no desc </if> </select> <!-- ==============================================RGV任务绑定相关 ============================================== --> </mapper>