From fcb71b8fc63f74cd00d3faa76c73f4c5566ee352 Mon Sep 17 00:00:00 2001 From: zc <zc@123> Date: 星期三, 07 五月 2025 23:23:09 +0800 Subject: [PATCH] 解决提升机在本层,而没有锁提升机的问题 --- src/main/java/com/zy/asrs/controller/TVController.java | 188 ++++++++++++++++++++++------------------------ 1 files changed, 91 insertions(+), 97 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/TVController.java b/src/main/java/com/zy/asrs/controller/TVController.java index 889d1c7..87e341d 100644 --- a/src/main/java/com/zy/asrs/controller/TVController.java +++ b/src/main/java/com/zy/asrs/controller/TVController.java @@ -1,30 +1,30 @@ package com.zy.asrs.controller; -import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Arith; import com.core.common.Cools; import com.core.common.R; import com.zy.asrs.domain.dto.AxisBean; -import com.zy.asrs.domain.dto.WorkChartAxis; import com.zy.asrs.domain.dto.LocChartPie; -import com.zy.asrs.entity.BasDevp; -import com.zy.asrs.entity.BasShuttle; +import com.zy.asrs.domain.dto.WorkChartAxis; import com.zy.asrs.entity.BasShuttleErr; -import com.zy.asrs.entity.WrkMast; import com.zy.asrs.mapper.ReportQueryMapper; import com.zy.asrs.service.BasDevpService; import com.zy.asrs.service.BasShuttleErrService; import com.zy.asrs.service.BasShuttleService; import com.zy.asrs.service.WrkMastService; import com.zy.common.service.CommonService; +import com.zy.common.utils.RedisUtil; import com.zy.core.cache.SlaveConnection; import com.zy.core.enums.SlaveType; +import com.zy.core.model.LedSlave; import com.zy.core.model.ShuttleSlave; -import com.zy.core.model.command.LedCommand; import com.zy.core.model.protocol.ShuttleProtocol; import com.zy.core.properties.SlaveProperties; import com.zy.core.thread.ShuttleThread; +import com.zy.core.thread.impl.NormalLedThread; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -36,6 +36,7 @@ /** * Created by vincent on 2020/11/16 */ +@Slf4j @RestController @RequestMapping("/monitor") public class TVController { @@ -55,6 +56,11 @@ private SlaveProperties slaveProperties; @Autowired private BasShuttleErrService basShuttleErrService; + + @Autowired + private RedisUtil redisUtil; + @Value("${asrs.wmsUrl}") + private String wmsUrl; /** * 鑾峰彇褰撳墠鏃堕棿 @@ -210,105 +216,91 @@ /** * 鑾峰彇鍏朵粬淇℃伅 */ -// @GetMapping("/led") -// public R monitorLed(@RequestParam("ledId") Integer ledId) { -// BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", ledId)); -// if (Cools.isEmpty(basDevp)) { -// return R.ok(); -// } -// WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo())); -// if (Cools.isEmpty(wrkMast)) { -// return R.ok(); -// } -// List<LedCommand> commands = new ArrayList<>(); -// -// // 缁勮鍛戒护 -// LedCommand ledCommand = new LedCommand(); -// ledCommand.setWorkNo(wrkMast.getWrkNo()); -// ledCommand.setIoType(wrkMast.getIoType()); -// // 鍑哄簱妯″紡 -// switch (wrkMast.getIoType()) { -// case 1: -// ledCommand.setTitle("鍏ㄦ澘鍏ュ簱"); -// break; -// case 10: -// ledCommand.setTitle("绌烘澘鍏ュ簱"); -// break; -// case 101: -// ledCommand.setTitle("鍏ㄦ澘鍑哄簱"); -// break; -// case 103: -// ledCommand.setTitle("鎷f枡鍑哄簱"); -// break; -// case 104: -// ledCommand.setTitle("骞舵澘鍑哄簱"); -// break; -// case 107: -// ledCommand.setTitle("鐩樼偣鍑哄簱"); -// break; -// case 110: -// ledCommand.setTitle("绌烘澘鍑哄簱"); -// ledCommand.setEmptyMk(true); -// break; -// case 53: -// ledCommand.setTitle("鎷f枡鍏ュ簱"); -// break; -// case 57: -// ledCommand.setTitle("鐩樼偣鍏ュ簱"); -// break; -// case 54: -// ledCommand.setTitle("骞舵澘鍏ュ簱"); -// break; -// default: -// break; -// } -// ledCommand.setSourceLocNo(wrkMast.getSourceLocNo()); -// ledCommand.setLocNo(wrkMast.getLocNo()); -// ledCommand.setStaNo(wrkMast.getStaNo()); -//// ledCommand.setSourceStaNo(wrkMast.getSourceStaNo()); -// if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) { -// List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); -// try { -// if (wrkMast.getIoType() > 100) { -// for (WrkDetl wrkDetl : wrkDetls) { -// LocDetl locDetl = locDetlService.selectMatnrSpecs(wrkDetl.getMatnr(), wrkDetl.getSpecs(), wrkMast.getSourceLocNo()); -// wrkDetl.setWeight(locDetl.getAnfme()); -// } -// } else { -// for (WrkDetl wrkDetl : wrkDetls) { -// wrkDetl.setWeight(wrkDetl.getAnfme()); -// } -// } -// } catch (Exception e) { -//// log.error("宸ヤ綔妗f鏄庣粏杈撳叆鐢佃鏈哄け璐�1锛氬紓甯镐俊鎭�==銆�"+e); -// } -// wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme(), wrkDetl.getWeight(), wrkDetl.getSpecs(), wrkDetl.getModel()))); -// } -// commands.add(ledCommand); -// return R.ok().add(commands); -// } + @GetMapping("/led") + public R monitorLed(@RequestParam("ledId") Integer ledId) { + int dev_no1 = 1011; + int dev_no2 = 1012; + int dev_no3 = 1015; + if (ledId == 1) { + dev_no1 = 1011; + dev_no2 = 1012; + } else if (ledId == 2) { + dev_no1 = 1013; + dev_no2 = 1014; + dev_no3 = 1015; + } else if (ledId == 3) { + dev_no1 = 1021; + dev_no2 = 1022; + dev_no3 = 1023; + } else if (ledId == 4) { + dev_no1 = 1024; + dev_no2 = 1025; + dev_no3 = 1026; + } + Object o1 = redisUtil.get("LED_" + dev_no1); + Object o2 = redisUtil.get("LED_" + dev_no2); + Object o3 = redisUtil.get("LED_" + dev_no3); + if (o1 != null) { + //log.info("鐢佃鏈烘樉绀�1锛歿}", JSONObject.toJSONString(o1)); + return R.ok().add(o1); + } else if (o2 != null) { + //log.info("鐢佃鏈烘樉绀�2锛歿}", JSONObject.toJSONString(o2)); + return R.ok().add(o2); + } else if (o3 != null) { + //log.info("鐢佃鏈烘樉绀�3锛歿}", JSONObject.toJSONString(o3)); + return R.ok().add(o3); + } + return R.ok(); + + } /** * 寮傚父閫氱煡 */ @GetMapping("/led/error") public R monitorLedError(@RequestParam("ledId") Integer ledId) { - BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", ledId)); - if (Cools.isEmpty(basDevp)) { - return R.ok(); + String errorMsg = ""; + for (LedSlave slave : slaveProperties.getLed()) { + if (slave.getId() == ledId) { + NormalLedThread ledThread = (NormalLedThread) SlaveConnection.get(SlaveType.Led, slave.getId()); + if (null != ledThread) { + errorMsg = ledThread.getErrorMsg().toString(); + } + } } - if (Cools.isEmpty(basDevp.getArea())) { - return R.ok(); - } - if (basDevp.getLoading().equals("N")) { - basDevp.setArea(""); - basDevpService.updateById(basDevp); - return R.ok(); - } - String errorMsg = basDevp.getArea(); - return R.ok().add(errorMsg); } + /** + * 寮傚父閫氱煡 + */ +// @GetMapping("/led/error") +// public R monitorLedError(@RequestParam("ledId") Integer ledId) { +// int dev_no = 1012; +// if (ledId == 1) { +// dev_no = 1012; +// } else if (ledId == 2) { +// dev_no = 1014; +// } else if (ledId == 3) { +// dev_no = 1022; +// } else if (ledId == 4) { +// dev_no = 1025; +// } +// BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", dev_no)); +// if (Cools.isEmpty(basDevp)) { +// return R.ok(); +// } +// if (Cools.isEmpty(basDevp.getArea())) { +// return R.ok(); +// } +// if (basDevp.getLoading().equals("N")) { +// basDevp.setArea(""); +// basDevpService.updateById(basDevp); +// return R.ok(); +// } +// String errorMsg = basDevp.getArea(); +// +// return R.ok().add(errorMsg); +// } /** * 璁惧寮傚父閫氱煡 @@ -316,7 +308,6 @@ @GetMapping("/device/error") public R monitorDeviceError() { ArrayList<HashMap<String, Object>> list = new ArrayList<>(); - List<BasShuttle> basCrnpLiset = shuttleService.selectList(new EntityWrapper<BasShuttle>()); for (ShuttleSlave shuttleSlave : slaveProperties.getShuttle()) { // 鑾峰彇鍥涘悜绌挎杞︿俊鎭� @@ -329,6 +320,9 @@ continue; } HashMap<String, Object> map = new HashMap<>(); + if (Cools.isEmpty(shuttleProtocol.getErrorCode())) { + continue; + } int i = Integer.parseInt(shuttleProtocol.getErrorCode()); if (i > 0) { BasShuttleErr basShuttleErr = basShuttleErrService.queryByCode(i); -- Gitblit v1.9.1