From dbae31a7a7cd59048ada9b51fe8faff545324c59 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期五, 15 三月 2024 16:02:53 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/OpenController.java | 142 ++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 120 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index c5825f2..27189b9 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -8,6 +8,7 @@ import com.core.common.Cools; import com.core.common.R; import com.core.exception.CoolException; +import com.zy.asrs.domain.vo.CrnStateTableVo; import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.TaskOverParam; import com.zy.asrs.entity.param.WMSAndAGVInterfaceParam; @@ -15,6 +16,10 @@ import com.zy.asrs.service.*; import com.zy.common.utils.HttpHandler; import com.zy.common.web.BaseController; +import com.zy.core.CrnThread; +import com.zy.core.cache.SlaveConnection; +import com.zy.core.enums.SlaveType; +import com.zy.core.model.protocol.CrnProtocol; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -48,6 +53,8 @@ @Autowired private StaDescService staDescService; + @Autowired + private BasCrnpService basCrnpService; @Value("${wms.url}") private String wmsUrl; @@ -154,9 +161,10 @@ return R.error("鎵樼洏缂栫爜涓虹┖锛�"); } else if (Cools.isEmpty(param.getWharfSource())){ return R.error("婧愮爜澶翠负绌猴紒"); - } else if (Cools.isEmpty(param.getFreeWharfs()) || param.getFreeWharfs().size()==0){ - return R.error("绌洪棽鐨勫叆搴撶爜澶达紙AGV锛変负绌猴紒"); } +// else if (Cools.isEmpty(param.getFreeWharfs()) || param.getFreeWharfs().size()==0){ +// return R.error("绌洪棽鐨勫叆搴撶爜澶达紙AGV锛変负绌猴紒"); +// } R r = openService.AgvToWCSToWms(param); apiLogService.save("AGV璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" ,request.getRemoteAddr()+request.getRequestURI() @@ -185,21 +193,26 @@ } Map<String,Integer> map = new HashMap<>(); - map.put("J-1101",102);map.put("J-1102",101); - map.put("J-1103",106);map.put("J-1104",105); - map.put("J-1105",110);map.put("J-1106",109); - map.put("J-1107",114);map.put("J-1108",113); - map.put("J-1109",118);map.put("J-1110",117); - map.put("J-1111",122);map.put("J-1112",121); + map.put("J-1102",102);map.put("J-1101",101); + map.put("J-1103",105);map.put("J-1104",106); + map.put("J-1105",109);map.put("J-1106",110); + map.put("J-1107",113);map.put("J-1108",114); + map.put("J-1109",117);map.put("J-1110",118); + map.put("J-1111",121);map.put("J-1112",122); map.put("H-1102",300);map.put("H-1101",305); - StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>().eq("stn_desc", param.getWharfCode())); - - if (Cools.isEmpty(staDesc)){ - return R.error("绋嬪簭鎶ラ敊锛屾湭鏌ヨ鍒扮珯鐐�"); + map.put("G-1102",400);map.put("G-1101",405); +// StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() +// .eq("stn_desc", param.getWharfCode())); +// +// if (Cools.isEmpty(staDesc)){ +// return R.error("绋嬪簭鎶ラ敊锛屾湭鏌ヨ鍒扮珯鐐�"); +// } + if (Cools.isEmpty(map.get(param.getWharfCode()))){ + return R.error("鏈煡璇㈠埌绔欑偣"); } - //BasDevp basDevp = basDevpService.selectById(map.get(param.getWharfCode())); - BasDevp basDevp = basDevpService.selectById(staDesc.getStnNo()); - if (basDevp.getAutoing().equals("Y")){ + BasDevp basDevp = basDevpService.selectById(map.get(param.getWharfCode())); +// BasDevp basDevp = basDevpService.selectById(staDesc.getStnNo()); + if (basDevp.getAutoing().equals("Y") && (basDevp.getInEnable().equals("Y") || basDevp.getOutEnable().equals("Y"))){ apiLogService.save("AGV璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" ,request.getRemoteAddr()+request.getRequestURI() ,appkey @@ -208,7 +221,7 @@ ,R.ok().toString() ,true ); - return R.ok(); + return R.ok("鍙叆"); }else { apiLogService.save("AGV璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" ,request.getRemoteAddr()+request.getRequestURI() @@ -255,16 +268,30 @@ if (Cools.isEmpty(param.getEmptyContainer())){ return R.error("鏄惁绌烘墭鐩樹俊鍙蜂负绌猴紒"); } - if (Cools.isEmpty(param.getTargetWharf())){ - return R.error("鐩爣鐮佸ご鍖哄煙涓虹┖锛�");//G寮�澶�=7杞﹂棿锛孒寮�澶�=8灞傦紝J寮�澶�=9杞﹂棿 + if (!param.getTaskType().equals("YK")){ + if (Cools.isEmpty(param.getTargetWharf())){ + return R.error("鐩爣鐮佸ご鍖哄煙涓虹┖锛�");//G寮�澶�=7杞﹂棿锛孒寮�澶�=8灞傦紝J寮�澶�=9杞﹂棿 + } } + StaDesc staDesc = new StaDesc(); if (param.getTaskType().equals("CK") && param.getTargetWharf().contains("J")){ staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() - .eq("crn_no", param.getTaskTunnel()).eq("type_no",2).lt("crn_stn", 200)); + .eq("crn_no",param.getTaskTunnel()) + .eq("type_no",2) + .lt("stn_no",200)); + }else if (param.getTaskType().equals("CK") && param.getTargetWharf().contains("H")){ + staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() + .eq("crn_no",param.getTaskTunnel()) + .eq("type_no",2) + .lt("stn_no",400) + .gt("stn_no",200)); }else { staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() - .eq("crn_no", param.getTaskTunnel()).eq("type_no",2).ge("crn_stn", 200)); + .eq("crn_no",param.getTaskTunnel()) + .eq("type_no",2) + .lt("stn_no",500) + .ge("stn_no",400)); } param.setTargetLocationCode(staDesc.getStnNo().toString()); @@ -279,11 +306,11 @@ ,r.toString() ,true ); - return r; + } - return null; + return R.ok(); } //浠诲姟鍙栨秷鎺ュ彛 @@ -345,7 +372,78 @@ return R.error(); } } + @PostMapping("/getCrnStatus") + public R getCrnStatus(HttpServletRequest request){ + List<Integer> crnStatusDtos = new ArrayList<>(); + List<BasCrnp> crnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().orderBy("crn_no")); + for (BasCrnp basCrnp : crnps) { + // 琛ㄦ牸琛� + CrnStateTableVo vo = new CrnStateTableVo(); + vo.setCrnNo(basCrnp.getCrnNo()); // 鍫嗗灈鏈哄彿 + // 鑾峰彇鍫嗗灈鏈轰俊鎭� + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, basCrnp.getCrnNo()); + if (crnThread == null) { + continue; + } + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol == null) { + continue; + } + if (basCrnp.getOutEnable().equals("N")){ + continue; + } + if (crnProtocol.getAlarm() != 0){ + continue; + } + if (crnProtocol.getMode() != 3){ + continue; + } + + crnStatusDtos.add(basCrnp.getCrnNo()); + + } + return R.ok(crnStatusDtos); + } + +// @PostMapping("/getCrnStatus") +// public R getCrnStatus(HttpServletRequest request) { +// List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>()); +// if (Cools.isEmpty(basCrnps)){ +// return R.error("鏁版嵁搴撳紓甯革紝鍫嗗灈鏈哄垪琛ㄤ负绌�"); +// } +// List<CrnStatusDto> crnStatusDtos = new ArrayList<>(); +// for (BasCrnp basCrnp : basCrnps){ +// CrnStatusDto crnStatusDto = new CrnStatusDto(); +// crnStatusDto.setCrnNo(basCrnp.getCrnNo()); +// if (basCrnp.getOutEnable().equals("N")){ +// crnStatusDto.setCrnStatus(500); +// crnStatusDto.setCrnErrMsg("鍫嗗灈鏈哄嚭搴撹绂佺敤"); +// crnStatusDtos.add(crnStatusDto); +// continue; +// } +// if (basCrnp.getCrnErr() != 0){ +// crnStatusDto.setCrnStatus(500); +// crnStatusDto.setCrnErrMsg("鍫嗗灈鏈哄浜庢姤璀︾姸鎬�"); +// crnStatusDtos.add(crnStatusDto); +// continue; +// } +// if (basCrnp.getCrnSts() != 3){ +// crnStatusDto.setCrnStatus(500); +// crnStatusDto.setCrnErrMsg("鍫嗗灈鏈哄浜庨潪鑷姩鐘舵��"); +// crnStatusDtos.add(crnStatusDto); +// continue; +// } +// +// crnStatusDto.setCrnStatus(200); +// crnStatusDto.setCrnErrMsg(""); +// crnStatusDtos.add(crnStatusDto); +// +// +// } +// +// return R.ok(crnStatusDtos); +// } } -- Gitblit v1.9.1