| | |
| | | import com.zy.common.model.enums.WrkChargeType; |
| | | import com.zy.common.service.CommonService; |
| | | import com.zy.core.DevpThread; |
| | | import com.zy.core.News; |
| | | import com.zy.core.cache.MessageQueue; |
| | | import com.zy.core.cache.OutputQueue; |
| | | import com.zy.core.cache.SlaveConnection; |
| | |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); |
| | | Map<String, Object> map1 = new HashMap<>(); |
| | | map1.put("floor", 1); |
| | | map1.put("modeVal", devpThread.charge0); |
| | | map1.put("modeDesc", devpThread.charge0?"充电中":"关闭"); |
| | | map1.put("modeVal", !devpThread.charge0); |
| | | map1.put("modeDesc", !devpThread.charge0?"充电中":"关闭"); |
| | | res.add(map1); |
| | | Map<String, Object> map2 = new HashMap<>(); |
| | | map2.put("floor", 2); |
| | | map2.put("modeVal", devpThread.charge1); |
| | | map2.put("modeDesc", devpThread.charge1?"充电中":"关闭"); |
| | | res.add(map2); |
| | | Map<String, Object> map3 = new HashMap<>(); |
| | | map3.put("floor", 3); |
| | | map3.put("modeVal", devpThread.charge2); |
| | | map3.put("modeDesc", devpThread.charge2?"充电中":"关闭"); |
| | | res.add(map3); |
| | | } |
| | | return R.ok().add(res); |
| | | } |
| | | |
| | | @PostMapping("/io/mode/action/site") |
| | | @ManagerAuth(memo = "充电控制") |
| | | public R ioModeAction(@RequestParam("floor") Integer floor, @RequestParam("charge") Boolean charge){ |
| | | if (null != wrkChargeService.selectWorking(null, WrkChargeType.charge)) { |
| | | return R.error("目前存在小车充电任务,请稍后再试"); |
| | | } |
| | | if (null != wrkChargeService.selectWorking(null, WrkChargeType.reset)) { |
| | | return R.error("目前存在小车复位任务,请稍后再试"); |
| | | } |
| | | if (charge) { |
| | | return R.ok(); |
| | | } |
| | | |
| | | SteChargeType steCharge = SteChargeType.get(floor); |
| | | assert steCharge != null; |
| | | Integer steNo = basSteService.hasCarOfLocNo(steCharge.locNo); |
| | | if (Cools.isEmpty(steNo)) { |
| | | return R.error(steNo + "号小车不在" + floor + "号充电桩,请检查小车定位"); |
| | | } |
| | | SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, steNo); |
| | | SteProtocol steProtocol = steThread.getSteProtocol(); |
| | | BasSte basSte = basSteService.selectById(steNo); |
| | | if (steProtocol.getMode() == 0) { |
| | | return R.error(steNo + "号小车离线,无法操作"); |
| | | } |
| | | if (!steProtocol.getStatusType().equals(SteStatusType.IDLE)) { |
| | | return R.error(steNo + "号小车不是空闲,无法操作"); |
| | | } |
| | | WrkCharge wrkCharge = wrkChargeService.selectWorking(steNo, WrkChargeType.reset); |
| | | if (wrkCharge == null) { |
| | | // 开始穿梭车复位任务 |
| | | wrkCharge = new WrkCharge(); |
| | | wrkCharge.setSteNo(steNo); |
| | | wrkCharge.setWrkNo(commonService.getChargeWorkNo(6)); |
| | | wrkCharge.setWrkSts(41L); // 41.小车准备复位 |
| | | wrkCharge.setCrnNo(2); // 固定2号堆垛机 |
| | | wrkCharge.setIoPri((double) 10); |
| | | wrkCharge.setSourceLocNo(steCharge.locNo); |
| | | wrkCharge.setLocNo(basSte.getIdleLoc()); |
| | | wrkCharge.setMemo("reset"); |
| | | wrkCharge.setAppeTime(new Date()); |
| | | if (!wrkChargeService.insert(wrkCharge)) { |
| | | log.error("保存{}号穿梭车复位任务失败!!!", steNo); |
| | | } |
| | | } |
| | | return R.ok(steNo + "号小车准备离开" + floor + "号充电桩"); |
| | | } |
| | | |
| | | @PostMapping("/table/site") |
| | |
| | | vo.setLoading(staProtocol.isLoading()?"Y":"N"); // 有物 |
| | | vo.setInEnable(staProtocol.isInEnable()?"Y":"N"); // 可入 |
| | | vo.setOutEnable(staProtocol.isOutEnable()?"Y":"N"); // 可出 |
| | | vo.setLiftArrival(staProtocol.isLiftArrival()?"Y":"N"); // 提升机到位信号 |
| | | vo.setShuttleTakeEnable(staProtocol.isShuttleTakeEnable()?"Y":"N"); // 穿梭车可取信号 |
| | | vo.setPakMk(staProtocol.isPakMk()?"Y":"N"); // 入库标记 |
| | | vo.setEmptyMk(staProtocol.isEmptyMk()?"Y":"N"); // 空板信号 |
| | | vo.setStaNo(staProtocol.getStaNo()); // 目标站 |