using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using WIDESEA_Common; using WIDESEA_Core; using WIDESEA_Core.BaseController; using WIDESEA_DTO.Stock; using WIDESEA_DTO.Task; using WIDESEA_ITaskInfoService; using WIDESEA_Model.Models; using static WIDESEA_ITaskInfoService.ITaskService; namespace WIDESEA_WMSServer.Controllers.TaskInfo { [Route("api/Task")] [ApiController] public class TaskController : ApiBaseController { public TaskController(ITaskService service) : base(service) { } /// /// WCS反馈任务完成 /// /// /// [HttpPost, HttpGet, Route("TaskCompleted"), AllowAnonymous] public async Task TaskCompleted(int taskNum) { return await Service.TaskCompleted(taskNum); } [HttpPost, Route("GenerateOutboundTask"), AllowAnonymous] public WebResponseContent GenerateOutboundTask(int id, [FromBody] List stockSelectViews) { return Service.GenerateOutboundTask(id, stockSelectViews); } /// /// WCS申请入库任务 /// /// /// [HttpPost, Route("InboundRequest"), AllowAnonymous] public WebResponseContent InboundRequest(string stationCode, string roadwayNo, string palletCode) { return Service.InboundRequest(stationCode, roadwayNo, palletCode); } /// /// WCS申请入库任务(不分配货位) /// /// /// /// [HttpPost, HttpGet, Route("DeviceRequestInboundTaskSimple"), AllowAnonymous] public WebResponseContent DeviceRequestInboundTaskSimple(string stationCode, string palletCode) { return Service.DeviceRequestInboundTaskSimple(stationCode, palletCode); } /// /// 判断巷道内移库 /// /// /// /// [HttpGet, Route("IsRelocations"), AllowAnonymous] public WebResponseContent IsRelocations(int TaskNum, string SourceAddress) { return Service.IsRelocations(TaskNum, SourceAddress); } /// /// 任务取消 /// /// /// [HttpGet, Route("Cancelinventory"), AllowAnonymous] public WebResponseContent Cancelinventory(int taskNum) { return Service.Cancelinventory(taskNum); } /// /// 入库任务完成 /// /// /// [HttpPost, HttpGet, Route("InboundTaskCompleted"), AllowAnonymous] public WebResponseContent InboundTaskCompleted(int taskNum) { return Service.InboundTaskCompleted(taskNum); } /// /// 出库任务完成 /// /// /// [HttpPost, Route("OutboundTaskCompleted"), AllowAnonymous] public WebResponseContent OutboundTaskCompleted(int taskNum) { return Service.OutboundTaskCompleted(taskNum); } /// /// WMS下发出库单据 /// /// /// [HttpPost, Route("AddOutboundOrders"), AllowAnonymous] public WebResponseContent AddOutboundOrders([FromBody] Houseounbound orderAddDTO) { return Service.AddOutboundOrders(orderAddDTO); } /// /// 盘点任务上传 /// /// /// [HttpPost, Route("InventoryOut"), AllowAnonymous] public WebResponseContent InventoryOut([FromBody] HouseCancelOut houseInventoryOut) { return Service.InventoryOut(houseInventoryOut); } /// /// 盘点任务回传WMS /// /// /// /// [HttpPost, Route("InventoryIn"), AllowAnonymous] public WebResponseContent InventoryIn([FromBody] string name, int qty) { return Service.InventoryIn(name, qty); } [HttpPost, Route("UpdateTaskStatus"), AllowAnonymous] public WebResponseContent UpdateTaskStatus(int tasknum, int tasktype) { return Service.UpdateTaskStatus(tasknum, tasktype); } /// /// 分配巷道(带任务号) /// /// /// /// [HttpPost, Route("AssignRoadway"), AllowAnonymous] public WebResponseContent AssignRoadway(int taskNum, [FromBody] List roadwayNos, int heightType) { return Service.AssignRoadway(taskNum, roadwayNos, heightType); } /// /// 入库任务申请分配货位 /// /// 任务号 /// 巷道号 /// [HttpPost, HttpGet, Route("AssignInboundTaskLocation"), AllowAnonymous] public WebResponseContent AssignInboundTaskLocation(int taskNum, string roadwayNo) { return Service.AssignInboundTaskLocation(taskNum, roadwayNo); } /// /// 修改任务状态 /// /// /// [HttpPost, Route("UpdateTaskInfo"), AllowAnonymous] public WebResponseContent UpdateTaskInfo([FromBody] WCSTaskDTO task) { return Service.UpdateTaskInfo(task); } } }