*
lsh
3 天以前 87787b6931c330dc9650d422fb3c32cff979c560
*
4个文件已修改
80 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/MainProcess.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/model/DevpSlave.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -4757,6 +4757,65 @@
        }
    }
    /*
     * agv任务生成  Empty
     * */
    public synchronized void agvTaskCreateR() {
        // 根据输送线plc遍历
        for (DevpSlave devp : slaveProperties.getDevp()) {
            // 遍历出库口
            for (DevpSlave.Sta inStaAgv : devp.getInStaAgv())  {
                // 获取入库站信息
                SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                StaProtocol staProtocol = devpThread.getStation().get(inStaAgv.getStaNo());
                if (staProtocol == null) {
                    continue;
                } else {
                    staProtocol = staProtocol.clone();
                }
                // 判断是否满足入库条件
                if (staProtocol.isLoading()){
                    continue;
                }
                if (staProtocol.isAutoing()) {
                    // 判断重复工作档
                    List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("sta_no", inStaAgv.getStaNo()));
                    if (!basAgvMastList.isEmpty()) {
                        News.info("{}号站点存在任务执行中,等待任务执行完毕!!!", inStaAgv.getStaNo());
                        continue;
                    }
                    // 任务生成区 --------------------------------------------------------------------------
                    BasAgvMast basAgvMast = new BasAgvMast();
                    try {
                        List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<LocMast>()
                                .eq("loc_sts", "D")
                                .ge("row1", 23)
                                .le("row1", 32)
                                .orderBy("io_time",true)
                        );
                        for (LocMast locMast : locMastList){
                            basAgvMast.setTaskNo(inStaAgv.getStaNo());
                            basAgvMast.setSourceLocNo(locMast.getLocNo());
                            basAgvMast.setStaNo(inStaAgv.getStaNo());
                            basAgvMast.setDevpId(devp.getId());
                            basAgvMast.setIoType(0);//AGV库位==》输送线站点  0
                            basAgvMastService.insert(basAgvMast);
                            break;
                        }
                    } catch (Exception e) {
                        News.error(JSON.toJSONString(e.getMessage()));
                    }
                }
            }
        }
    }
    /*
     * agv任务下发:AGV库位==》输送线站点
src/main/java/com/zy/core/MainProcess.java
@@ -199,8 +199,9 @@
                mainService.agvTaskAssignment3();//0===》1  输送线站点==》输送线站点  3
                mainService.agvTaskCreateFull();//任务生成
                mainService.agvTaskCreateEmpty();//任务生成
                mainService.agvTaskCreateFull();//任务生成  出库口==》AGV库位
                mainService.agvTaskCreateEmpty();//任务生成  出库口==》AGV库位
                mainService.agvTaskCreateR();//任务生成  AGV库位==》入库口
            } catch (Exception e) {
                e.printStackTrace();
src/main/java/com/zy/core/model/DevpSlave.java
@@ -20,6 +20,7 @@
    private Integer slot;
    private List<Sta> inSta = new ArrayList<>();
    private List<Sta> inStaAgv = new ArrayList<>();
    private List<Sta> emptyInSta = new ArrayList<>();
src/main/resources/application.yml
@@ -474,6 +474,10 @@
      staNo: 1041
      led: ${wcs-slave.led[0].id}
    outStaAgvFull[0]:
      staNo: 1041
      led: ${wcs-slave.led[0].id}
  # 输送线1
  devp[1]:
@@ -531,6 +535,17 @@
    outSta[1]:
      staNo: 4006
      led: ${wcs-slave.led[5].id}
    # 入库口1
    inStaAgv[0]:
      staNo: 2034
      led: ${wcs-slave.led[5].id}
    outStaAgvEmpty[0]:
      staNo: 2033
      led: ${wcs-slave.led[5].id}
    outStaAgvFull[0]:
      staNo: 4006
      led: ${wcs-slave.led[5].id}
#    outSta[2]:
#      staNo: 156
#      led: ${wcs-slave.led[4].id}