From 7ea6501464a8df3cad55c21e04b606e88d7b8580 Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期一, 05 五月 2025 15:41:45 +0800 Subject: [PATCH] 呼叫AGV搬运 --- src/main/java/com/zy/asrs/controller/MobileController.java | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 111 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..75264dd 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,30 @@ 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 java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.*; + +import static jdk.nashorn.internal.runtime.regexp.joni.Config.log; /** * 绉诲姩绔帴鍙f帶鍒跺櫒 @@ -34,6 +45,7 @@ @RestController @RequestMapping("mobile") public class MobileController extends BaseController { + private static final Logger log = LoggerFactory.getLogger(WorkMastScheduler.class); @Autowired private MobileService mobileService; @@ -61,6 +73,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 +341,99 @@ 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(1000,"1000-琛ョ┖鏉垮彛"); + map.put(2001,"2001-鍑哄簱鍙�1"); + map.put(2002,"2002-鍑哄簱鍙�2"); + map.put(3001,"3001-浣滀笟鍙�1"); + map.put(3002,"3002-浣滀笟鍙�2"); + 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){ + RCSParam rcsParam = new RCSParam(); + LocalDateTime now = LocalDateTime.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃� HH:mm:ss"); + String formattedDate = now.format(formatter); // 鏍煎紡鍖栨棩鏈熸椂闂� + //缃戠粶娴佹按鍙� + rcsParam.setReqId(now.toString()); + //搴旂敤鏍囪瘑 + rcsParam.setClientId("WMS"); + //閫氱煡鏃堕棿 + rcsParam.setReqTime(formattedDate); + RCSParam.DataBody dataBody=new RCSParam.DataBody(); + //浠诲姟鍙� + dataBody.setId(formattedDate); + + List<RCSParam.TaskBody> taskBodyList=new ArrayList<>(); + RCSParam.TaskBody taskBody=new RCSParam.TaskBody(); + //鍙栬揣绫诲瀷 + taskBody.setType("load"); + taskBody.setStation(sourceStaNo); + taskBodyList.add(taskBody); + + RCSParam.TaskBody taskBody1=new RCSParam.TaskBody(); + //鏀捐揣绫诲瀷 + taskBody1.setType("unload"); + taskBody1.setStation(staNo); + taskBodyList.add(taskBody1); + + dataBody.setTasks(taskBodyList); + rcsParam.setData(dataBody); + String response =""; + Boolean bool =false; + + try { + log.info("wms娲惧彂鎼繍浠诲姟缁橝GV鎼繍={}", rcsParam); + response = new HttpHandler.Builder() + // .setHeaders(headParam) + .setUri(url) + .setPath(attrcs) + .setJson(JSON.toJSONString(rcsParam)) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + if(jsonObject.getBoolean("IsSuccess")){ + bool = true; + } + } catch (Exception e) { + log.error("wms娲惧彂鎼繍浠诲姟缁橝GV鎼繍澶辫触杩斿洖鍊�={}", response); + } finally { + apiLogService.save("wms娲惧彂鎼繍浠诲姟缁橝GV鎼繍" + , url + attrcs + , null + , "127.0.0.1" + , JSON.toJSONString(rcsParam) + , response + , bool + ); + } + if(bool){ + return R.ok(); + }else { + return R.error("涓嬪彂浠诲姟澶辫触"); + } + + } + + // 鏍规嵁搴撲綅鐮佸拰鍟嗗搧鐮佹悳绱㈠晢鍝� @RequestMapping("/mat/find/auth") public R find(@RequestParam(required = false) String locNo -- Gitblit v1.9.1