From 6548c75a24d8d0c23c8167980465831128abf579 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期三, 06 十一月 2024 13:05:49 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/jx-gt-crn-wcs' into jx-gt-crn-wcs --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 64 +++++++++++++------------------ 1 files changed, 27 insertions(+), 37 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 5388b89..4f29197 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -31,17 +31,17 @@ import com.zy.core.enums.DevpType.DevpStateType; import com.zy.core.enums.DevpType.DevpTrayType; import com.zy.core.enums.DevpType.DevpWorkType; -import com.zy.core.model.*; +import com.zy.core.model.CrnSlave; +import com.zy.core.model.DevpSlave; +import com.zy.core.model.LedSlave; +import com.zy.core.model.Task; import com.zy.core.model.command.CrnCommand; import com.zy.core.model.command.LedCommand; -import com.zy.core.model.command.RgvCommand; import com.zy.core.model.protocol.CrnProtocol; -import com.zy.core.model.protocol.RgvProtocol; import com.zy.core.model.protocol.StaProtocol; import com.zy.core.properties.SlaveProperties; import com.zy.core.thread.BarcodeThread; import com.zy.core.thread.LedThread; -import com.zy.core.thread.RgvThread; import com.zy.core.thread.SiemensDevpThread; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -53,7 +53,6 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.*; -import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -117,9 +116,7 @@ for (DevpSlave devp : slaveProperties.getDevp()) { // 閬嶅巻鍏ュ簱鍙� for (DevpSlave.Sta inSta : devp.getInSta()) { - // 鑾峰彇鏉$爜鎵弿浠俊鎭� - BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode()); - BarcodeThread barcodeThreadMat = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcodeMat()); + LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed()); SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo()); @@ -128,15 +125,6 @@ } else { staProtocol = staProtocol.clone(); } - - if (barcodeThread == null) { - continue; - } - - if (barcodeThreadMat == null) { - continue; - } - // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 if (staProtocol.stateType == DevpStateType.AUTO //鑷姩 && staProtocol.workType == DevpWorkType.BUSY //蹇欑 @@ -158,7 +146,6 @@ } continue; } - barcodeThread.setBarcode(""); staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo(RouteUtils.SouStaEnd(null,wrkMast.getSourceStaNo())); devpThread.setPakMk(staProtocol.getSiteId(), false); @@ -199,7 +186,6 @@ JSONObject jsonObject = JSON.parseObject(response); if (jsonObject.getInteger("code").equals(200)) { StartupDto dto = jsonObject.getObject("data", StartupDto.class); - barcodeThread.setBarcode(""); staProtocol.setWorkNo(dto.getWorkNo()); staProtocol.setStaNo(RouteUtils.SouStaEnd(dto.getStaNo(),dto.getSourceStaNo())); devpThread.setPakMk(staProtocol.getSiteId(), false); @@ -215,12 +201,6 @@ throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } }else { - staProtocol.setWorkNo(wrkNo); - wrkNo++; - staProtocol.setStaNo(inSta.getBackSta().shortValue()); - devpThread.setPakMk(staProtocol.getSiteId(), false); - MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); -// // if (ledThread != null) { String errorMsg = jsonObject.getString("msg"); if (!Cools.isEmpty(errorMsg)) { @@ -428,7 +408,7 @@ // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护 staProtocol.setWorkNo(wrkMast.getWrkNo()); - staProtocol.setStaNo((short) 161); + staProtocol.setStaNo(wrkMast.getStaNo().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); log.error("杈撻�佺嚎涓嬪彂5锛�"+wrkMast.getWrkNo()+","+wrkMast.getStaNo()); @@ -663,7 +643,7 @@ } // 鏇存柊宸ヤ綔妗g姸鎬佷负14澶辫触 - wrkMast.setWrkSts(14L); + wrkMast.setWrkSts(13L); wrkMast.setCrnEndTime(new Date()); if (wrkMastMapper.updateById(wrkMast) != 0) { // 澶嶄綅鍫嗗灈鏈� @@ -2116,13 +2096,13 @@ } else { staProtocol = staProtocol.clone(); } - if (!(staProtocol.stateType == DevpStateType.AUTO && staProtocol.workType == DevpWorkType.BUSY && staProtocol.requestType == DevpRequestType.OUT)){ + if (!(staProtocol.stateType == DevpStateType.AUTO)){ continue; } - if (staProtocol.getWorkNo() != 0){ + if (staProtocol.getWorkNo() == 0){ continue; } - WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", staProtocol.getWorkNo()).eq("wrk_sts", 101).in("crn_no", 8, 9)); + WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", staProtocol.getWorkNo()).eq("wrk_sts", 101)); if(!Cools.isEmpty(wrkMast1)){ continue; } @@ -2130,9 +2110,8 @@ //鏌ヨ鐘舵�佷负2鐨勪换鍔� WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>() .eq("wrk_no", staProtocol.getWorkNo()) - .in("io_type",1,10,53,54,57) - .in("wrk_sts", 2,104) - .in("crn_no",8,9)); + .in("io_type",101,110,103,104,107) + .eq("wrk_sts", 15)); if (Cools.isEmpty(wrkMast)) { log.error(agvSta.getStaNo()+"绔�,杞彂agv浠诲姟鏈壘鍒板搴斾换鍔�,浠诲姟鍙凤細"+staProtocol.getWorkNo()); continue; @@ -2141,7 +2120,7 @@ getAgvTaskParam(forwardAGVTaskParam,wrkMast,staProtocol.getSiteId()); String request = forwardAGVHttpRequest(forwardAGVTaskParam, "10.0.100.110:8182", "/rcms/services/rest/hikRpcService/genAgvSchedulingTask"); if ("SUCCESS".equals(request)) { - wrkMast.setWrkSts(101L); + wrkMast.setWrkSts(14L); boolean update = wrkMastService.updateById(wrkMast); if (update){ log.info("鍏ュ簱杞彂AGV浠诲姟瀹屾垚,浠诲姟鍙�:"+wrkMast.getWrkNo()); @@ -2157,21 +2136,32 @@ } private void getAgvTaskParam(ForwardAGVTaskParam agvTaskCreateParam,WrkMast param,Integer staNo){ + String sourceSite = ""; + if (staNo == 1040 || staNo == 1042) { + sourceSite = "a"; + } else if (staNo == 2010 || staNo == 2012) { + sourceSite = "b"; + } else if(staNo == 3010 || staNo ==3012) { + sourceSite = "c"; + } else if(staNo == 2000 || staNo ==2002) { + sourceSite = "d"; + } List<ForwardAGVTaskParam.PositionCodePaths> agvTaskParamList = Arrays.asList( //璧峰浣� new ForwardAGVTaskParam.PositionCodePaths(staNo.toString(),"05"), //鐩爣浣� - new ForwardAGVTaskParam.PositionCodePaths(param.getLocNo(),"05") + new ForwardAGVTaskParam.PositionCodePaths(sourceSite,"04") ); Date date = new Date(); DecimalFormat df = new DecimalFormat("0000"); String wrkNo = "Crn"+df.format(param.getWrkNo())+date.getTime()/1000; agvTaskCreateParam.setReqCode(wrkNo); agvTaskCreateParam.setReqTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); - agvTaskCreateParam.setTaskTyp("GT1"); + agvTaskCreateParam.setTaskTyp("GT4"); agvTaskCreateParam.setCtnrCode(param.getBarcode()); agvTaskCreateParam.setPositionCodePath(agvTaskParamList); - agvTaskCreateParam.setCtnrTyp("1"); + agvTaskCreateParam.setCtnrTyp("2"); + agvTaskCreateParam.setPriority("1"); agvTaskCreateParam.setTaskCode(wrkNo); } -- Gitblit v1.9.1