From 5a6915652f10c12fc6a7847627594a0b47251f07 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期四, 26 六月 2025 09:40:01 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 68 ++++++++++++++++++++++++++++----- 1 files changed, 57 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java index d5ca854..42eeabc 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -13,7 +13,6 @@ import com.zy.asrs.mapper.WrkMastMapper; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; -import com.zy.asrs.utils.VersionUtils; import com.zy.common.constant.RedisConstantType; import com.zy.common.model.LocTypeDto; import com.zy.common.model.MatDto; @@ -2207,13 +2206,16 @@ ArrayList<Integer> list = new ArrayList<Integer>(){{add(2003);add(2002);}}; for (Integer staNo : list) { Integer devpId = null; + Integer rgvStaNoDevpId = null; Integer rgvStaNo = null; if (staNo == 2003) { devpId = 1; rgvStaNo = 2002; + rgvStaNoDevpId = 2; }else { devpId = 2; rgvStaNo = 2003; + rgvStaNoDevpId = 1; } SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devpId); @@ -2229,12 +2231,54 @@ if (staProtocol.isAutoing() && staProtocol.isLoading() -// && staProtocol.isInEnable() + && staProtocol.isInEnable() && staProtocol.getWorkNo() > 0 ) { WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>() .eq("wrk_no", staProtocol.getWorkNo())); + + if (wrkMast == null) { + continue; + } + if (wrkMast.getWrkSts() == 201) { + continue; + } + + SiemensDevpThread devpThread2 = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, rgvStaNoDevpId); + if (devpThread2 == null) { + continue; + } + StaProtocol staProtocolRgvStaNo = devpThread2.getStation().get(rgvStaNo); + if (staProtocolRgvStaNo == null) { + continue; + } + + if (!staProtocolRgvStaNo.isAutoing()) { + continue; + } + + if (staProtocolRgvStaNo.isLoading()) { + continue; + } + + // 鑾峰彇RGV淇℃伅 + RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, 1); + if (rgvThread == null) { + continue; + } + + RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); + if (rgvProtocol == null) { + continue; + } + + if (rgvProtocol.statusType1 != RgvStatusType.IDLE && rgvProtocol.getTaskNo1() != 0) { + continue; + } + + Object object = redisUtil.get(RedisConstantType.RGV_MOVE_LOCK + wrkMast.getWrkNo()); + if (object != null) { continue; } @@ -2255,6 +2299,7 @@ wrkMast.setWrkSts(201L);//201.RGV鎼繍涓� wrkMast.setModiTime(new Date()); wrkMastService.updateById(wrkMast); + redisUtil.set(RedisConstantType.RGV_MOVE_LOCK + wrkMast.getWrkNo(), "lock", 60 * 60); } } } @@ -2283,20 +2328,25 @@ continue; } + if (wrkMast.getWrkSts() != 201) { + continue; + } + Integer devpId = null; Integer devpStaNo = null; String locNo = null; + Long updateWrkSts = null; if (wrkMast.getIoType() < 100) { //鍏ュ簱 - wrkMast.setWrkSts(2L); + updateWrkSts = 2L; devpId = 1; - devpStaNo = 1090; + devpStaNo = 2003; locNo = wrkMast.getLocNo(); }else { //鍑哄簱 - wrkMast.setWrkSts(15L); + updateWrkSts = 15L; devpId = 2; - devpStaNo = 1091; + devpStaNo = 2002; locNo = wrkMast.getSourceLocNo(); } @@ -2323,11 +2373,7 @@ if (!result) { throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } - - Date now = new Date(); - wrkMast.setModiTime(now); - wrkMastMapper.updateById(wrkMast); - + wrkMastMapper.updateWrkSts(updateWrkSts, wrkMast.getWrkNo()); rgvThread.setResetFlag1(true); } } -- Gitblit v1.9.1