using Admin.Core.IService; using Admin.Core.Service; using Admin.Core.IService.ISys; using Admin.Core.Model; using Admin.Core.Common.Resource; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq.Expressions; using System.Threading.Tasks; using Admin.Core.Common; using System.Linq; using Admin.Core.Model.ViewModels; using Microsoft.AspNetCore.Mvc.ViewEngines; using System.Collections; namespace Admin.Core.Api.Controllers.Business { /// /// 反应釜防错验证 /// [Route("api/[controller]/[action]")] [ApiController] [AllowAnonymous] public class WarehouseController : BaseApiUserController { #region 整包信息 //000524-20230805-0001-CF-130|25kg //000524:为物料编码 //CF-130:物料名称 //25kg物料重量 #endregion /// /// 投料仓服务 /// private readonly IHw_WarehouseServices _hw_WarehouseService; /// /// 构造方法 /// /// /// public WarehouseController(IHw_WarehouseServices hw_WarehouseServices, ISysUserService sysUserService) : base(sysUserService) { _sysUserService = sysUserService; _hw_WarehouseService = hw_WarehouseServices; } #region 扫描料桶条码 获取桶绑定物料信息 /// /// 扫描料桶条码 获取桶绑定物料信息 /// /// 桶条码 /// [HttpGet] public async Task> GetByBarrelInfo(string code) { if (!code.IsNotEmptyOrNull()) { return Failed("传入参数为空!"); } var query = await _hw_WarehouseService.GetXlInfo(code.Trim()); if (query == null) { return Failed("查询失败!"); } return Success(query); } #endregion #region 根据条码查询投料釜设置的物料 /// /// 根据条码查询投料釜设置的物料 /// /// 投料釜条码 /// 计划Id /// [HttpGet] public async Task> GetByCode(string code,string planId) { if (!code.IsNotEmptyOrNull()) { return Failed("传入物料编码参数为空!"); } if (!planId.IsNotEmptyOrNull()) { return Failed("传入计划ID参数为空!"); } var query = await _hw_WarehouseService.QueryByCode(code.Trim(), planId); if (query==null) { return Failed("查询失败!"); } return Success(query); } #endregion #region PLC更新状态——反应釜 /// /// PLC更新状态——反应釜 /// /// json 对象 /// [HttpPost] public async Task> ExecPlcState([FromBody] KettleView view) { if (!view.IsNotEmptyOrNull()) { return Failed("传入参数为空!"); } var result = await _hw_WarehouseService.UpdatePlcState(view); if (result) { return Success(result); } return Failed("执行失败!"); } #endregion #region 查询反应釜计划 /// /// 查询反应釜计划 /// /// [HttpGet] public async Task>> GetWarehousePlan(string code) { MessageModel> messageModel = new MessageModel>(); List list = await _hw_WarehouseService.GetWarehousePlan(code); if (list == null) { messageModel.success = false; messageModel.msg = "未查询到数据"; return messageModel; } messageModel.success = true; messageModel.data = list; return Success(list); } #endregion } }