using Cowain.Bake.BLL; using Cowain.Bake.Common; using Cowain.Bake.Common.Enums; using Cowain.Bake.Main.Station; using Cowain.Bake.Main.ViewModels; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using Unity; namespace Cowain.Bake.Main.Common { public class HeaderCMD { private readonly IUnityContainer _unityContainer; public HeaderCMD(IUnityContainer unityContainer) { _unityContainer = unityContainer; //_basicInfo = basicInfo; } public void Auto(string JSON) { Views.MainHeaderView.ribbonButtonDic["Auto"].IsEnabled = false; Views.MainHeaderView.ribbonButtonDic["Manual"].IsEnabled = true; Bake.Common.Core.SettingProvider.Instance.DispMode = EDispatchMode.Auto; HandyControl.Controls.MessageBox.Success("自动调度", "切换调度模式"); _unityContainer.Resolve()._newTaskEvent.Set(); _unityContainer.Resolve().DispMode= EDispatchMode.Auto.GetDescription(); } public void Manual(string JSON) { if (System.Windows.MessageBoxResult.OK ==HandyControl.Controls.MessageBox.Ask("调度机器人将停下来,您确定手动调度?", "切换调度模式")) { Views.MainHeaderView.ribbonButtonDic["Manual"].IsEnabled = false; Views.MainHeaderView.ribbonButtonDic["Auto"].IsEnabled = true; Bake.Common.Core.SettingProvider.Instance.DispMode = EDispatchMode.Manual; _unityContainer.Resolve().DispMode = EDispatchMode.Manual.GetDescription(); } } public void ScanCodeMode(string JSON) { string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; UpdateSwitch(JSON, Cowain.Bake.Common.Enums.ESysSetup.ScanCodeMode.ToString(), methodName); _unityContainer.Resolve().AddLog($@"切换【{Cowain.Bake.Common.Enums.ESysSetup.ScanCodeMode.GetDescription()}】!", E_LogType.Operate.ToString()); } private bool UpdateSwitch(string JSON, string paraID, string methodName) { DataTable table = _unityContainer.Resolve().GetLabelName(methodName); string labelName = table.Rows[0]["Header"].ToString(); var service = _unityContainer.Resolve(); if (Views.MainHeaderView.toggleButtonLabelDic[labelName].Content.ToString() == table.Rows[0]["Value0"].ToString()) { Views.MainHeaderView.toggleButtonLabelDic[labelName].Content = table.Rows[0]["Value1"].ToString(); return service.UpdateValue(paraID, "1"); } else { Views.MainHeaderView.toggleButtonLabelDic[labelName].Content = table.Rows[0]["Value0"].ToString(); return service.UpdateValue(paraID, "0"); } } public void DebugMode(string JSON) { string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; DataTable table = _unityContainer.Resolve().GetLabelName(methodName); string labelName = table.Rows[0]["Header"].ToString(); if (Views.MainHeaderView.toggleButtonLabelDic[labelName].Content.ToString() == table.Rows[0]["Value0"].ToString()) { Views.MainHeaderView.toggleButtonLabelDic[labelName].Content = table.Rows[0]["Value1"].ToString(); _unityContainer.Resolve().UpdateValue(ESysSetup.DebugMode.ToString(), ((int)EProductionMode.Normal).ToString()); } else { Views.MainHeaderView.toggleButtonLabelDic[labelName].Content = table.Rows[0]["Value0"].ToString(); _unityContainer.Resolve().UpdateValue(ESysSetup.DebugMode.ToString(), ((int)EProductionMode.Debug).ToString()); } } public void MOMEnable(string JSON) { string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; DataTable table = _unityContainer.Resolve().GetLabelName(methodName); string labelName = table.Rows[0]["Header"].ToString(); if (Views.MainHeaderView.toggleButtonLabelDic[labelName].Content.ToString() == table.Rows[0]["Value0"].ToString()) { Views.MainHeaderView.toggleButtonLabelDic[labelName].Content = table.Rows[0]["Value1"].ToString(); _unityContainer.Resolve().UpdateValue(ESysSetup.MOMEnable.ToString(), ((int)EMOMEnable.Enable).ToString()); } else { Views.MainHeaderView.toggleButtonLabelDic[labelName].Content = table.Rows[0]["Value0"].ToString(); _unityContainer.Resolve().UpdateValue(ESysSetup.MOMEnable.ToString(), ((int)EMOMEnable.Disable).ToString()); } } } }