From 9c86cce3943842ed28f3acd48c33c76cb93b57e5 Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期三, 06 三月 2024 18:04:19 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/OpenController.java | 212 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 126 insertions(+), 86 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index ada0552..283d0c7 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -1,7 +1,6 @@ package com.zy.asrs.controller; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.annotations.AppAuth; import com.core.common.BaseRes; @@ -9,11 +8,11 @@ import com.core.common.R; import com.core.exception.CoolException; import com.zy.asrs.entity.*; +import com.zy.asrs.entity.param.CarryParam; import com.zy.asrs.entity.param.TaskOverParam; import com.zy.asrs.entity.param.WMSAndAGVInterfaceParam; -import com.zy.asrs.entity.param.taskCreateParam; +import com.zy.asrs.entity.param.TaskCreateParam; import com.zy.asrs.service.*; -import com.zy.common.utils.HttpHandler; import com.zy.common.web.BaseController; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -23,10 +22,7 @@ import javax.servlet.http.HttpServletRequest; import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; @Slf4j @RestController @@ -45,9 +41,12 @@ private BasDevpService basDevpService; @Autowired private ApiLogService apiLogService; - + @Autowired + private BasCrnpService basCrnpService; @Autowired private StaDescService staDescService; + @Autowired + private LocMastService locMastService; @Value("${wms.url}") private String wmsUrl; @@ -80,9 +79,11 @@ //鍒涘缓浠诲姟 @PostMapping("/taskCreate") public R taskCreate(@RequestHeader String appkey, - @RequestBody taskCreateParam param, + @RequestBody List<TaskCreateParam> param1, HttpServletRequest request) { - auth(appkey, param, request); + auth(appkey, param1, request); + for (TaskCreateParam param : param1 + ) { if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } @@ -95,7 +96,21 @@ if (Cools.isEmpty(param.getBarcode())) { return R.error("鏉$爜[barcode]涓嶈兘涓虹┖"); } + String locNo=null; + if(param.getIoType()==1){ + locNo=param.getTargetPoint(); + }else{ + locNo=param.getStartPoint(); + } + LocMast locMast=locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_sts","F") + .eq("loc_no",locNo) + .eq("barcode",param.getBarcode())); + if(Cools.isEmpty(locMast)){ + return R.error("璇ュ簱浣嶄笉婊′綇鍑哄簱鏉′欢"+param.getTargetPoint()); + } openService.taskCreate(param); + } return R.ok(); } @@ -185,22 +200,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 @@ -209,7 +228,7 @@ ,R.ok().toString() ,true ); - return R.ok(); + return R.ok("鍙叆"); }else { apiLogService.save("AGV璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" ,request.getRemoteAddr()+request.getRequestURI() @@ -232,59 +251,68 @@ @PostMapping("/outboundTaskSend") @Transactional public R outboundTaskSend(@RequestHeader String appkey, - @RequestBody List<WMSAndAGVInterfaceParam> params, + @RequestBody List<CarryParam> params, HttpServletRequest request) { - auth(appkey, params, request); + //auth(appkey, params, request); List<WMSAndAGVInterfaceParam> params1 =new ArrayList<>(); - for (WMSAndAGVInterfaceParam param:params){ + for (CarryParam param:params){ - if (Cools.isEmpty(param)){ - return R.error("鍙傛暟涓虹┖锛�"); - } else if (Cools.isEmpty(param.getTaskNo())){ - return R.error("浠诲姟鍙蜂负绌猴紒"); - } else if (Cools.isEmpty(param.getTaskType())){ - return R.error("浠诲姟绫诲瀷涓虹┖锛�"); - } else if (Cools.isEmpty(param.getWarehouseId())){ - return R.error("浠撳簱鏍囪瘑涓虹┖锛�"); - } - if (Cools.isEmpty(param.getTaskPriority())){ - param.setTaskPriority(1); - } - if (Cools.isEmpty(param.getContainerCode())){ - return R.error("瀹瑰櫒缂栫爜(鎵樼洏鐮�)涓虹┖锛�"); - } - if (Cools.isEmpty(param.getEmptyContainer())){ - return R.error("鏄惁绌烘墭鐩樹俊鍙蜂负绌猴紒"); - } - 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)); - }else { - staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() - .eq("crn_no", param.getTaskTunnel()).eq("type_no",2).ge("crn_stn", 200)); - } - param.setTargetLocationCode(staDesc.getStnNo().toString()); + if (Cools.isEmpty(param)){ + return R.error("鍙傛暟涓虹┖锛�"); + } else if (Cools.isEmpty(param.getTaskNo())){ + return R.error("浠诲姟鍙蜂负绌猴紒"); + } else if (Cools.isEmpty(param.getIoType())){ + return R.error("浠诲姟绫诲瀷涓虹┖锛�"); + } + if (Cools.isEmpty(param.getStartPoint()) || Cools.isEmpty(param.getTargetPoint())){ + return R.error("鍒濆鐩爣鎴栬�呯洰鏍囦綅涓虹┖"); + } +// if (Cools.isEmpty(param.getContainerCode())){ +// return R.error("瀹瑰櫒缂栫爜(鎵樼洏鐮�)涓虹┖锛�"); +// } +// if (Cools.isEmpty(param.getEmptyContainer())){ +// return R.error("鏄惁绌烘墭鐩樹俊鍙蜂负绌猴紒"); +// } +// if (!param.getTaskType().equals("YK")){ +// if (Cools.isEmpty(param.getTargetWharf())){ +// return R.error("鐩爣鐮佸ご鍖哄煙涓虹┖锛�");//G寮�澶�=7杞﹂棿锛孒寮�澶�=8灞傦紝J寮�澶�=9杞﹂棿 +// } +// } + LocMast locMast = locMastService.selectByLocNo(param.getStartPoint()); + if(Cools.isEmpty(locMast)){ + return R.error("鍒濆搴撲綅鏃犳硶鎵惧埌"); + } - R r = openService.taskCreate(new taskCreateParam(param)); + R r = null; - apiLogService.save("Wms浠诲姟涓嬪彂鎺ュ彛" - ,request.getRemoteAddr()+request.getRequestURI() - ,appkey - ,request.getRemoteAddr() - ,JSON.toJSONString(param) - ,r.toString() - ,true - ); - return r; + if(param.getIoType() == 2){ + //鍑哄簱浠诲姟鍒涘缓 + StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() + .eq("type_no",2) + .eq("crn_no",locMast.getCrnNo()) + .eq("stn_no",param.getTargetPoint())); + if(Cools.isEmpty(staDesc)){ + return R.error("鍑哄簱璺姴涓嶅瓨鍦�"); + } + r = openService.taskCreate(new TaskCreateParam(param,staDesc.getCrnNo())); + }else if (param.getIoType() == 3){ + //绉诲簱浠诲姟鍒涘缓 + r = openService.taskCreate(new TaskCreateParam(param,locMast.getCrnNo())); + } + + apiLogService.save("Wms浠诲姟涓嬪彂鎺ュ彛" + ,request.getRemoteAddr()+request.getRequestURI() + ,appkey + ,request.getRemoteAddr() + ,JSON.toJSONString(param) + ,r.toString() + ,true + ); } - return null; + return R.ok(); } //浠诲姟鍙栨秷鎺ュ彛 @@ -292,39 +320,34 @@ public R taskCancel(@RequestHeader String appkey, @RequestBody WMSAndAGVInterfaceParam param, HttpServletRequest request) { + auth(appkey, param, request); if (Cools.isEmpty(param)){ return R.error("鍙傛暟涓虹┖锛�"); } else if (Cools.isEmpty(param.getTaskNo())){ return R.error("宸ヤ綔鍙蜂负绌猴紒"); - } else if (Cools.isEmpty(param.getTaskStatus())){ + } else if (Cools.isEmpty(param.getIoType())){ return R.error("鎿嶄綔绫诲瀷涓虹┖锛�"); + } else if (Cools.isEmpty(param.getBarcode())){ + return R.error("鎵樼洏鐮佷笉鑳戒负绌猴紒"); } -// else if (Cools.isEmpty(param.getWarehouseId())){ -// return R.error("浠撳簱鏍囪瘑涓虹┖锛�"); -// } - TaskWrk taskWrk = taskWrkService.selectOne(new EntityWrapper<TaskWrk>().eq("task_no", param.getTaskNo())); + TaskWrk taskWrk = taskWrkService.selectOne(new EntityWrapper<TaskWrk>() + .eq("task_no", param.getTaskNo()) + .eq("io_type",param.getIoType()) + .eq("barcode",param.getBarcode())); if (Cools.isEmpty(taskWrk)){ - return R.error("鏈煡鍒板綋鍓嶄换鍔�"); + return R.error("鏈煡鍒板綋鍓嶄换鍔�---"+param); } boolean sign =false; switch (param.getTaskStatus()){ case 1://姝e父鍙栨秷 - if (taskWrk.getWrkSts()>1){ + if (taskWrk.getStatus()>1){ return R.error("浠诲姟宸插紑濮嬫墽琛�"); - } - case 2://寮哄埗鍙栨秷 - if (taskWrk.getWrkSts()>3){ - return R.error("浠诲姟宸叉墽琛屽畬鎴�"); } break; - case 3://姝e父瀹屾垚 - if (taskWrk.getWrkSts()>11){ + case 2://姝e父瀹屾垚 + if (taskWrk.getStatus()>1){ return R.error("浠诲姟宸插紑濮嬫墽琛�"); - } - case 4://寮哄埗瀹屾垚 - if (taskWrk.getWrkSts()>14){ - return R.error("浠诲姟宸叉墽琛屽畬鎴�"); } sign=true; break; @@ -347,6 +370,23 @@ } } + //璁惧鐘舵�佹煡璇㈡帴鍙� + @PostMapping("/deviceStatus") + @Transactional + public R deviceStatus(@RequestHeader String appkey, + HttpServletRequest request) { + auth(appkey, "璁惧鐘舵�佹煡璇㈡帴鍙�", request); + List<BasDevp> basDevps = basDevpService.selectList(new EntityWrapper<>()); + List<Object> list = new ArrayList<>(); + for (BasDevp basDevp:basDevps){ + list.add(basDevp); + } + List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<>()); + for (BasCrnp basCrnp:basCrnps){ + list.add(basCrnp); + } + return R.ok(list); + } } -- Gitblit v1.9.1