using Microsoft.AspNetCore.Mvc; using Rhea.Common; using SqlSugar; using System.Threading.Tasks; using Tiger.IBusiness; using Tiger.Model; using Tiger.Model.Entitys.MES.BizMesWo; using Tiger.Model.Entitys.MES.BizMesWoBatch; using Tiger.Api.iBiz; namespace Tiger.Api.Controllers.MES { public partial class MESController : ControllerBase { /// /// 保存工单 /// /// /// [HttpPost] [Route("api/[controller]/[action]")] public async Task SaveMesWo([FromBody] ApiAction action) { ApiAction response = new(); try { response = response.GetResponse(await DI.Resolve().SaveMesWo(action.Data)); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } /// /// 下发保存批次工单 /// /// /// [HttpPost] [Route("api/[controller]/[action]")] public async Task SaveMesBatchWo([FromBody] ApiAction action) { ApiAction response = new(); try { response = response.GetResponse(await DI.Resolve().SaveMesBatchWo(action.Data)); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } /// /// 删除工单 /// /// /// [HttpPost] [Route("api/[controller]/[action]")] public async Task DeleteMesWo([FromBody] ApiAction action) { ApiAction response = new(); try { response = response.GetResponse(await DI.Resolve().DeleteMesWo(action.Data?.ToString())); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } /// /// 更新工单状态 /// /// /// [HttpPost] [Route("api/[controller]/[action]")] public async Task UpdateWoStatus([FromBody] ApiAction action) { ApiAction response = new(); try { response = response.GetResponse(await DI.Resolve().UpdateWoStatus(action.Data)); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } /// /// 更新工单批次状态 /// /// /// [HttpPost] [Route("api/[controller]/[action]")] public async Task UpdateWoBatchStatus([FromBody] ApiAction action) { ApiAction response = new(); try { response = response.GetResponse(await DI.Resolve().UpdateWoBatchStatus(action.Data)); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } /// /// 更新工单模板变量 /// /// /// [HttpPost] [Route("api/[controller]/[action]")] public async Task AddOrEditLabelVarByWorkOrder([FromBody] ApiAction action) { ApiAction response = new(); try { response = response.GetResponse(await DI.Resolve().AddOrEditLabelVarByWorkOrder(action.Data)); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } /// /// 获取工单模板变量 /// /// /// [HttpPost] [Route("api/[controller]/[action]")] public async Task GetLabelVarByWorkOrder([FromBody] ApiAction action) { ApiAction response = new(); try { response = response.GetResponse(await DI.Resolve().GetLabelVarByWorkOrder(action.Data)); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } /// /// 获取工单批次的数量汇总 /// /// /// [HttpGet] [Route("api/[controller]/[action]")] public async Task GetWoBatchCount(ApiAction action) { ApiAction response = new(); try { SugarParameter[] pars = Biz.Db.Ado.GetParameters(new { BATCH = action.Data?.ToString(), ERR_CODE = 0, ERR_MSG = "" }); pars[1].Direction = System.Data.ParameterDirection.Output; pars[2].Direction = System.Data.ParameterDirection.Output; Biz.Db.Ado.UseStoredProcedure().ExecuteCommand("SP_MES_GET_WO_BATCH_COUNT", pars); response.Data = pars[1].Value; response.IsSuccessed = pars[1].Value.ToInt32() == 0 ? true : false; response.LocaleMsg = new(pars[2].Value.ToString()); } catch (System.Exception ex) { response = response.GetResponse().CatchExceptionWithLog(ex); } return Ok(response); } } }