using Autofac.Core;
|
using Microsoft.AspNetCore.Authorization;
|
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Mvc;
|
using System.Threading.Tasks;
|
using WIDESEAWCS_Core;
|
using WIDESEAWCS_DTO.WMS;
|
using WIDESEAWCS_IBasicInfoService;
|
using WIDESEAWCS_ITaskInfoService;
|
|
namespace WIDESEAWCS_Server.Controllers.WMS
|
{
|
[Route("api/[controller]")]
|
[ApiController]
|
public class WMSController : ControllerBase
|
{
|
private readonly ITaskService _taskService;
|
private readonly IStationMangerService _stationMangerService;
|
public WMSController(ITaskService taskService, IStationMangerService stationMangerService)
|
{
|
_taskService = taskService;
|
_stationMangerService = stationMangerService;
|
}
|
|
/// <summary>
|
/// WMS下发任务
|
/// </summary>
|
/// <param name="taskDTOs"></param>
|
/// <returns></returns>
|
[HttpPost, Route("ReceiveTask"), AllowAnonymous]
|
public WMSReturn ReceiveWMSTask([FromBody] List<WMSTasksDTO> taskDTOs)
|
{
|
WebResponseContent content = _taskService.ReceiveWMSTask(taskDTOs);
|
return WMSReturnMethod.ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 容器流动请求
|
/// </summary>
|
/// <param name="taskDTOs"></param>
|
/// <returns></returns>
|
[HttpPost, Route("ContainerRequest"), AllowAnonymous]
|
public WMSReturn ContainerRequest([FromBody] WMSContainerFlow wMSContainerFlow)
|
{
|
WebResponseContent content = _taskService.ContainerRequest(wMSContainerFlow);
|
return WMSReturnMethod.ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 取消任务
|
/// </summary>
|
/// <param name="wMSCancelTask"></param>
|
/// <returns></returns>
|
[HttpPost, Route("CancelWMSTask"), AllowAnonymous]
|
public WMSReturn CancelWMSTask([FromBody] WMSCancelTask wMSCancelTask)
|
{
|
WebResponseContent content = _taskService.CancelWMSTask(wMSCancelTask);
|
return WMSReturnMethod.ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 质检结果反馈
|
/// </summary>
|
/// <param name="iQC"></param>
|
/// <returns></returns>
|
[HttpPost, Route("IQCResult"), AllowAnonymous]
|
public WMSReturn IQCResult([FromBody] IQCResultDTO iQC)
|
{
|
WebResponseContent content = _taskService.IQCResult(iQC);
|
return WMSReturnMethod.ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 修改库位分区
|
/// </summary>
|
/// <param name="WMSUpdateLocationArea"></param>
|
/// <returns></returns>
|
[HttpPost, Route("UpdateArea"), AllowAnonymous]
|
public WMSReturn UpdateArea([FromBody] WMSUpdateLocationArea wMSUpdateLocationArea)
|
{
|
WebResponseContent content = _taskService.ModifyWMSLayoutZone(wMSUpdateLocationArea);
|
return WMSReturnMethod.ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 修改任务优先级
|
/// </summary>
|
/// <param name="updateTaskPriority"></param>
|
/// <returns></returns>
|
[HttpPost, Route("UpdateTaskGrade"), AllowAnonymous]
|
public WMSReturn UpdateTaskGrade([FromBody] WMSUpdateTaskPriority updateTaskPriority)
|
{
|
WebResponseContent content = _taskService.UpdateWMSTaskPriority(updateTaskPriority);
|
return WMSReturnMethod.ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 区域库位信息查询
|
/// </summary>
|
/// <param name="AreaCode">区域号</param>
|
/// <returns></returns>
|
[HttpPost, Route("QueryStation"), AllowAnonymous]
|
public WMSReturn QueryStation(string AreaCode)
|
{
|
WebResponseContent content = _taskService.LocationInquiry(AreaCode);
|
return WMSReturnMethod.ReturnWMS(content);
|
}
|
}
|
}
|