From a56259ffabbdd3dba89d60e4da2c06a1b88e6220 Mon Sep 17 00:00:00 2001 From: ZY <zc857179121@qq.com> Date: 星期六, 10 五月 2025 14:57:20 +0800 Subject: [PATCH] 123 --- src/main/java/com/zy/asrs/controller/DevopsController.java | 155 ++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 116 insertions(+), 39 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/DevopsController.java b/src/main/java/com/zy/asrs/controller/DevopsController.java index 115bc3f..0af0a64 100644 --- a/src/main/java/com/zy/asrs/controller/DevopsController.java +++ b/src/main/java/com/zy/asrs/controller/DevopsController.java @@ -6,7 +6,6 @@ import com.core.common.R; import com.zy.asrs.domain.devops.DevopsMessage; import com.zy.asrs.domain.devops.ErrorType; -import com.zy.asrs.domain.vo.SiteTableVo; import com.zy.asrs.entity.BasDevp; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.mapper.WrkMastMapper; @@ -20,7 +19,6 @@ import com.zy.core.enums.CrnStatusType; import com.zy.core.enums.SlaveType; import com.zy.core.model.CrnSlave; -import com.zy.core.model.DevpSlave; import com.zy.core.model.protocol.CrnProtocol; import com.zy.core.model.protocol.StaProtocol; import com.zy.core.properties.SlaveProperties; @@ -30,9 +28,7 @@ import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; @RestController @RequestMapping("/devops") @@ -59,15 +55,26 @@ //鍏堟煡璇㈠爢鍨涙満鏄惁鍦ㄥ伐浣� WrkMast working = wrkMastMapper.selectWorking(crnSlave.getId()); for (WrkMast wrkMast : wrkMasts) { + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, wrkMast.getCrnNo()); + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol == null) { + crnProtocol = new CrnProtocol(); + } devopsMessage = new DevopsMessage(); devopsMessage.setWrkNo(wrkMast.getWrkNo()); if (working != null) { //鍦ㄥ伐浣滐紝鍒欏垽鏂槸鍚︽湭褰撳墠杩欐潯 if (working.getWrkNo().equals(wrkMast.getWrkNo())) { - devopsMessage.setError("璇ュ伐浣滄。姝e湪鍑哄簱锛岃绋嶅悗"); + if (crnProtocol.getTaskNo().intValue() == working.getWrkNo()) { + devopsMessage.setError("璇ュ伐浣滄。姝e湪鎵ц锛岃绋嶅悗"); + } else { + devopsMessage.setError("璇ュ伐浣滄。鐘舵�佷笉瀵癸紝涓庡爢鍨涙満鐨勫伐浣滃彿涓嶅尮閰�"); + devopsMessage.setMethod("缁撳悎浠诲姟鎯呭喌杩涜鎿嶄綔;濡傛灉瀹為檯宸插畬鎴愶紝灏卞皢宸ヤ綔妗e畬鎴�;濡傛灉鏈畬鎴愶紝鍒欒皟鏁村伐浣滄。鐘舵��"); + } } else { - devopsMessage.setError(working.getWrkNo() + "鍙峰伐浣滄。姝e湪鍑哄簱锛岃绋嶅悗"); + devopsMessage.setError(working.getWrkNo() + "鍙峰伐浣滄。姝e湪鎵ц锛岃绋嶅悗"); } + devopsMessages.add(devopsMessage); continue; } DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); @@ -75,23 +82,21 @@ List<ErrorType> staError = isStaError(staProtocol, wrkMast); for (ErrorType type : staError) { if (!Cools.isEmpty(devopsMessage.getError())) { - devopsMessage.setError(devopsMessage.getError() + "\n" + type.getDesc()); - devopsMessage.setMethod(devopsMessage.getMethod() + "\n" + type.getMethod()); + devopsMessage.setError(devopsMessage.getError() + ";" + type.getDesc()); + devopsMessage.setMethod(devopsMessage.getMethod() + ";" + type.getMethod()); } else { - devopsMessage.setError(type.getDesc()+ ";"); - devopsMessage.setMethod(type.getMethod()+ ";" ); + devopsMessage.setError(type.getDesc()); + devopsMessage.setMethod(type.getMethod()); } } - CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, wrkMast.getCrnNo()); - CrnProtocol crnProtocol = crnThread.getCrnProtocol(); List<ErrorType> crnError = isCrnError(crnProtocol, wrkMast); for (ErrorType type : crnError) { if (!Cools.isEmpty(devopsMessage.getError())) { - devopsMessage.setError(devopsMessage.getError() + "\n" + type.getDesc()); - devopsMessage.setMethod(devopsMessage.getMethod() + "\n" + type.getMethod()); + devopsMessage.setError(devopsMessage.getError() + ";" + type.getDesc()); + devopsMessage.setMethod(devopsMessage.getMethod() + ";" + type.getMethod()); } else { - devopsMessage.setError(type.getDesc()+ ";"); - devopsMessage.setMethod(type.getMethod()+ ";"); + devopsMessage.setError(type.getDesc()); + devopsMessage.setMethod(type.getMethod()); } } devopsMessages.add(devopsMessage); @@ -174,32 +179,104 @@ @PostMapping("/site/list") @ManagerAuth(memo = "绔欑偣淇℃伅琛�") public R siteTable() { - List<SiteTableVo> list = new ArrayList<>(); - // 鍐呭瓨鏁版嵁 - Map<Integer, StaProtocol> station = new HashMap<>(); - for (DevpSlave devp : slaveProperties.getDevp()) { - DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); - station.putAll(devpThread.getStation()); - } + List<DevopsMessage> devopsMessages = new ArrayList<>(); + DevopsMessage devopsMessage; + List<Integer> outSta = slaveProperties.getOutSta(); + List<Integer> inSta = slaveProperties.getInSta(); // 鎸佷箙鏁版嵁 List<BasDevp> basDevps = basDevpService.selectList(new EntityWrapper<BasDevp>().orderBy("dev_no")); - for (BasDevp devp : basDevps) { - StaProtocol staProtocol = station.get(devp.getDevNo()); - if (null == staProtocol) { - continue; + for (Integer out : outSta) { + for (BasDevp devp : basDevps) { + if (devp.getDevNo().equals(out)) { + devopsMessage = new DevopsMessage(); + devopsMessage.setStaNo(out); + devopsMessage.setType("鍑哄簱绔欑偣"); + if (devp.getLoading().equalsIgnoreCase("Y")) { + devopsMessage.setError(ErrorType.YOUWU.getDesc()); + devopsMessage.setMethod("璇峰皢鐗╂枡鎸蛋锛屾墠鑳藉嚭搴�"); + } else { + List<ErrorType> crnError = isOutStaError(devp); + for (ErrorType type : crnError) { + if (!Cools.isEmpty(devopsMessage.getError())) { + devopsMessage.setError(devopsMessage.getError() + ";" + type.getDesc()); + devopsMessage.setMethod(devopsMessage.getMethod() + ";" + type.getMethod()); + } else { + devopsMessage.setError(type.getDesc()); + devopsMessage.setMethod(type.getMethod()); + } + } + } + devopsMessages.add(devopsMessage); + } } - SiteTableVo vo = new SiteTableVo(); - vo.setDevNo(devp.getDevNo()); // 绔欑偣缂栧彿 - vo.setWorkNo(staProtocol.getWorkNo()); // 宸ヤ綔鍙� - vo.setAutoing(staProtocol.isAutoing() ? "Y" : "N"); // 鑷姩 - vo.setLoading(staProtocol.isLoading() ? "Y" : "N"); // 鏈夌墿 - vo.setInEnable(staProtocol.isInEnable() ? "Y" : "N"); // 鍙叆 - vo.setOutEnable(staProtocol.isOutEnable() ? "Y" : "N"); // 鍙嚭 - vo.setPakMk(staProtocol.isPakMk()?"Y":"N"); // 鍏ュ簱鏍囪 - vo.setStaNo(staProtocol.getStaNo()); // 鐩爣绔� - vo.setEmptyMk(staProtocol.isEmptyMk()?"Y":"N"); // 绌烘澘淇″彿 - list.add(vo); } - return R.ok().add(list); + for (Integer in : inSta) { + for (BasDevp devp : basDevps) { + if (devp.getDevNo().equals(in)) { + devopsMessage = new DevopsMessage(); + devopsMessage.setStaNo(in); + devopsMessage.setType("鍏ュ簱绔欑偣"); + if (devp.getLoading().equalsIgnoreCase("Y")) { + List<ErrorType> crnError = isInStaError(devp); + for (ErrorType type : crnError) { + if (!Cools.isEmpty(devopsMessage.getError())) { + devopsMessage.setError(devopsMessage.getError() + ";" + type.getDesc()); + devopsMessage.setMethod(devopsMessage.getMethod() + ";" + type.getMethod()); + } else { + devopsMessage.setError(type.getDesc()); + devopsMessage.setMethod(type.getMethod()); + } + } + } else { + devopsMessage.setError(ErrorType.WUWU.getDesc()); + devopsMessage.setMethod(ErrorType.WUWU.getMethod()); + } + devopsMessages.add(devopsMessage); + } + } + } + return R.ok().add(devopsMessages); + } + + private List<ErrorType> isOutStaError(BasDevp devp) { + List<ErrorType> types = new ArrayList<>(); + // 鑷姩 + if (devp.getAutoing().equalsIgnoreCase("Y")) { + types.add(ErrorType.FEIZIDONG); + } + + // 鏈夌墿 + if (devp.getLoading().equalsIgnoreCase("Y")) { + types.add(ErrorType.YOUWU); + } // 宸ヤ綔鍙锋槸鍚︿负0 + if (devp.getWrkNo() != null) { + types.add(ErrorType.GONGZUOHAO); + } + // 鐩爣绔欑偣 + //TODO +// if (devp.getStaNo() == null) { +// types.add(ErrorType.STANO); +// } + + return types; + } + + private List<ErrorType> isInStaError(BasDevp devp) { + List<ErrorType> types = new ArrayList<>(); + + // 鑷姩 + if (devp.getAutoing().equalsIgnoreCase("Y")) { + types.add(ErrorType.FEIZIDONG); + } + + // 宸ヤ綔鍙锋槸鍚︿负0 + if (devp.getWrkNo() != null) { + types.add(ErrorType.GONGZUOHAO); + } + // 鐩爣绔欑偣 +// if (staProtocol.getStaNo() == null) { +// types.add(ErrorType.STANO); +// } + return types; } } -- Gitblit v1.9.1