AcsService.java
4.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
package com.huaheng.api.ACS.service;
import com.alibaba.fastjson.JSON;
import com.huaheng.api.ACS.domain.AvgTaskModel;
import com.huaheng.common.utils.DataUtils;
import com.huaheng.common.utils.http.HttpUtils;
import com.huaheng.framework.aspectj.lang.annotation.Log;
import com.huaheng.framework.aspectj.lang.constant.BusinessType;
import com.huaheng.framework.web.domain.AjaxResult;
import com.huaheng.pc.task.task.service.ITaskService;
import com.huaheng.pc.task.taskDetail.domain.TaskDetail;
import com.huaheng.pc.task.taskDetail.service.ITaskDetailService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
@Service
public class AcsService {
@Autowired
private ITaskService taskService;
@Autowired
private ITaskDetailService taskDetailService;
final String interactionId = "6EAB7794-CFD7-449A-A754-FFDB98CE44C7";
/**
* AGV 任务下发
*/
// @RequiresPermissions("api:acs:TaskAssign")
@Log(title = "AGV 任务下发", action = BusinessType.INSERT)
@PostMapping("/TaskAssign")
@ResponseBody
public AjaxResult TaskAssign(String url)
{
TaskDetail taskDetail = new TaskDetail();
taskDetail.setZoneCode("AGV");
taskDetail.setDeleted(false);
taskDetail = taskDetailService.selectFirstEntity(taskDetail);
AvgTaskModel model = new AvgTaskModel();
model.setInteractionId(interactionId);
model.setTaskHeaderId(taskDetail.getTaskId());
model.setTaskDetailId(taskDetail.getId());
model.setTaskType("putway");
model.setShelfNo(taskDetail.getContainerCode());
model.setState("0");
model.setFromLocationNo(taskDetail.getSourceLocation());
model.setToLocationNo(taskDetail.getDestinationLocation());
model.setOrientation("A");
model.setPlatform("wms");
String JsonParam = JSON.toJSONString(model);
String result = HttpUtils.sendPost(url, JsonParam);
AjaxResult ajaxResult = JSON.parseObject(result, AjaxResult.class);
return ajaxResult;
}
/**
* AGV 任务取消
*/
// @RequiresPermissions("api:acs:TaskCancel")
@Log(title = "AGV 任务取消", action = BusinessType.DELETE)
@PostMapping("/TaskCancel")
@ResponseBody
public AjaxResult TaskCancel(String url)
{
Map<String, Object> map = new HashMap<>();
map.put("interactionId", interactionId);
map.put("reason", "取消任务");
String JsonParam = JSON.toJSONString(map);
String result = HttpUtils.sendPost(url, JsonParam);
AjaxResult ajaxResult = JSON.parseObject(result, AjaxResult.class);
return ajaxResult;
}
/**
* AGV 信息查询
*/
// @RequiresPermissions("api:acs:StateInfoGET")
@Log(title = "AGV 信息查询", action = BusinessType.OTHER)
@PostMapping("StateInfoGET")
@ResponseBody
public AjaxResult StateInfoGET(String url)
{
Map<String, String> map = new HashMap<>();
map.put("carNo", "");
map.put("interactionId", interactionId);
String JsonParam = JSON.toJSONString(map);
String result = HttpUtils.sendPost(url, JsonParam);
AjaxResult ajaxResult = JSON.parseObject(result, AjaxResult.class);
return ajaxResult;
}
/**
* AGV 旋转方向
*/
// @RequiresPermissions("api:acs:TurnOriention")
@Log(title = "AGV 旋转方向", action = BusinessType.UPDATE)
@PostMapping("/TurnOriention")
@ResponseBody
public AjaxResult TurnOriention(String url)
{
Map<String, String> map = new HashMap<>();
map.put("carNo", "");
map.put("orientation", interactionId);
String JsonParam = JSON.toJSONString(map);
String result = HttpUtils.sendPost(url, JsonParam);
AjaxResult ajaxResult = JSON.parseObject(result, AjaxResult.class);
return ajaxResult;
}
}