自动化立体仓库 - WMS系统
#
whycq
2024-05-07 8d589bc8baeadc9d29c2523cf766040a5f5e5995
src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -76,6 +76,23 @@
    }
    /*
    定时处理AGV工作档中工作状态为206.出库完成 且 (101.出库 || 110.空板出库)
     */
    @Scheduled(cron = "0/10 * * * * ? ")
    public void excuteCarryWrk2(){
        List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
                .eq("wrk_sts", 208)
                .andNew().eq("io_type",110)
                .or().eq("io_type",101));
        if(!Cools.isEmpty(agvWrkMastList)){
            agvWrkMastList.stream().forEach(agvWrkMast -> {
                ReturnT<String> returnT = agvWrkMastHandler.completedCarryWrk2(agvWrkMast);
            });
        }
    }
    /*
    putaway:上架
    定时处理AGV工作档中工作状态为201.生成入库任务ID 且(出库类型为 53.拣料再入库 || 1.入库 || 10.空板入库栽 || 57.盘点再入库)的数据
     */
@@ -117,8 +134,25 @@
                        .or().eq("io_type", 107)).getRecords();
        if(!Cools.isEmpty(agvWrkMastList)){
            List<String> devNos = new ArrayList<>();
            agvWrkMastList.forEach(agvWrkMast -> {
                try {
                    //过滤该批工作档中重复的出站点
                    if (devNos.contains(agvWrkMast.getLocNo())){
                        return;
                    }
                    devNos.add(agvWrkMast.getLocNo());
                    //检测当前工作任务中的站点是否已有有作业中的任务
                    AgvWrkMast agvWrkMastWorking = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>()
                            .eq("loc_no", agvWrkMast.getLocNo())
                            .ge("wrk_sts", 202L));
                    if(!Cools.isEmpty(agvWrkMastWorking)){
                        return;
                    }
                    agvWrkMastHandler.startPutWayWrk(agvWrkMast);
                } catch (IOException e) {
                    log.error(e.getMessage());
@@ -145,7 +179,7 @@
    /*
    自动生成空板出库任务
     */
    //@Scheduled(cron = "0/10 * * * * ? ")
    @Scheduled(cron = "0/10 * * * * ? ")
    public void autoEmptyOut(){
        boolean packageEmptyAutoOUt = Cools.eq("Y",Parameter.get().getPackageEmptyAutoOUt());
        boolean mateEmptyAutoOut = Cools.eq("Y",Parameter.get().getMateEmptyAutoOut());