#
LSH
2023-06-28 1f62eee8e144988e42f3d0ba2e926d056c01f929
#
4个文件已修改
56 ■■■■ 已修改文件
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/utils/RouteUtils.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WrkMastMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | 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>