|  |  |  | 
|---|
|  |  |  | private SiteController siteController; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void generateStoreWrkFile1() throws IOException, InterruptedException { | 
|---|
|  |  |  | public synchronized void generateStoreWrkFile1() throws IOException, InterruptedException { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | // 根据输送线plc遍历 | 
|---|
|  |  |  | for (DevpSlave devp : slaveProperties.getDevp()) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void generateStoreWrkFile() throws IOException, InterruptedException { | 
|---|
|  |  |  | public synchronized void generateStoreWrkFile() throws IOException, InterruptedException { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | // 根据输送线plc遍历 | 
|---|
|  |  |  | for (DevpSlave devp : slaveProperties.getDevp()) { | 
|---|
|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 堆垛机站出库到出库站 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void crnStnToOutStn() { | 
|---|
|  |  |  | public synchronized void crnStnToOutStn() { | 
|---|
|  |  |  | for (CrnSlave crnSlave : slaveProperties.getCrn()) { | 
|---|
|  |  |  | // 遍历堆垛机出库站 | 
|---|
|  |  |  | for (CrnSlave.CrnStn crnStn : crnSlave.getCrnOutStn()) { | 
|---|
|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 入库  ===>>  堆垛机站到库位 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void crnStnToLoc(CrnSlave slave, CrnProtocol crnProtocol) throws IOException { | 
|---|
|  |  |  | public synchronized void crnStnToLoc(CrnSlave slave, CrnProtocol crnProtocol) throws IOException { | 
|---|
|  |  |  | for (CrnSlave.CrnStn crnStn : slave.getCrnInStn()) { | 
|---|
|  |  |  | List<StaDesc> staDescs = staDescMapper.selectList(new EntityWrapper<StaDesc>().eq("crn_no", slave.getId()).eq("crn_stn", crnStn.getStaNo())); | 
|---|
|  |  |  | for (StaDesc staDesc : staDescs) { | 
|---|
|  |  |  | 
|---|
|  |  |  | * 出库  ===>>  库位到堆垛机站 | 
|---|
|  |  |  | * 2022-06-09 TQS修改,查询工作档LIST,遍历下发,防止第一个任务堵塞出库 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void locToCrnStn(CrnSlave slave, CrnProtocol crnProtocol) { | 
|---|
|  |  |  | public synchronized void  locToCrnStn(CrnSlave slave, CrnProtocol crnProtocol) { | 
|---|
|  |  |  | List<TaskWrk> taskWrksInitial = taskWrkMapper.selectPakOut(slave.getId(), null); | 
|---|
|  |  |  | if (taskWrksInitial.size() == 0) { | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 库位移转 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void locToLoc(CrnSlave slave, CrnProtocol crnProtocol) { | 
|---|
|  |  |  | public synchronized void locToLoc(CrnSlave slave, CrnProtocol crnProtocol) { | 
|---|
|  |  |  | for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) { | 
|---|
|  |  |  | // 获取工作状态为11(生成出库ID)的移库工作档 | 
|---|
|  |  |  | List<TaskWrk> taskWrks = taskWrkMapper.selectList(new EntityWrapper<TaskWrk>() | 
|---|
|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 执行对工作档的完成操作 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void storeFinished() throws InterruptedException { | 
|---|
|  |  |  | public synchronized void storeFinished() throws InterruptedException { | 
|---|
|  |  |  | for (CrnSlave crn : slaveProperties.getCrn()) { | 
|---|
|  |  |  | // 获取堆垛机信息 | 
|---|
|  |  |  | CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId()); | 
|---|
|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 堆垛机异常信息记录 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void recCrnErr() { | 
|---|
|  |  |  | public synchronized void recCrnErr() { | 
|---|
|  |  |  | Date now = new Date(); | 
|---|
|  |  |  | for (CrnSlave crn : slaveProperties.getCrn()) { | 
|---|
|  |  |  | // 获取堆垛机信息 | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //自动派发任务 | 
|---|
|  |  |  | public void autoDistribute() { | 
|---|
|  |  |  | public synchronized void autoDistribute() { | 
|---|
|  |  |  | Config config = configService.selectByCode("autoDistribute"); | 
|---|
|  |  |  | if (config == null) { | 
|---|
|  |  |  | return; | 
|---|