| | |
| | | )); |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | boolean step1 = this.shuttleInExecuteStep1(wrkMast);//小车搬入库中 |
| | | Thread.sleep(100); |
| | | if (!step1) { |
| | | continue; |
| | | } |
| | |
| | | * 如需主方法执行continue,请返回false |
| | | * ps:返回值true并不代表该方法执行成功,返回值仅做标记用于主方法是否执行continue |
| | | */ |
| | | public boolean shuttleInExecuteStep1(WrkMast wrkMast) { |
| | | public synchronized boolean shuttleInExecuteStep1(WrkMast wrkMast) { |
| | | if (wrkMast.getWrkSts() == WrkStsType.INBOUND_LIFT_RUN_COMPLETE.sts) { |
| | | //获取目标站 |
| | | ForkLiftStaProtocol liftSta = ForkLiftUtils.getLiftStaByStaNo(wrkMast.getStaNo()); |
| | |
| | | )); |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | boolean step1 = this.shuttleOutExecuteStep1(wrkMast);//小车搬出库中 |
| | | Thread.sleep(100); |
| | | if (!step1) { |
| | | continue; |
| | | } |
| | |
| | | * 如需主方法执行continue,请返回false |
| | | * ps:返回值true并不代表该方法执行成功,返回值仅做标记用于主方法是否执行continue |
| | | */ |
| | | public boolean shuttleOutExecuteStep1(WrkMast wrkMast) { |
| | | public synchronized boolean shuttleOutExecuteStep1(WrkMast wrkMast) { |
| | | //101.生成出库任务 => 102.小车搬运中 |
| | | if (wrkMast.getWrkSts() == WrkStsType.NEW_OUTBOUND.sts) { |
| | | Integer liftNo = wrkMast.getLiftNo(); |
| | |
| | | wrkMast.setLiftNo(liftNo); |
| | | wrkMast.setModiTime(new Date()); |
| | | wrkMastService.updateById(wrkMast); |
| | | return false; |
| | | } |
| | | |
| | | ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, liftNo); |
| | |
| | | wrkMast.setWrkSts(WrkStsType.COMPLETE_OUTBOUND.sts); |
| | | wrkMast.setLiftNo(null);//释放提升机 |
| | | forkLiftThread.setSyncTaskNo(0); |
| | | redisUtil.set(RedisKeyType.FORK_LIFT_PUT_COMPLETE.key + forkLiftProtocol.getLiftNo(), wrkMast.getWmsWrkNo(), 60 * 3); |
| | | } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_LIFT_RUN.sts) { |
| | | //306.提升机搬运中 ==> 307.提升机搬运完成 |
| | | wrkMast.setWrkSts(WrkStsType.MOVE_LIFT_RUN_COMPLETE.sts); |
| | | forkLiftThread.setSyncTaskNo(0); |
| | | } |
| | | |
| | | wrkMast.setModiTime(new Date()); |
| | | if (wrkMastService.updateById(wrkMast)) { |
| | | forkLiftThread.reset(); |