From ddb1d3cc65d174d768912ee08f4d08d719c197d0 Mon Sep 17 00:00:00 2001 From: 1 <1@123> Date: 星期日, 11 五月 2025 17:54:59 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/RgvController.java | 79 ++++++++++++++++++++++++++++++++++----- 1 files changed, 69 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java index 83e6cd1..4dca465 100644 --- a/src/main/java/com/zy/asrs/controller/RgvController.java +++ b/src/main/java/com/zy/asrs/controller/RgvController.java @@ -102,7 +102,7 @@ @ManagerAuth(memo = "灏忚溅琛岃蛋") public R rgvRunWalk(@RequestParam(defaultValue = "0") Integer rgvNo, @RequestParam(defaultValue = "0") Integer taskNo, - @RequestParam(defaultValue = "0") Integer rgvStaNo, + @RequestParam(defaultValue = "0") Integer rgvStaNoPut, @RequestParam(defaultValue = "0") Long rgvPosDestination ) { if (rgvNo==null || rgvNo==0){ @@ -111,11 +111,11 @@ if (taskNo==null || taskNo==0){ return R.error("浣滀笟鍙疯濉啓"); } - if ((rgvStaNo == null || rgvStaNo == 0) && (rgvPosDestination==null || rgvPosDestination==0L)){ + if ((rgvStaNoPut == null || rgvStaNoPut == 0) && (rgvPosDestination==null || rgvPosDestination==0L)){ return R.error("鐩爣绔欑偣璇峰~鍐�"); } if (rgvPosDestination == null || rgvPosDestination == 0){ - BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNo)); + BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNoPut)); rgvPosDestination = basDevpPosition.getPlcPosition(); } RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvNo); @@ -150,7 +150,7 @@ @ManagerAuth(memo = "灏忚溅鏀捐揣") public R rgvPutWalk(@RequestParam(defaultValue = "0") Integer rgvNo, @RequestParam(defaultValue = "0") Integer taskNo, - @RequestParam(defaultValue = "0") Integer rgvStaNo, + @RequestParam(defaultValue = "0") Integer rgvStaNoPut, @RequestParam(defaultValue = "0") Long rgvPosDestination ) { if (rgvNo==null || rgvNo==0){ @@ -159,7 +159,7 @@ if (taskNo==null || taskNo==0){ return R.error("浣滀笟鍙疯濉啓"); } - if (rgvStaNo == null || rgvStaNo == 0){ + if (rgvStaNoPut == null || rgvStaNoPut == 0){ return R.error("鐩爣绔欑偣璇峰~鍐�"); } RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvNo); @@ -173,7 +173,7 @@ return R.error("瀛樺湪鎵ц涓换鍔★紝璇峰厛澶勭悊锛侊紒锛�"); } - BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNo)); + BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNoPut)); //鎵ц issuedPut.setTaskNo(Long.valueOf(taskNo)); issuedPut.setTaskStatus(3); @@ -194,7 +194,7 @@ @ManagerAuth(memo = "灏忚溅鍙栬揣") public R rgvTakeWalk(@RequestParam(defaultValue = "0") Integer rgvNo, @RequestParam(defaultValue = "0") Integer taskNo, - @RequestParam(defaultValue = "0") Integer rgvStaNo, + @RequestParam(defaultValue = "0") Integer rgvStaNoTake, @RequestParam(defaultValue = "0") Long rgvPosDestination ) { if (rgvNo==null || rgvNo==0){ @@ -203,8 +203,8 @@ if (taskNo==null || taskNo==0){ return R.error("浣滀笟鍙疯濉啓"); } - if (rgvStaNo == null || rgvStaNo == 0){ - return R.error("鐩爣绔欑偣璇峰~鍐�"); + if (rgvStaNoTake == null || rgvStaNoTake == 0){ + return R.error("鍙栬揣绔欑偣璇峰~鍐�"); } RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvNo); TaskProtocolCache taskProtocolCache = rgvThread.getTaskProtocolCache(); @@ -216,7 +216,7 @@ return R.error("瀛樺湪鎵ц涓换鍔★紝璇峰厛澶勭悊锛侊紒锛�"); } - BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNo)); + BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNoTake)); //鎵ц issuedTake.setTaskNo(Long.valueOf(taskNo)); issuedTake.setTaskStatus(2); @@ -232,4 +232,63 @@ return R.ok("浠诲姟鐢熸垚鎴愬姛"); } + + @PostMapping("/run/TakeAndPut")//Take Put Walk + @ManagerAuth(memo = "灏忚溅鍙栬揣") + public R rgvTakeAndPut(@RequestParam(defaultValue = "0") Integer rgvNo, + @RequestParam(defaultValue = "0") Integer taskNo, + @RequestParam(defaultValue = "0") Integer rgvStaNoTake, + @RequestParam(defaultValue = "0") Integer rgvStaNoPut, + @RequestParam(defaultValue = "0") Long rgvPosDestination + ) { + if (rgvNo==null || rgvNo==0){ + return R.error("璇烽�夋嫨灏忚溅"); + } + if (taskNo==null || taskNo==0){ + return R.error("浣滀笟鍙疯濉啓"); + } + if (rgvStaNoTake == null || rgvStaNoTake == 0){ + return R.error("鍙栬揣绔欑偣璇峰~鍐�"); + } + if (rgvStaNoPut == null || rgvStaNoPut == 0){ + return R.error("鏀捐揣绔欑偣璇峰~鍐�"); + } + RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvNo); + TaskProtocolCache taskProtocolCache = rgvThread.getTaskProtocolCache(); + + TaskProtocol issuedTake = new TaskProtocol(); + TaskProtocol issuedPut = new TaskProtocol(); + try { + ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol(); + if (allTaskProtocol.size() > 0) { + return R.error("瀛樺湪鎵ц涓换鍔★紝璇峰厛澶勭悊锛侊紒锛�"); + } + + BasDevpPosition basDevpPositionTake = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNoTake)); + //鎵ц + issuedTake.setTaskNo(Long.valueOf(taskNo)); + issuedTake.setTaskStatus(2); + issuedTake.setTaskNoDirection(issuedTake.gettaskNoDirection$(issuedTake.getTaskNo(), issuedTake.getTaskStatus())); + issuedTake.setTargetPosition(basDevpPositionTake.getPlcPosition()); + issuedTake.setIsRunning(1); + issuedTake.setDirection(basDevpPositionTake.getRgvSign()==1); + + BasDevpPosition basDevpPositionPut = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStaNoPut)); + //鎵ц + issuedPut.setTaskNo(Long.valueOf(taskNo)); + issuedPut.setTaskStatus(3); + issuedPut.setTaskNoDirection(issuedPut.gettaskNoDirection$(issuedPut.getTaskNo(), issuedPut.getTaskStatus())); + issuedPut.setTargetPosition(basDevpPositionPut.getPlcPosition()); + issuedPut.setIsRunning(1); + issuedPut.setDirection(basDevpPositionPut.getRgvSign()==1); + + taskProtocolCache.updateTaskProtocol(issuedTake); + taskProtocolCache.updateTaskProtocol(issuedPut); + + } catch (Exception e) { + return R.error("浠诲姟鐢熸垚澶辫触"+e.getMessage()); + } + + return R.ok("浠诲姟鐢熸垚鎴愬姛"); + } } -- Gitblit v1.9.1