using System.Dynamic; using AngleSharp.Text; using MES.Service.Dto.service; using MES.Service.Dto.webApi; using MES.Service.Modes; using MES.Service.service; using MES.Service.service.Warehouse; using MES.Service.util; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; namespace MESApplication.Controllers.Warehouse; [Route("api/[controller]")] [ApiController] public class womdaaController : ControllerBase { private readonly MessageCenterManager _manager = new(); private readonly WomdaaManager m = new(); private readonly string METHOD = "POST"; private readonly string TableName = "womdaa"; private readonly string URL = "http://localhost:10054/api/womdaa/"; /// /// 根据产测登录号获取产线相关工单信息 /// /// [HttpPost("GetTickeInfo")] public ResponseResult GetTickeInfo(CCLoginDto ccLoginDto) { var entity = new MessageCenter(); entity.TableName = TableName; entity.Url = URL + "GetTickeInfo"; entity.Method = METHOD; entity.Data = JsonConvert.SerializeObject(ccLoginDto); entity.Status = 1; entity.CreateBy = "PL017"; try { dynamic resultInfos = new ExpandoObject(); //var result = m.GetTickeInfo(ccLoginDto.LoginId); //传线体编码,根据线体编码获取工单信息 var result = m.GetTickeInfo(ccLoginDto.LineId, ccLoginDto.LoginId); resultInfos.tbBillList = result; entity.Result = 0; if (true) entity.Result = 1; entity.DealWith = 1; _manager.save(entity); return new ResponseResult { status = 0, message = "OK", data = resultInfos.tbBillList }; } catch (Exception ex) { entity.Result = 0; entity.DealWith = 0; entity.ResultData = ex.Message; _manager.save(entity); return ResponseResult.ResponseError(ex); } } /// /// 存储产测过站信息 /// /// [HttpPost("AddAsnInfo")] public ResponseResult AddAsnInfo(AsnInfo asnInfo) { var entity = new MessageCenter(); entity.TableName = TableName; entity.Url = URL + "AddAsnInfo"; entity.Method = METHOD; entity.Data = JsonConvert.SerializeObject(asnInfo); entity.Status = 1; entity.CreateBy = "PL017"; try { dynamic resultInfos = new ExpandoObject(); var result = m.AddAsnInfo(asnInfo); resultInfos.tbBillList = result; entity.Result = 0; if (result) entity.Result = 1; entity.DealWith = 1; _manager.save(entity); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { entity.Result = 0; entity.DealWith = 0; entity.ResultData = ex.Message; _manager.save(entity); return ResponseResult.ResponseError(ex); } } /// /// 设置中箱码 /// /// [HttpPost("SetMediumBoxCode")] public ResponseResult SetMediumBoxCode(MesMiddleBox MesMiddleBox) { var entity = new MessageCenter(); entity.TableName = TableName; entity.Url = URL + "SetMediumBoxCode"; entity.Method = METHOD; entity.Data = JsonConvert.SerializeObject(MesMiddleBox); entity.Status = 1; entity.CreateBy = "PL017"; try { dynamic resultInfos = new ExpandoObject(); var result = m.SetMediumBoxCode(MesMiddleBox); resultInfos.tbBillList = result; entity.Result = 0; if (result[0].ToBoolean()) entity.Result = 1; entity.DealWith = 1; _manager.save(entity); if (result[0].ToBoolean()) return new ResponseResult { status = 0, message = "OK", data = resultInfos }; return new ResponseResult { status = 1, message = result[1], data = resultInfos }; } catch (Exception ex) { entity.Result = 0; entity.DealWith = 0; entity.ResultData = ex.Message; _manager.save(entity); return ResponseResult.ResponseError(ex); } } /// /// 设置栈板码 /// /// [HttpPost("SetStackCode")] public ResponseResult SetStackCode(MesPalletBinding mesPalletBinding) { var entity = new MessageCenter(); entity.TableName = TableName; entity.Url = URL + "SetStackCode"; entity.Method = METHOD; entity.Data = JsonConvert.SerializeObject(mesPalletBinding); entity.Status = 1; entity.CreateBy = "PL017"; try { dynamic resultInfos = new ExpandoObject(); var result = m.SetStackCode(mesPalletBinding); resultInfos.tbBillList = result; entity.Result = 0; if (result[0].ToBoolean()) entity.Result = 1; entity.DealWith = 1; _manager.save(entity); if (result[0].ToBoolean()) return new ResponseResult { status = 0, message = "OK", data = resultInfos }; return new ResponseResult { status = 1, message = result[1], data = resultInfos }; } catch (Exception ex) { entity.Result = 0; entity.DealWith = 0; entity.ResultData = ex.Message; _manager.save(entity); return ResponseResult.ResponseError(ex); } } /// /// 解绑sn码 /// /// [HttpPost("UnbindAsnInfo")] public ResponseResult UnbindAsnInfo(UnbindAsnInfoDto unbindAsnInfoDto) { var entity = new MessageCenter(); entity.TableName = TableName; entity.Url = URL + "UnbindAsnInfo"; entity.Method = METHOD; entity.Data = JsonConvert.SerializeObject(unbindAsnInfoDto); entity.Status = 1; entity.CreateBy = "PL017"; try { dynamic resultInfos = new ExpandoObject(); var result = m.ProcessSn(unbindAsnInfoDto); resultInfos.tbBillList = result; entity.Result = 0; if (result) entity.Result = 1; entity.DealWith = 1; _manager.save(entity); if (result) return new ResponseResult { status = 0, message = "OK", data = resultInfos }; return new ResponseResult { status = 1, message = result.ToString(), data = resultInfos }; } catch (Exception ex) { entity.Result = 0; entity.DealWith = 0; entity.ResultData = ex.Message; _manager.save(entity); return ResponseResult.ResponseError(ex); } } /// /// 查询栈板码状态 /// /// [HttpPost("GetStackCodeState")] public ResponseResult GetStackCodeState(StackCodeStateDto request) { var entity = new MessageCenter(); entity.TableName = TableName; entity.Url = URL + "GetStackCodeState"; entity.Method = METHOD; entity.Data = JsonConvert.SerializeObject(request); entity.Status = 1; entity.CreateBy = "PL017"; try { dynamic resultInfos = new ExpandoObject(); var state = m.GetStackCodeState(request.StackCode); resultInfos.state = state; entity.Result = 1; entity.DealWith = 1; _manager.save(entity); return new ResponseResult { status = state, message = state == 1 ? "该栈板码已入库,不允许解绑" : "允许解绑", data = resultInfos }; } catch (Exception ex) { entity.Result = 0; entity.DealWith = 0; entity.ResultData = ex.Message; _manager.save(entity); return ResponseResult.ResponseError(ex); } } }