1
huangxiaoqiang
2025-05-26 41702c7ce4c88ad70f52d83d153dd4c596ff69d5
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
using Microsoft.AspNetCore.Mvc;
using NewLife.Net;
using WIDESEA_DTO.AGV;
using WIDESEA_IStoragIntegrationServices;
using WIDESEA_StorageSocketServices;
 
namespace WIDESEA_WMSServer.Controllers
{
    /// <summary>
    /// AGV操作接口
    /// </summary>
    [Route("api/[controller]")]
    [ApiController]
    public class AGVController : Controller
    {
        private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly IAGVService _service;
 
        public AGVController(IAGVService service, IHttpContextAccessor httpContextAccessor)
        {
            _httpContextAccessor = httpContextAccessor;
            _service = service;
        }
        /// <summary>
        /// 请求入库任务
        /// </summary>
        /// <param name="TaskNum"></param>
        /// <param name="SourceAddress"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("RequestInTask"), AllowAnonymous]
        public WebResponseContent RequestInTask([FromBody] AGVDTO aGVDTO)
        {
            return _service.RequestInTask(aGVDTO);
        }
 
        /// <summary>
        /// AGV状态
        /// </summary>
        /// <param name="Status"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("ReceiveAGVRuntimeStatus"), AllowAnonymous]
        public WebResponseContent ReceiveAGVRuntimeStatus([FromBody] AGVStatus Status)
        {
            return _service.ReceiveAGVRuntimeStatus(Status);
        }
 
        /// <summary>
        /// AGV任务开始或结束
        /// </summary>
        /// <param name="Status"></param>
        /// <param name="TaskNum"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("AGVStartOrEndJob"), AllowAnonymous]
        public WebResponseContent AGVStartOrEndJob([FromBody] AGVDTO aGVDTO)
        {
            return _service.AGVStartOrEndJob(aGVDTO);
        }
 
        /// <summary>
        /// 设备状态上报
        /// </summary>
        /// <param name="Message"></param>
        /// <param name="PallteCode"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("DeviceErrorResponse"), AllowAnonymous]
        public WebResponseContent DeviceErrorResponse([FromBody] AGVDTO aGVDTO)
        {
            return _service.DeviceErrorResponse(aGVDTO);
        }
    }
}