using Cowain.Bake.BLL; using Cowain.Bake.Common.Core; using Cowain.Bake.Common.Interface; using Cowain.Bake.Communication.MOM; using Cowain.Bake.Main.Station; using Cowain.Bake.Main.ViewModels; using Cowain.Bake.Main.Views; using Cowain.Bake.Model; using System.Collections.Generic; using System.Linq; using Unity; using JSON = Newtonsoft.Json.JsonConvert; using static Cowain.Bake.Common.Models.MESModel; namespace Cowain.Bake.Main.Common { public class ExecCommonFun : ICommonFun { readonly IUnityContainer _unityContainer; public ExecCommonFun(IUnityContainer unityContainer) { _unityContainer = unityContainer; } public void ModifyOrderNum() { var basicInfoViewModel = _unityContainer.Resolve(); var memory = _unityContainer.Resolve(); basicInfoViewModel.CurrentJobNum = memory.CurrentUser.JobNum; basicInfoViewModel.CurrentOperation = memory.CurrentUser.ProcessParamName; SettingProvider.Instance.WaterPallet = 0; } public bool ManualTaskCmd(TTaskRecord task, short stepId) { return _unityContainer.Resolve().ManualTaskCmd(task, stepId); //发送 } public void InitWindows() { _unityContainer.Resolve().ClearWindows(); // _unityContainer.Resolve().Init(); // } public void SetBatteryCodeLen() { _unityContainer.Resolve().SetBatteryCodeLen(); // } public string ManualMesOutUnBinding(TPalletInfo palletInfo, TBatteryInfo battery) { string msg = ""; List betterys = new List() ; betterys.Add(battery); var mesResult = _unityContainer.Resolve().MesOutUnBinding(palletInfo, betterys, true); if (mesResult == null) { msg = $"出站,MOM返回超时,电芯条码:{string.Join(",", betterys.Select(x => x.BatteryCode).ToList())}"; LogHelper.Instance.Error(msg); //偶尔会返回空, } else if (mesResult.Info.ResultFlag.ToUpper() == "NG") { msg = $"出站,MOM返回信息异常,信息:{JSON.SerializeObject(mesResult)}"; } else { msg = $"信息:{JSON.SerializeObject(mesResult)}"; } return msg; } public MESReturnCmdModel SendData(string info) { return _unityContainer.Resolve().SendData(info); //发送 } } }