59 lines
1.6 KiB
C#
59 lines
1.6 KiB
C#
using HandyControl.Controls;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows;
|
|
using WCS.Model.ApiModel.User;
|
|
using WCS.Model.ApiModel;
|
|
using WCS.Model;
|
|
using WCS.Model.WebSocketModel;
|
|
using 货架标准上位机.ViewModel;
|
|
|
|
namespace 货架标准上位机
|
|
{
|
|
public static class WarningManager
|
|
{
|
|
public static List<WarningWindow> warnings = new List<WarningWindow>();
|
|
|
|
public static object flag = new object();
|
|
|
|
public static void AddWarning(WebSocketMessageModel warningModel)
|
|
{
|
|
lock (flag)
|
|
{
|
|
warnings.Add(WarningWindow.Show(warningModel.WarningMessage, "报警信息", warningModel));
|
|
}
|
|
|
|
}
|
|
|
|
public static void RemoveWarning(Guid guid)
|
|
{
|
|
lock(flag)
|
|
{
|
|
try
|
|
{
|
|
var warning = warnings.Where(t => t.warning.Guid == guid).First();
|
|
Application.Current.Dispatcher.Invoke(new Action(() =>
|
|
{
|
|
warning?.Close();
|
|
warnings.Remove(warning);
|
|
}));
|
|
}
|
|
catch
|
|
{
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
public static void InitWarning()
|
|
{
|
|
//TODO 调用接口获取当前IP前端已接收未进行处理的异常,避免因前端重启造成异常无法处理
|
|
#region 调用接口
|
|
#endregion
|
|
}
|
|
}
|
|
}
|