using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using WIDESEA_Core.Attributes; using WIDESEA_Core; using WIDESEA_DTO; using WIDESEA_IBasicService; using WIDESEA_ITaskInfoService; using WIDESEA_TaskInfoService; using WIDESEA_DTO.ERP; using WIDESEA_Core.Helper; using Autofac.Core; using WIDESEA_DTO.Stock; using WIDESEA_BasicService; using WIDESEA_DTO.Basic; using WIDESEA_DTO.MES; using WIDESEA_IOutboundService; using WIDESEA_IInboundService; namespace WIDESEA_WMSServer.Controllers.MES { /// /// MES接口 /// [Route("api/Mes")] [ApiController] public class MesController : ControllerBase { private readonly ITaskService _taskService; private readonly IOutMESOrderService _outMESOrderService; private readonly IMESProInOrderInfoService _proInOrderInfoService; public MesController(ITaskService taskService,IOutMESOrderService outMESOrderService,IMESProInOrderInfoService proInOrderInfoService) { _taskService = taskService; _outMESOrderService = outMESOrderService; _proInOrderInfoService=proInOrderInfoService; } /// /// 接收MES领料计划 /// /// [HttpPost, HttpGet, Route("ReceiveOutBound"), AllowAnonymous] public WebResponseContent ReceiveOutBound([FromBody] List outMESOrderDTOs) { return _outMESOrderService.ReceiveOutBound(outMESOrderDTOs); } /// /// MES自动叫料接口 /// /// [HttpPost, HttpGet, Route("ReceiveAutoIssue"), AllowAnonymous] public WebResponseContent ReceiveAutoIssue([FromBody] MESAutoIssueDTO autoIssueDTO) { return _taskService.ReceiveAutoIssue(autoIssueDTO); } /// /// MES手动叫料接口 /// /// [HttpPost, HttpGet, Route("ReceiveManualIssue"), AllowAnonymous] public WebResponseContent ReceiveManualIssue([FromBody] MESManualIssueDTO manualIssueDTO) { return _taskService.ReceiveManualIssue(manualIssueDTO); } /// /// MES空托/余料呼叫接口 /// /// [HttpPost, HttpGet, Route("ReceiveReturnIssue"), AllowAnonymous] public WebResponseContent ReceiveReturnIssue([FromBody] List returnIssueDTOs) { return _taskService.ReceiveReturnIssue(returnIssueDTOs); } /// /// 成品/半成品信息同步接口 /// /// [HttpPost, HttpGet, Route("ReceiveProCodeInfo"), AllowAnonymous] public WebResponseContent ReceiveProCodeInfo([FromBody] List proInDTOs) { return _proInOrderInfoService.ReceiveProCodeInfo(proInDTOs); } /// /// MES工单停止接口 /// /// [HttpPost, HttpGet, Route("ReceiveProOrderStop"), AllowAnonymous] public WebResponseContent ReceiveProOrderStop([FromBody] MESOrderStopDTO orderStopDTO) { return _proInOrderInfoService.ReceiveProOrderStop(orderStopDTO); } } }