From 6c5963052282dfe4ae2f20d2e18012d1cff93c85 Mon Sep 17 00:00:00 2001 From: pjb <pjb123456> Date: 星期一, 23 六月 2025 08:54:51 +0800 Subject: [PATCH] rgv调度优化 --- src/main/java/com/zy/asrs/controller/RgvController.java | 46 ++++++++++++++++++++++++++++++++++------------ 1 files changed, 34 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java index 639cbd7..35fe0b3 100644 --- a/src/main/java/com/zy/asrs/controller/RgvController.java +++ b/src/main/java/com/zy/asrs/controller/RgvController.java @@ -7,7 +7,8 @@ import com.core.exception.CoolException; import com.zy.asrs.domain.enums.RgvStatusType; import com.zy.asrs.domain.param.*; -import com.zy.asrs.domain.vo.*; +import com.zy.asrs.domain.vo.RgvMsgTableVo; +import com.zy.asrs.domain.vo.RgvStateTableVo; import com.zy.asrs.entity.*; import com.zy.asrs.mapper.BasRgvErrMapper; import com.zy.asrs.service.BasCircularShuttleService; @@ -15,7 +16,6 @@ import com.zy.asrs.service.BasRgvService; import com.zy.asrs.service.WrkMastService; import com.zy.asrs.service.impl.MainServiceImpl; -import com.zy.asrs.utils.NumUtils; import com.zy.asrs.utils.Utils; import com.zy.core.cache.MessageQueue; import com.zy.core.cache.OutputQueue; @@ -39,11 +39,9 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import javax.rmi.CORBA.Util; import java.util.ArrayList; -import java.util.HashMap; +import java.util.Date; import java.util.List; -import java.util.Map; /** * RGV鎺ュ彛 @@ -373,11 +371,17 @@ List<RingThroughParam> result = new ArrayList<>(); List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<>()); for (BasDevpPosition basDevpPosition : basDevpPositions){ + if (basDevpPosition.getDevNo() == 134){ + continue; + } RingThroughParam ringThroughParam = new RingThroughParam(); ringThroughParam.setIndex(basDevpPosition.getDevNo()); - double[] doubles = Utils.RingThroughXYSta(perimeter, perimeter-basDevpPosition.getPlcPosition()); - ringThroughParam.setValueX(doubles[0]>50? doubles[0]+6:doubles[0]-1); - ringThroughParam.setValueY(doubles[1]>50? doubles[1]+6:doubles[1]-1); +// double[] doubles = Utils.RingThroughXYSta(perimeter, perimeter-basDevpPosition.getPlcPosition()); +// ringThroughParam.setValueX(doubles[0]>50? doubles[0]+6:doubles[0]-1); +// ringThroughParam.setValueY(doubles[1]>50? doubles[1]+6:doubles[1]-1); + double[] doubles = Utils.getRgvPosNew(basDevpPosition.getDevNo(),perimeter, basDevpPosition.getPlcPosition()); + ringThroughParam.setValueX(doubles[0]); + ringThroughParam.setValueY(doubles[1]); result.add(ringThroughParam); } return R.ok().add(result); @@ -426,7 +430,8 @@ // @ManagerAuth(memo = "浣滀笟淇℃伅") public R ringThroughTaskWrkMast(){ List<RgvWrkMastParam> result = new ArrayList<>(); - List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<>()); + List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().in("wrk_sts",9,10).orderBy("wrk_sts",false) + .orderBy("rgv_no",true)); for (WrkMast wrkMast : wrkMasts){ RgvWrkMastParam rgvWrkMastParam = new RgvWrkMastParam(wrkMast); if (Cools.isEmpty(rgvWrkMastParam.getRgvNo())){ @@ -462,6 +467,7 @@ RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); if (rgvProtocol != null) { rgvCircularShuttleParam.setPosition(rgvProtocol.getRgvPos()); + rgvCircularShuttleParam.setTaskNo(rgvProtocol.taskNo1); if (rgvCircularShuttleParam.getStatus()==0){ rgvCircularShuttleParam.setStatus$(rgvProtocol.statusType.desc); } @@ -475,13 +481,29 @@ @PostMapping("/disable/rgv/status") -// @ManagerAuth(memo = "浣滀笟淇℃伅") - public R rgvDisableStatus(@RequestParam Integer rgvId, +// @ManagerAuth(memo = "淇敼RGV鐘舵��") + public R rgvDisableStatus(@RequestParam Integer rgvNo, @RequestParam Integer status){ - BasCircularShuttle basCircularShuttle = basCircularShuttleService.selectOne(new EntityWrapper<BasCircularShuttle>().eq("rgv_id", rgvId)); + log.info("/disable/rgv/status===銆嬩慨鏀筊GV鐘舵�侊紒锛侊紒rgvNo:{},status:{},data:{}",rgvNo,status,new Date()); + BasCircularShuttle basCircularShuttle = basCircularShuttleService.selectOne(new EntityWrapper<BasCircularShuttle>().eq("rgv_no", rgvNo)); + if (basCircularShuttle == null){ + return R.error().add("鏈壘鍒版RGV锛屽紓甯革紒锛侊紒"); + } basCircularShuttle.setStatus(status); basCircularShuttleService.updateById(basCircularShuttle); return R.ok(); } + @PostMapping("/disable/task/delete") +// @ManagerAuth(memo = "鍒犻櫎浠诲姟") + public R taskDisabledelete(@RequestParam Long wrkNo){ + log.info("/disable/task/delete===銆嬪垹闄や换鍔★紒锛侊紒wrkNo:{},data:{}",wrkNo,new Date()); + WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", wrkNo)); + if (Cools.isEmpty(wrkMast)){ + return R.error().add("鏈壘鍒版浠诲姟锛屽紓甯革紒锛侊紒"); + } + wrkMastService.deleteById(wrkMast); + return R.ok(); + } + } \ No newline at end of file -- Gitblit v1.9.1