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;
|
}
|
|
|
public WMSReturn ReturnWMS(WebResponseContent content, int successCode = 0, int failCode = 404)
|
{
|
return new WMSReturn
|
{
|
code = content.Status ? successCode : failCode,
|
msg = content.Message ?? (content.Status ? "操作成功" : "操作失败"),
|
data = content.Status ? content.Data : null
|
};
|
}
|
|
|
/// <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 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 ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 修改任务优先级
|
/// </summary>
|
/// <param name="updateTaskPriority"></param>
|
/// <returns></returns>
|
[HttpPost, Route("UpdateWMSTaskPriority"), AllowAnonymous]
|
public WMSReturn UpdateWMSTaskPriority([FromBody] WMSUpdateTaskPriority updateTaskPriority)
|
{
|
WebResponseContent content = _taskService.UpdateWMSTaskPriority(updateTaskPriority);
|
return ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 修改库位分区
|
/// </summary>
|
/// <param name="WMSUpdateLocationArea"></param>
|
/// <returns></returns>
|
[HttpPost, Route("ModifyWMSLayoutZone"), AllowAnonymous]
|
public WMSReturn ModifyWMSLayoutZone([FromBody] WMSUpdateLocationArea wMSUpdateLocationArea)
|
{
|
WebResponseContent content = _taskService.ModifyWMSLayoutZone(wMSUpdateLocationArea);
|
return ReturnWMS(content);
|
}
|
|
/// <summary>
|
/// 区域库位信息查询
|
/// </summary>
|
/// <param name="AreaCode">区域号</param>
|
/// <returns></returns>
|
[HttpPost, Route("LocationInquiry"), AllowAnonymous]
|
public WMSReturn LocationInquiry(string AreaCode)
|
{
|
WebResponseContent content = _taskService.LocationInquiry(AreaCode);
|
return ReturnWMS(content);
|
}
|
}
|
}
|