自动化立体仓库 - WCS系统
999
zhangc
7 天以前 1ae96bb74480c3deb4f2273e5800a7bc7e82feb2
999
3个文件已修改
69 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WrkMastMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | 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
@@ -701,9 +701,9 @@
                        }
                        // 更新工作档状态为14失败
                        if(crnStn.getStaNo()==1035){
                        if (crnStn.getStaNo() == 1035) {
                            wrkMast.setWrkSts(107L);
                        }else {
                        } else {
                            wrkMast.setWrkSts(14L);
                        }
                        wrkMast.setCrnEndTime(new Date());
@@ -727,6 +727,60 @@
            }
        }
//        News.infoNoLog(""+mark+" - 0"+" - 堆垛机站出库到出库站  ===》执行完成");
    }
    /**
     * 堆垛库到四向库
     */
    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());
                    }
                }
            }
        }
    }
    /**
@@ -1061,9 +1115,9 @@
                if (staProtocol.isAutoing() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y")
                ) {
                    if (slave.getId() == 1 || slave.getId() == 2) {
                        if (staProtocol.isLoading() || staProtocol.getWorkNo() != 0 ) {
                        if (staProtocol.isLoading() || staProtocol.getWorkNo() != 0) {
                            //if (staProtocol.isLoading() || staProtocol.getWorkNo() != 0 || !staProtocol.isOutEnable()) {
                                continue;
                            continue;
                        }
                    }
                    // 命令下发区 --------------------------------------------------------------------------
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>