| | |
| | | import com.zy.asrs.utils.RouteUtils; |
| | | import com.zy.asrs.utils.Utils; |
| | | import com.zy.asrs.utils.VersionUtils; |
| | | import com.zy.common.constant.AgvSiteConstant; |
| | | import com.zy.common.model.LocTypeDto; |
| | | import com.zy.common.model.MatDto; |
| | | import com.zy.common.model.SearchLocParam; |
| | |
| | | import com.zy.core.model.protocol.CrnProtocol; |
| | | import com.zy.core.model.protocol.StaProtocol; |
| | | import com.zy.core.properties.SlaveProperties; |
| | | import com.zy.core.thread.BarcodeThread; |
| | | import com.zy.core.thread.LedThread; |
| | | import com.zy.core.thread.SiemensDevpThread; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | } |
| | | ForwardAGVTaskParam forwardAGVTaskParam = new ForwardAGVTaskParam(); |
| | | getAgvTaskParam(forwardAGVTaskParam,wrkMast,staProtocol.getSiteId()); |
| | | String request = forwardAGVHttpRequest(forwardAGVTaskParam, "10.0.100.110:8182", "/rcms/services/rest/hikRpcService/genAgvSchedulingTask"); |
| | | String request = forwardAGVHttpRequest(wrkMast.getStaNo(),forwardAGVTaskParam, "10.0.100.110:8182", "/rcms/services/rest/hikRpcService/genAgvSchedulingTask"); |
| | | if ("SUCCESS".equals(request)) { |
| | | wrkMast.setWrkSts(14L); |
| | | boolean update = wrkMastService.updateById(wrkMast); |
| | |
| | | |
| | | } |
| | | |
| | | private String forwardAGVHttpRequest(Object requestParam, String url, String path){ |
| | | private String forwardAGVHttpRequest(int sta, Object requestParam, String url, String path){ |
| | | // 先绑定 |
| | | boolean flag = bindPodAndBerth(String.valueOf(sta)); |
| | | if (!flag) { |
| | | return "error"; |
| | | } |
| | | String response = ""; |
| | | String success = "error"; |
| | | try { |
| | |
| | | } |
| | | return success; |
| | | } |
| | | private boolean bindPodAndBerth(String sta) { |
| | | String staMap = AgvSiteConstant.SiteMap.get(sta); |
| | | if (staMap == null) { |
| | | log.error("没有找到该站点的入库映射:{}",sta); |
| | | return false; |
| | | } |
| | | JSONObject jsonObject = new JSONObject(); |
| | | jsonObject.put("reqCode",UUID.randomUUID().toString().replace("-", "")); // 请求唯一值 |
| | | jsonObject.put("ctnrTyp","2"); // 容器类型2 |
| | | jsonObject.put("stgBinCode",staMap); // 仓位编号,根据客仓编号转换 |
| | | jsonObject.put("indBind","1"); // 1绑定,0解绑 |
| | | |
| | | String body = jsonObject.toJSONString(); |
| | | String response = ""; |
| | | boolean success = false; |
| | | String url = "10.0.100.110:8182"; |
| | | String path = "/rcms/services/rest/hikRpcService/bindCtnrAndBin"; |
| | | try { |
| | | response = new HttpHandler.Builder() |
| | | .setUri(url) |
| | | .setPath(path) |
| | | .setJson(body) |
| | | .build() |
| | | .doPost(); |
| | | JSONObject res = JSON.parseObject(response); |
| | | if (res.getInteger("code").equals(0)) { |
| | | success = true; |
| | | } else { |
| | | log.error("出库调用agv绑定仓位失败!!!url:{};request:{};response:{}", url + path, body, response); |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("出库调用agv绑定仓位异常", e); |
| | | } finally { |
| | | // try { |
| | | // 保存接口日志 |
| | | // apiLogService.save( |
| | | // "调用agv绑定仓位", |
| | | // ApiInterfaceConstant.AGV_IP + ApiInterfaceConstant.AGV_BIND_PATH, |
| | | // null, |
| | | // "127.0.0.1", |
| | | // body, |
| | | // response, |
| | | // success |
| | | // ); |
| | | // } catch (Exception e) { |
| | | // log.error("", e); |
| | | // } |
| | | } |
| | | return success; |
| | | } |
| | | |
| | | |
| | | |