| | |
| | | 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.*; |
| | |
| | | public R AGVSite(@RequestParam(required = false) String locNo){ |
| | | HashMap<Integer,String> map=new HashMap<>(); |
| | | map.put(100,"100-入库口"); |
| | | map.put(1000,"1000-补空板口"); |
| | | 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); |
| | | } |
| | |
| | | @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年MM月dd日 HH:mm:ss"); |
| | | String noww=new Date().getTime()+""; |
| | | DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd 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); |
| | | 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"); |
| | | |
| | | RCSParam.TaskBody taskBody1=new RCSParam.TaskBody(); |
| | | //放货类型 |
| | | taskBody1.setType("unload"); |
| | | taskBody1.setStation(staNo); |
| | | taskBodyList.add(taskBody1); |
| | | |
| | | dataBody.setTasks(taskBodyList); |
| | | rcsParam.setData(dataBody); |
| | | LinkedHashMap<String,Object> map=new LinkedHashMap<>(); |
| | | map.put("data",rcsParam); |
| | | String response =""; |
| | | Boolean bool =false; |
| | | String msg = ""; |
| | | |
| | | try { |
| | | log.info("wms派发搬运任务给AGV搬运={}", rcsParam); |
| | |
| | | // .setHeaders(headParam) |
| | | .setUri(url) |
| | | .setPath(attrcs) |
| | | .setJson(JSON.toJSONString(rcsParam)) |
| | | .setJson(JSON.toJSONString(map)) |
| | | .build() |
| | | .doPost(); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | if(jsonObject.getBoolean("IsSuccess")){ |
| | | 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派发搬运任务给AGV搬运失败返回值={}", response); |
| | |
| | | , url + attrcs |
| | | , null |
| | | , "127.0.0.1" |
| | | , JSON.toJSONString(rcsParam) |
| | | , JSON.toJSONString(map) |
| | | , response |
| | | , bool |
| | | ); |
| | |
| | | if(bool){ |
| | | return R.ok(); |
| | | }else { |
| | | return R.error("下发任务失败"); |
| | | return R.error(msg); |
| | | } |
| | | |
| | | } |