From 6efef82561e2cf14f09871d63e1581c6174cfe10 Mon Sep 17 00:00:00 2001 From: zwl <1051256694@qq.com> Date: 星期三, 25 六月 2025 15:01:53 +0800 Subject: [PATCH] 第二版本 --- src/main/java/com/zy/asrs/controller/MobileController.java | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 108 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java index 9568608..2955095 100644 --- a/src/main/java/com/zy/asrs/controller/MobileController.java +++ b/src/main/java/com/zy/asrs/controller/MobileController.java @@ -1,5 +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.baomidou.mybatisplus.mapper.Wrapper; @@ -12,20 +13,31 @@ import com.zy.asrs.entity.param.CombParam; import com.zy.asrs.entity.param.MobileAdjustParam; import com.zy.asrs.entity.param.OffSaleParam; +import com.zy.asrs.entity.param.RCSParam; import com.zy.asrs.entity.result.MobileAdjustResult; import com.zy.asrs.mapper.ManLocDetlMapper; import com.zy.asrs.service.*; +import com.zy.asrs.task.WorkMastScheduler; import com.zy.common.model.LocDto; import com.zy.common.model.TaskDto; import com.zy.common.model.WrkDto; import com.zy.common.model.enums.WorkNoType; import com.zy.common.service.CommonService; +import com.zy.common.utils.HttpHandler; import com.zy.common.web.BaseController; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; +import javax.xml.crypto.Data; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.*; + +import static jdk.nashorn.internal.runtime.regexp.joni.Config.log; /** * 绉诲姩绔帴鍙f帶鍒跺櫒 @@ -34,6 +46,7 @@ @RestController @RequestMapping("mobile") public class MobileController extends BaseController { + private static final Logger log = LoggerFactory.getLogger(WorkMastScheduler.class); @Autowired private MobileService mobileService; @@ -61,6 +74,12 @@ private CommonService commonService; @Autowired private StaDescService staDescService; + @Autowired + private ApiLogService apiLogService; + @Value("${rcs.address.url}") + private String url; + @Value("${rcs.address.attrcs}") + private String attrcs; // 鍟嗗搧涓婃灦 @@ -323,6 +342,95 @@ return R.ok(); } + /** + * agv鎵弿婧愮珯鐐规樉绀虹洰鏍囩珯鐐� + * @param locNo + * @return + */ + @RequestMapping("/AGVSite") + public R AGVSite(@RequestParam(required = false) String locNo){ + HashMap<Integer,String> map=new HashMap<>(); + map.put(100,"100-鍏ュ簱鍙�"); + map.put(1001,"1000-琛ョ┖鏉垮彛"); + map.put(2001,"2001-鍑哄簱鍙�1"); + map.put(2002,"2002-鍑哄簱鍙�2"); + map.put(3001,"3001-浣滀笟鍙�1"); + map.put(3002,"3002-浣滀笟鍙�2"); + map.put(4001,"4001-涓嶅悎鏍�"); + map.remove(Integer.parseInt(locNo)); + return R.ok(map); + } + + /** + * 鎵ц绉诲簱浠诲姟 + * @param sourceStaNo + * @param staNo + * @return + */ + @RequestMapping("/AGVMove") + public R AGVMove(@RequestParam(required = false) String sourceStaNo + ,@RequestParam(required = false) String staNo){ + LocalDateTime now = LocalDateTime.now(); + String noww=new Date().getTime()+""; + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + String formattedDate = now.format(formatter); // 鏍煎紡鍖栨棩鏈熸椂闂� + + LinkedHashMap<String,Object> rcsParam=new LinkedHashMap<>(); + rcsParam.put("task_id",noww); + rcsParam.put("start_location",sourceStaNo); + rcsParam.put("start_site_level",1); + rcsParam.put("start_command",1); + rcsParam.put("target_location",staNo); + rcsParam.put("target_site_level",1); + rcsParam.put("target_command",2); + rcsParam.put("priority",1); + rcsParam.put("robot_type",3);//杞� 杈� 绫� 鍨� 0:XC 1:XCD 2:XP_T 3:XP_L + rcsParam.put("MoverID","XS1"); + + LinkedHashMap<String,Object> map=new LinkedHashMap<>(); + map.put("data",rcsParam); + String response =""; + Boolean bool =false; + String msg = ""; + + try { + log.info("wms娲惧彂鎼繍浠诲姟缁橝GV鎼繍={}", rcsParam); + response = new HttpHandler.Builder() + // .setHeaders(headParam) + .setUri(url) + .setPath(attrcs) + .setJson(JSON.toJSONString(map)) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + JSONObject data = jsonObject.getJSONObject("data"); + JSONObject errInfo = jsonObject.getJSONObject("err_info"); + if(data.getInteger("result")==0){ + bool = true; + }else{ + msg=errInfo.getString("err_msg"); + } + } catch (Exception e) { + log.error("wms娲惧彂鎼繍浠诲姟缁橝GV鎼繍澶辫触杩斿洖鍊�={}", response); + } finally { + apiLogService.save("wms娲惧彂鎼繍浠诲姟缁橝GV鎼繍" + , url + attrcs + , null + , "127.0.0.1" + , JSON.toJSONString(map) + , response + , bool + ); + } + if(bool){ + return R.ok(); + }else { + return R.error(msg); + } + + } + + // 鏍规嵁搴撲綅鐮佸拰鍟嗗搧鐮佹悳绱㈠晢鍝� @RequestMapping("/mat/find/auth") public R find(@RequestParam(required = false) String locNo -- Gitblit v1.9.1