using System.Text.Json; using Microsoft.AspNetCore.Mvc; using SlnMesnac.Model.dto; using SlnMesnac.Repository.service; namespace SlnMesnac.Controllers; /// /// ingredientsChenck 投料校验 /// [Route("api/[controller]")] [ApiController] public class IngCheckController { private ILogger _logger; private IMcsBinToMaterService _mcsBinToMaterService; /// /// /// /// public IngCheckController(ILogger logger,IMcsBinToMaterService mcsBinToMaterService) { _logger = logger; _mcsBinToMaterService = mcsBinToMaterService; } /// /// 大料投料校验 /// /// /// [HttpPost("BigMaterial")] public ApiResponse BigMaterialCheck(IngredientInfo ingredientInfo) { var result = new ApiResponse(); try { if (ingredientInfo != null) { string json = JsonSerializer.Serialize(ingredientInfo); _logger.LogInformation($"大料验证参数:{json}"); var info = _mcsBinToMaterService.GetMcsBinToMaterByBinNo(ingredientInfo.EquipId, ingredientInfo.CanNumber); if (info != null) { if (info.MatCode == ingredientInfo.MaterialBarcode) { result.SetSuccess($"大料校验成功,时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); } else { result.SetFailure($"大料校验失败,物料不匹配,时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); } } } else { result.SetSuccess($"大料校验失败,缺少必要参数,时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); } } catch (Exception e) { result.SetException(e,"大料投料校验异常"); _logger.LogError("大料投料校验异常",e); } return result; } /// /// 小料投料校验 /// /// /// [HttpPost("SmallMaterial")] public ApiResponse SmallMaterialCheck(IngredientInfo ingredientInfo) { var result = new ApiResponse(); try { if (ingredientInfo != null) { string json = JsonSerializer.Serialize(ingredientInfo); _logger.LogInformation($"小料验证参数:{json}"); result.SetSuccess($"校验成功,时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); } else { result.SetSuccess($"校验失败,缺少必要参数,时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); } } catch (Exception e) { Console.WriteLine(e); result.SetException(e,"小料投料校验异常"); } return result; } }