using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using SlnMesnac.Model.domain; using SlnMesnac.Repository.service; using SlnMesnac.Serilog; namespace SlnMesnac.Controllers { /// /// 物料信息 /// [Route("api/[controller]")] [ApiController] public class BaseMaterialInfoController { public readonly SerilogHelper _logger; private IBaseMaterialService _service; /// /// /// /// /// public BaseMaterialInfoController(SerilogHelper logger, IBaseMaterialService service) { _logger = logger; _service = service; } /// /// 获取物料信息 /// /// [HttpGet] public IEnumerable Get() { IEnumerable materialInfos = null; try { materialInfos = _service.GetMaterialInfos(); } catch (Exception ex) { _logger.Error($"获取物料信息接口调用异常:{ex.Message}"); } return materialInfos; } /// /// 根据物料编号获取物料信息 /// /// 物料编号 /// [HttpGet("Get/{materialCode}")] public BaseMaterialInfo GetMaterialInfoByMaterialCode(string materialCode) { BaseMaterialInfo materialInfo = null; try { materialInfo = _service.GetMaterialInfoByMaterialCode(materialCode); } catch (Exception ex) { _logger.Error($"根据物料编号获取物料信息接口调用异常:{ex.Message}"); } return materialInfo; } /// /// 通过物料类别获取物料信息 /// /// 物料大类 /// 物料细类 /// [HttpGet("Get/{majorTypeId}/{minorTypeId}")] public IEnumerable GetMaterialInfosByMaterialType(int majorTypeId, string minorTypeId) { IEnumerable materialInfos = null; try { materialInfos = _service.GetMaterialInfosByMaterialType(majorTypeId, minorTypeId); } catch (Exception ex) { _logger.Error($"通过物料类别获取物料信息接口调用异常:{ex.Message}"); } return materialInfos; } } }