using Microsoft.AspNetCore.Mvc;
using NewLife.Net;
using WIDESEA_DTO.AGV;
using WIDESEA_IStoragIntegrationServices;
using WIDESEA_StorageSocketServices;
namespace WIDESEA_WMSServer.Controllers
{
///
/// AGV操作接口
///
[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;
}
///
/// 请求入库任务
///
///
///
///
[HttpGet, HttpPost, Route("RequestInTask"), AllowAnonymous]
public WebResponseContent RequestInTask([FromBody] AGVDTO aGVDTO)
{
return _service.RequestInTask(aGVDTO);
}
///
/// AGV状态
///
///
///
[HttpGet, HttpPost, Route("ReceiveAGVRuntimeStatus"), AllowAnonymous]
public WebResponseContent ReceiveAGVRuntimeStatus([FromBody] AGVStatus Status)
{
return _service.ReceiveAGVRuntimeStatus(Status);
}
///
/// AGV任务开始或结束
///
///
///
///
[HttpGet, HttpPost, Route("AGVStartOrEndJob"), AllowAnonymous]
public WebResponseContent AGVStartOrEndJob([FromBody] AGVDTO aGVDTO)
{
return _service.AGVStartOrEndJob(aGVDTO);
}
///
/// 设备状态上报
///
///
///
///
[HttpGet, HttpPost, Route("DeviceErrorResponse"), AllowAnonymous]
public WebResponseContent DeviceErrorResponse([FromBody] AGVDTO aGVDTO)
{
return _service.DeviceErrorResponse(aGVDTO);
}
///
/// 设备异常上报
///
///
///
///
[HttpGet, HttpPost, Route("DeviceWarning"), AllowAnonymous]
public WebResponseContent DeviceWarning([FromBody] AGVDTO DTO)
{
return _service.DeviceWarning(DTO);
}
}
}