using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using WIDESEA_Core.Attributes; using WIDESEA_Core; using WIDESEA_DTO; using WIDESEA_IBasicService; using WIDESEA_IInboundRepository; using WIDESEA_IInboundService; using WIDESEA_IOutboundService; using WIDESEA_ITaskInfoService; using WIDESEA_TaskInfoService; using WIDESEA_DTO.ERP; using WIDESEA_DTO.MES; using WIDESEA_Core.Helper; namespace WIDESEA_WMSServer.Controllers.MES { /// /// MES接口 /// [Route("api/Mes")] [ApiController] public class MesController : ControllerBase { private readonly IOutboundService _outboundService; private readonly ITaskService _taskService; public MesController(IOutboundService outboundService, ITaskService taskService) { _outboundService = outboundService; _taskService = taskService; } /// /// 接收MES测试架出库 /// /// /// [HttpPost, Route("TestToolOut"), AllowAnonymous, MethodParamsValidate] public MesResponseContent TestToolOut([FromBody] Root model) { return _taskService.TestToolOut(model.Content); } /// /// 接收MES测试架退库 /// /// /// [HttpPost, Route("TestToolBack"), AllowAnonymous, MethodParamsValidate] public MesResponseContent TestToolBack([FromBody] Root model) { return _taskService.TestToolBack(model.Content); } /// /// 测试架报废 /// /// /// [HttpPost, Route("TestToolScrap"), AllowAnonymous, MethodParamsValidate] public MesResponseContent TestScrap([FromBody] Root model) { return _taskService.TestScrap(model.Content); } /// /// /// /// /// [HttpPost, Route("TestSynStock"), AllowAnonymous] public WebResponseContent TestSynStock([FromBody] TestToolSynInfo toolSynInfo) { return _taskService.TestSynStock(toolSynInfo); } /// /// 基板出库 /// /// /// [HttpPost, Route("SubstrateOut"), AllowAnonymous] public MesResponseContent SubstrateOut([FromBody] Root model) { return _taskService.SubstrateOut(model.Content); } /// /// 基板余料退库 /// /// /// [HttpPost, Route("SubstrateBack"), AllowAnonymous] public MesResponseContent SubstrateBack([FromBody] Root model) { return _taskService.SubstrateBack(model.Content); } /// /// PP大卷出库-进行分卷 /// /// /// [HttpPost, Route("PPSubsectionOut"), AllowAnonymous] public MesResponseContent PPSubsectionOut([FromBody] Root model) { return _taskService.PPSubsectionOut(model.Content); } /// /// PP小卷出库 /// /// /// [HttpPost, Route("PPCutOut"), AllowAnonymous] public MesResponseContent PPCutOut([FromBody] Root model) { return _taskService.PPCutOut(model.Content); } /// /// PP入库(大卷、小卷、张料) /// /// /// [HttpPost, Route("PPBack"), AllowAnonymous] public MesResponseContent PPBack([FromBody] Root model) { return _taskService.PPBack(model.Content); } /// /// PP库存查询 /// /// /// [HttpPost, Route("QueryPpByWidth"), AllowAnonymous] public MesResponseContent QueryPpByWidth([FromBody] Root model) { return _taskService.QueryPpByWidth(model.Content); } /// /// 物料出库,WMS同步出库物料批次至MES /// /// /// [HttpPost, Route("UploadMesMaterialLotaAcept"), AllowAnonymous] public WebResponseContent UploadMesMaterialLotaAcept([FromBody] MesMaterialLotaAceptModel model) { return _taskService.UploadMesMaterialLotaAcept(model); } /// /// 成品返工提库 /// /// /// [HttpPost,Route("RworkTask"),AllowAnonymous] public MesResponseContent RworkTask([FromBody] RworkTaskModel model) { return _taskService.RworkTask(model); } /// /// MES成品内包信息接收 /// /// /// [HttpPost, Route("BagInfoSync"), AllowAnonymous] public MesResponseContent BagInfoSync([FromBody] Root model) { return _taskService.BagInfoSync(model.Content); } /// /// MES成品外包信息接收 /// /// /// [HttpPost, Route("BoxStockin"), AllowAnonymous] public MesResponseContent BoxStockin([FromBody] Root model) { return _taskService.BoxStockin(model.Content); } /// /// MES成品出库接口调用 /// /// [HttpPost, Route("ShipmentOrderSync"), AllowAnonymous] public WebResponseContent ShipmentOrderSync([FromBody] MesShipmentOrderSync model) { return _taskService.ShipmentOrderSync(model); } } }