20230201_145_upperpc/InSituLaboratory/ViewModels/Pages/DashboardViewModel.cs

120 lines
5.1 KiB
C#
Raw Normal View History

2024-03-11 05:12:02 +00:00
using LiveCharts.Defaults;
using LiveCharts.Wpf;
using LiveCharts;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
2024-03-30 00:17:37 +00:00
using InSituLaboratory.Models;
using InSituLaboratory.Entities.ExperimentalStationEntities;
using Prism.Regions;
using InSituLaboratory.IService;
using Prism.Commands;
using System.Windows;
using System.Windows.Forms;
2024-03-11 05:12:02 +00:00
namespace InSituLaboratory.ViewModels.Pages
{
public class DashboardViewModel : ViewModelBase
{
#region
2024-04-24 09:58:55 +00:00
public SysStatusModel SysStatusModel { get; set; } = new SysStatusModel();
public CurrentEquipmentModel CurrentWorkEquipment { get; set; } = new CurrentEquipmentModel();//当前工作设备
public CurrentEquipmentModel currentFaultyEquipment { get; set; } = new CurrentEquipmentModel();//当前故障设备
public DelegateCommand<object> ReadCommand { get; set; }
#endregion
ISysStatusService _sysStatusService;
public DashboardViewModel(IRegionManager regionManager, ISysStatusService isysStatusService) : base(regionManager)
2024-03-11 05:12:02 +00:00
{
PageTitle = "数据中心";
IsCanClose = false;
_sysStatusService = isysStatusService;
ReadCommand = new DelegateCommand<object>(DoRead);
this.Refresh();
}
2024-03-30 00:17:37 +00:00
public override void Refresh()
{
var sysStatuslist = _sysStatusService.GetSysStauts().ToList();
var CurrentWorklist = _sysStatusService.GetCurrentWorkEquipment().ToList();
var currentFaultylist = _sysStatusService.GetCurrentFaultyEquipment().ToList();
if (sysStatuslist.Count() != 0)
{
2024-04-28 01:27:21 +00:00
var data = _sysStatusService.GetSysStauts().FirstOrDefault();
2024-04-24 09:58:55 +00:00
SysStatusModel.PackagingTime = data.PackagingTime;
SysStatusModel.SamplingTime = data.SamplingTime;
SysStatusModel.Voltage48 = data.Voltage48;
SysStatusModel.Current48 = data.Current48;
SysStatusModel.BaseStation48VLeakageCS = data.BaseStation48VLeakageCS;
SysStatusModel.Batterz48VLeakageCS = data.Batterz48VLeakageCS;
SysStatusModel.ICLLeakageCS = data.ICLLeakageCS;
SysStatusModel.IComputerLeakageCS = data.IComputerLeakageCS;
SysStatusModel.TemperatureStaus1 = data.TemperatureStaus1;
SysStatusModel.TemperatureStaus2 = data.TemperatureStaus2;
SysStatusModel.HumidityStaus1 = data.HumidityStaus1;
SysStatusModel.HumidityStaus2 = data.HumidityStaus2;
SysStatusModel.LeakageStaus1 = data.LeakageStaus1;
SysStatusModel.LeakageStaus2 = data.LeakageStaus2;
SysStatusModel.InternalPressure1 = data.InternalPressure1;
SysStatusModel.InternalPressure2 = data.InternalPressure2;
SysStatusModel.TimeSeriesGroupNumber = data.TimeSeriesGroupNumber;
SysStatusModel.GroupNumberStatus = data.GroupNumberStatus;
}
if (CurrentWorklist.Count() != 0)
{
var data = _sysStatusService.GetCurrentWorkEquipment().First();
CurrentWorkEquipment.Chromatograph_MEMS = data.Chromatograph_MEMS;
CurrentWorkEquipment.MassSpectrometer_MEMS = data.MassSpectrometer_MEMS;
CurrentWorkEquipment.ColorMassSpectrometer = data.ColorMassSpectrometer;
CurrentWorkEquipment.CH4Analyzer = data.CH4Analyzer;
CurrentWorkEquipment.CO2Analyzer = data.CO2Analyzer;
CurrentWorkEquipment.ParticleAnalyzer = data.ParticleAnalyzer;
CurrentWorkEquipment.Sequencer = data.Sequencer;
}
if (currentFaultylist.Count() != 0)
{
var data = _sysStatusService.GetCurrentFaultyEquipment().First();
currentFaultyEquipment.Chromatograph_MEMS = data.Chromatograph_MEMS;
currentFaultyEquipment.MassSpectrometer_MEMS = data.MassSpectrometer_MEMS;
currentFaultyEquipment.ColorMassSpectrometer = data.ColorMassSpectrometer;
currentFaultyEquipment.CH4Analyzer = data.CH4Analyzer;
currentFaultyEquipment.CO2Analyzer = data.CO2Analyzer;
currentFaultyEquipment.ParticleAnalyzer = data.ParticleAnalyzer;
currentFaultyEquipment.Sequencer = data.Sequencer;
}
2024-03-11 05:12:02 +00:00
}
/// <summary>
/// 读取文本文档
/// </summary>
/// <param name="o"></param>
public void DoRead(object o)
{
System.Windows.Forms.MessageBox.Show("暂无此项功能!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Title = "选择文件";
openFileDialog.Multiselect = false;//选择多个文件
openFileDialog.RestoreDirectory = true;//跟踪上次打开的文件的目录
openFileDialog.Filter = "Text files(*.txt) | *.txt";
}
2024-03-11 05:12:02 +00:00
}
}