using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.Attributes;
using WIDESEA_Core.BaseController;
using WIDESEA_DTO.Basic;
using WIDESEA_ICheckService;
using WIDESEA_Model.Models;
using WIDESEA_Model.Models.Check;
using WIDESEA_WMSServer.Controllers.Outbound;
namespace WIDESEA_WMSServer.Controllers.Check
{
///
/// 质检单
///
[Route("api/CheckOrder")]
[ApiController]
public class CheckOrderController : ApiBaseController
{
public readonly IReCheckOrderService _recheckOrderService;
private readonly ILogger _logger;
public CheckOrderController(ICheckOrderService service, IReCheckOrderService recheckOrderService, ILogger logger) : base(service)
{
_recheckOrderService = recheckOrderService;
_logger = logger;
}
///
/// 接收MES重检单信息
///
///
///
[HttpPost, Route("ReceiveReCheckOrder"), AllowAnonymous, MethodParamsValidate]
public async Task ReceiveReCheckOrder([FromBody] ReCheckDto model)
{
_logger.LogInformation("CheckOrderController ReceiveReCheckOrder: " + JsonConvert.SerializeObject(model));
var recheckOrder = new Dt_ReCheckOrder
{
OrderNo = model.orderNo,
MaterielCode = model.materialCode,
BatchNo = model.batchNo,
Unit = model.unit,
Result = model.result,
InspectionNumber = model.inspectionNumber,
SignSeq = model.signSeq,
Qty = model.qty,
WarehouseCode = model.warehouseCode,
FactoryArea = model.factoryArea
};
var content =await _recheckOrderService.ReceiveReCheckOrder(recheckOrder, model.operationType);
if (content.Status) return WebResponseContent.Instance.OK(200);
else return WebResponseContent.Instance.Error(content.Message);
}
}
}