From 5b25d65a9e86fd45861f89104e6996dc2c387e1b Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期二, 06 五月 2025 16:07:46 +0800 Subject: [PATCH] 1 --- src/main/java/com/zy/asrs/controller/DevopsController.java | 115 ++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 84 insertions(+), 31 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/DevopsController.java b/src/main/java/com/zy/asrs/controller/DevopsController.java index 8da1cf5..863c2d2 100644 --- a/src/main/java/com/zy/asrs/controller/DevopsController.java +++ b/src/main/java/com/zy/asrs/controller/DevopsController.java @@ -1,12 +1,16 @@ package com.zy.asrs.controller; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.core.annotations.ManagerAuth; import com.core.common.Cools; 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; +import com.zy.asrs.service.BasDevpService; import com.zy.asrs.service.WrkMastService; import com.zy.core.CrnThread; import com.zy.core.DevpThread; @@ -16,15 +20,19 @@ 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; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; 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") @@ -39,25 +47,32 @@ @Autowired private WrkMastMapper wrkMastMapper; + @Autowired + private BasDevpService basDevpService; + @RequestMapping("/wrkMast/list") public R list() { List<DevopsMessage> devopsMessages = new ArrayList<>(); DevopsMessage devopsMessage; for (CrnSlave crnSlave : slaveProperties.getCrn()) { - List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", crnSlave.getId()).in("io_type", 101, 103, 107).orderBy("wrk_sts", false)); + List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", crnSlave.getId()).orderBy("wrk_sts", false)); + //鍏堟煡璇㈠爢鍨涙満鏄惁鍦ㄥ伐浣� WrkMast working = wrkMastMapper.selectWorking(crnSlave.getId()); for (WrkMast wrkMast : wrkMasts) { devopsMessage = new DevopsMessage(); devopsMessage.setWrkNo(wrkMast.getWrkNo()); if (working != null) { + //鍦ㄥ伐浣滐紝鍒欏垽鏂槸鍚︽湭褰撳墠杩欐潯 if (working.getWrkNo().equals(wrkMast.getWrkNo())) { devopsMessage.setError("璇ュ伐浣滄。姝e湪鍑哄簱锛岃绋嶅悗"); } else { - devopsMessage.setError(working.getWrkNo() + "鍙峰伐浣滄。姝e湪鍑哄簱"); + devopsMessage.setError(working.getWrkNo() + "鍙峰伐浣滄。姝e湪鍑哄簱锛岃绋嶅悗"); } continue; } - List<ErrorType> staError = isStaError(wrkMast); + DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); + StaProtocol staProtocol = devpThread.getStation().get(wrkMast.getStaNo()); + List<ErrorType> staError = isStaError(staProtocol, wrkMast); for (ErrorType type : staError) { if (!Cools.isEmpty(devopsMessage.getError())) { devopsMessage.setError(devopsMessage.getError() + ";" + type.getDesc()); @@ -67,15 +82,16 @@ devopsMessage.setMethod(type.getMethod()); } } - List<ErrorType> crnError = isCrnError(wrkMast); + 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() + ";" + type.getDesc()); devopsMessage.setMethod(devopsMessage.getMethod() + ";" + type.getMethod()); } else { devopsMessage.setError(type.getDesc()); - devopsMessage - .setMethod(type.getMethod()); + devopsMessage.setMethod(type.getMethod()); } } devopsMessages.add(devopsMessage); @@ -84,69 +100,106 @@ return R.ok(devopsMessages); } - private List<ErrorType> isStaError(WrkMast staNo) { + private List<ErrorType> isStaError(StaProtocol staProtocol, WrkMast wrkMast) { List<ErrorType> types = new ArrayList<>(); - DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); - StaProtocol staProtocol = devpThread.getStation().get(staNo); if (staProtocol == null) { types.add(ErrorType.ERROR); return types; } else { staProtocol = staProtocol.clone(); } + // 鑷姩 if (staProtocol.isAutoing()) { types.add(ErrorType.FEIZIDONG); } - if (staProtocol.isLoading()) { - types.add(ErrorType.YOUWU); - } - if (staProtocol.getWorkNo() == 0) { - types.add(ErrorType.GONGZUOHAO); - } - if (staProtocol.getStaNo() == null) { - types.add(ErrorType.STANO); + if (wrkMast.getIoType() > 100) { + // 鍑哄簱鏍¢獙 + // 鏈夌墿 + if (staProtocol.isLoading()) { + types.add(ErrorType.YOUWU); + } // 宸ヤ綔鍙锋槸鍚︿负0 + if (staProtocol.getWorkNo() == 0) { + types.add(ErrorType.GONGZUOHAO); + } + // 鐩爣绔欑偣 + if (staProtocol.getStaNo() == null) { + types.add(ErrorType.STANO); + } + } else { + // 鍏ュ簱鏍¢獙 + } return types; } - private List<ErrorType> isCrnError(WrkMast wrkMast) { + private List<ErrorType> isCrnError(CrnProtocol crnProtocol, WrkMast wrkMast) { List<ErrorType> types = new ArrayList<>(); - CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, wrkMast.getCrnNo()); - CrnProtocol crnProtocol = crnThread.getCrnProtocol(); - + // 鍫嗗灈鏈烘槸鍚︾┖闂� if (crnProtocol.getStatusType() == CrnStatusType.IDLE) { - + types.add(ErrorType.CRN_NO_IDLE); } + //浠诲姟鍙锋槸鍚︿负0 if (crnProtocol.getTaskNo() == 0) { - + types.add(ErrorType.WORKING); } + // 鍫嗗灈鏈烘槸鍚﹁嚜鍔� if (crnProtocol.getModeType() == CrnModeType.AUTO) { - + types.add(ErrorType.CRN_FEIZIDONG); } + // 杞借揣鍙版湁鐗� if (crnProtocol.getLoaded() == 0) { - + types.add(ErrorType.LOAD); } + // 鍫嗗灈鏈哄彇璐т腑 if (crnProtocol.statusType == CrnStatusType.FETCHING) { types.add(ErrorType.WORKING); } + // 鏀捐揣涓� if (crnProtocol.statusType == CrnStatusType.PUTTING) { types.add(ErrorType.WORKING); } + // 鍫嗗灈鏈虹瓑寰呯‘璁ょ姸鎬� if (crnProtocol.statusType == CrnStatusType.WAITING) { types.add(ErrorType.WORKING); } + // 璐у弶鏄惁浼氬洖涓� if (crnProtocol.forkPosType == CrnForkPosType.HOME) { types.add(ErrorType.HOME); } - if (crnProtocol.modeType == CrnModeType.AUTO) { - types.add(ErrorType.FEIZIDONG); - } -// if (crnProtocol.getTaskNo().equals(wrkMast.getWrkNo().shortValue())) { -// types.add(ErrorType.CRNGONGZUOHAO); -// } return types; } + @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<BasDevp> basDevps = basDevpService.selectList(new EntityWrapper<BasDevp>().orderBy("dev_no")); + for (BasDevp devp : basDevps) { + StaProtocol staProtocol = station.get(devp.getDevNo()); + if (null == staProtocol) { + continue; + } + 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); + } } -- Gitblit v1.9.1