From 3ceabb21c1fd2b7fbdbc5c77c23f26152ec7f9aa Mon Sep 17 00:00:00 2001 From: 1 <1@123> Date: 星期五, 09 五月 2025 18:57:25 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/OpenController.java | 72 +++++++++++++++++++++++++++++------ 1 files changed, 59 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index 408172d..16769ba 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -14,11 +14,13 @@ import com.zy.asrs.utils.Utils; import com.zy.common.web.BaseController; import com.zy.core.CrnThread; +import com.zy.core.cache.RgvStatusCache; import com.zy.core.cache.SlaveConnection; import com.zy.core.enums.SlaveType; import com.zy.core.model.CrnSlave; import com.zy.core.model.RgvSlave; import com.zy.core.model.protocol.CrnProtocol; +import com.zy.core.model.protocol.RgvProtocol; import com.zy.core.properties.SlaveProperties; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -55,6 +57,10 @@ private StaDescService staDescService; @Autowired private LocMastService locMastService; + @Autowired + private BasRgvErrService basRgvErrService; + @Autowired + private BasCrnErrorServiceImpl basCrnErrorService; @Value("${wms.url}") private String wmsUrl; @@ -64,8 +70,6 @@ public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{ add("ea1f0459efc02a79f046f982767939ae"); }}; - @Autowired - private BasCrnErrorServiceImpl basCrnErrorService; //agv浠诲姟瀹屾垚 @PostMapping("/toAgvTaskOver") @@ -88,9 +92,10 @@ } //鍒涘缓浠诲姟 - @PostMapping("/taskCreate") + @PostMapping("/taskCreate2") + @AppAuth(memo = "WMS浠诲姟涓嬪彂") @Transactional - public R taskCreate(@RequestHeader String appkey, + public synchronized R taskCreate(@RequestHeader String appkey, @RequestBody List<TaskCreateParam> param1, HttpServletRequest request) { auth(appkey, param1, request); @@ -101,15 +106,19 @@ if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } + if (Cools.isEmpty(param.getTaskNo())) { return R.error("浠诲姟鍙穂taskNo]涓嶈兘涓虹┖"); } if (Cools.isEmpty(param.getIoType())) { return R.error("浠诲姟绫诲瀷[ioType]涓嶈兘涓虹┖"); } + param.updateIoTyoe(param.getIoType());//涓埅涓嬪彂 1锛氬嚭搴擄紝2锛氱Щ搴� 3锛氬叆搴� ====杞崲涓�====> 1锛氬叆搴擄紝2锛氬嚭搴擄紝3锛氱Щ搴� + if (Cools.isEmpty(param.getBarcode())) { return R.error("鏉$爜[barcode]涓嶈兘涓虹┖"); } + String locNo=null; if(param.getIoType()==1){ locNo=param.getTargetPoint(); @@ -323,9 +332,9 @@ } //浠诲姟涓嬪彂鎺ュ彛 - @PostMapping("/outboundTaskSend") -// @PostMapping("/taskCreate") -// @AppAuth(memo = "浠诲姟涓嬪彂鎺ュ彛") +// @PostMapping("/outboundTaskSend") + @PostMapping("/taskCreate") + @AppAuth(memo = "浠诲姟涓嬪彂鎺ュ彛") @Transactional public R outboundTaskSend(@RequestHeader String appkey, @RequestBody List<CarryParam> params,//涓埅涓嬪彂 1锛氬嚭搴擄紝2锛氱Щ搴� 3锛氬叆搴� @@ -357,7 +366,14 @@ // } // } - LocMast locMast = locMastService.selectByLocNo(param.getStartPoint()); + + String locNo=null; + if(param.getIoType()==1){ + locNo=param.getTargetPoint(); + }else{ + locNo=param.getStartPoint(); + } + LocMast locMast = locMastService.selectByLocNo(locNo); if(Cools.isEmpty(locMast)){ return R.error("鍒濆搴撲綅鏃犳硶鎵惧埌"); } @@ -373,7 +389,7 @@ if(Cools.isEmpty(staDesc)){ return R.error("鍏ュ簱璺姴涓嶅瓨鍦�"); } - r = openService.taskCreate(new TaskCreateParam(param,staDesc.getCrnNo())); + r = openService.taskCreate(new TaskCreateParam(param,staDesc.getCrnNo(),staDesc.getCrnStn())); }else if(param.getIoType() == 2){ //鍑哄簱浠诲姟鍒涘缓 @@ -384,7 +400,7 @@ if(Cools.isEmpty(staDesc)){ return R.error("鍑哄簱璺姴涓嶅瓨鍦�"); } - r = openService.taskCreate(new TaskCreateParam(param,staDesc.getCrnNo())); + r = openService.taskCreate(new TaskCreateParam(param,staDesc.getCrnNo(),staDesc.getStnNo())); }else if (param.getIoType() == 3){ LocMast locMast2 = locMastService.selectByLocNo(param.getTargetPoint()); if(Cools.isEmpty(locMast2)){ @@ -476,7 +492,16 @@ List<BasDevp> basDevps = basDevpService.selectList(new EntityWrapper<>()); List<Object> list = new ArrayList<>(); for (BasDevp basDevp:basDevps){ - list.add(basDevp); + BasDevpWmsParam basDevpWmsParam = new BasDevpWmsParam(); + basDevpWmsParam.setDevNo(basDevp.getDevNo()); + basDevpWmsParam.setWrkNo(basDevp.getWrkNo().longValue()); + basDevpWmsParam.setAutoing(basDevp.getAutoing()); + basDevpWmsParam.setLoading(basDevp.getLoading()); + basDevpWmsParam.setInEnable(basDevp.getInEnable()); + basDevpWmsParam.setOutEnable(basDevp.getOutEnable()); + basDevpWmsParam.setDevErr(basDevp.getStaErr().longValue()); + basDevpWmsParam.setDevErrM(basDevpWmsParam.getDevErr$()); + list.add(basDevpWmsParam); } List<BasCrnpWmsParam> basCrnpWmsParamList = new ArrayList<>(); for (CrnSlave crn : slaveProperties.getCrn()) { @@ -495,13 +520,34 @@ basCrnpWmsParam.setCrnNoH(crnProtocol.getLaneNo()); basCrnpWmsParamList.add(basCrnpWmsParam); - BasCrnError basCrnError = basCrnErrorService.selectById(basCrnp.getCrnErr()); - basCrnpWmsParam.setCrnErrM(basCrnError.getErrName()); + try{ + BasCrnError basCrnError = basCrnErrorService.selectById(basCrnp.getCrnErr()); + basCrnpWmsParam.setCrnErrM(basCrnError.getErrName()); + } catch (Exception e){ + basCrnpWmsParam.setCrnErrM("鏈煡寮傚父"); + } list.add(basCrnpWmsParam); } for (RgvSlave rgvSlave : slaveProperties.getRgv()) { + RgvProtocol rgvStatus = RgvStatusCache.getRgvStatus(rgvSlave.getId()); + if (Cools.isEmpty(rgvStatus)){ + continue; + } + BasRgvWmsParam basRgvWmsParam = new BasRgvWmsParam(); + basRgvWmsParam.setWrkNo(rgvStatus.getTaskNo()); + basRgvWmsParam.setCrnSts(rgvStatus.getStatus().intValue()); + basRgvWmsParam.setStatusType(rgvStatus.getStatusType().desc); + basRgvWmsParam.setSteNo(rgvSlave.getId()); + basRgvWmsParam.setSteErr(rgvStatus.getAlarm().longValue()); + try{ + BasRgvErr basRgvErr = basRgvErrService.selectById(rgvStatus.getAlarm().longValue()); + basRgvWmsParam.setSteErrM(basRgvErr.getErrName()); + } catch (Exception e){ + basRgvWmsParam.setSteErrM("鏈煡寮傚父"); + } + list.add(basRgvWmsParam); } // List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<>()); // for (BasCrnp basCrnp:basCrnps){ -- Gitblit v1.9.1