Files
6098/Cowain.Bake.Main/Common/ExecCommonFun.cs

80 lines
2.7 KiB
C#
Raw Normal View History

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<BasicInfoViewModel>();
var memory = _unityContainer.Resolve<MemoryDataProvider>();
basicInfoViewModel.CurrentJobNum = memory.CurrentUser.JobNum;
basicInfoViewModel.CurrentOperation = memory.CurrentUser.ProcessParamName;
SettingProvider.Instance.WaterPallet = 0;
}
public bool ManualTaskCmd(TTaskRecord task, short stepId)
{
return _unityContainer.Resolve<TaskStation>().ManualTaskCmd(task, stepId); //发送
}
public void InitWindows()
{
_unityContainer.Resolve<MainHeaderView>().ClearWindows(); //
_unityContainer.Resolve<MainHeaderView>().Init(); //
}
public void SetBatteryCodeLen()
{
_unityContainer.Resolve<LoadingStation>().SetBatteryCodeLen(); //
}
public string ManualMesOutUnBinding(TPalletInfo palletInfo, TBatteryInfo battery)
{
string msg = "";
List<TBatteryInfo> betterys = new List<TBatteryInfo>() ;
betterys.Add(battery);
var mesResult = _unityContainer.Resolve<UnLoadingStation>().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<MESProcess>().SendData(info); //发送
}
}
}