From 863aaaec08674222b01605cdcc02ee3d65b531f4 Mon Sep 17 00:00:00 2001 From: MoYue Date: Sat, 30 Mar 2024 08:17:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=8D=A2=E5=9B=BE=E6=A0=87=20?= =?UTF-8?q?=E9=87=8D=E6=96=B0=E8=AE=BE=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Images/6604cd8ecc29d.ico | Bin 0 -> 66622 bytes .../InSituLaboratory.Assets.csproj | 4 + .../MEMSChromatogramModel.cs | 17 ++ InSituLaboratory.Models/MEMSMassModel.cs | 23 ++ InSituLaboratory.Models/RecordModel.cs | 16 + InSituLaboratory/6604.ico | Bin 0 -> 4158 bytes InSituLaboratory/App.xaml | 3 + InSituLaboratory/InSituLaboratory.csproj | 5 +- .../ViewModels/Pages/DashboardViewModel.cs | 15 + .../Pages/SequentialDistributionViewModel.cs | 8 + InSituLaboratory/Views/MainView.xaml | 2 +- .../Views/Pages/DashboardView.xaml | 279 ++++++++++-------- .../Pages/Dialogs/ModifySequentialView.xaml | 2 +- .../Pages/SequentialDistributionView.xaml | 186 +++++++----- 14 files changed, 356 insertions(+), 204 deletions(-) create mode 100644 InSituLaboratory.Assets/Images/6604cd8ecc29d.ico create mode 100644 InSituLaboratory.Models/MEMSChromatogramModel.cs create mode 100644 InSituLaboratory.Models/MEMSMassModel.cs create mode 100644 InSituLaboratory.Models/RecordModel.cs create mode 100644 InSituLaboratory/6604.ico diff --git a/InSituLaboratory.Assets/Images/6604cd8ecc29d.ico b/InSituLaboratory.Assets/Images/6604cd8ecc29d.ico new file mode 100644 index 0000000000000000000000000000000000000000..1c47b3bc82459c694fc5defdabe053d6dad61cfb GIT binary patch literal 66622 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 bd3quhH{?+xWes_r)2Cow#rQ}X`@SzD+{ literal 0 HcmV?d00001 diff --git a/InSituLaboratory.Assets/InSituLaboratory.Assets.csproj b/InSituLaboratory.Assets/InSituLaboratory.Assets.csproj index 6b16f99..b7bb907 100644 --- a/InSituLaboratory.Assets/InSituLaboratory.Assets.csproj +++ b/InSituLaboratory.Assets/InSituLaboratory.Assets.csproj @@ -10,6 +10,7 @@ + @@ -25,6 +26,9 @@ + + Always + Always diff --git a/InSituLaboratory.Models/MEMSChromatogramModel.cs b/InSituLaboratory.Models/MEMSChromatogramModel.cs new file mode 100644 index 0000000..637d197 --- /dev/null +++ b/InSituLaboratory.Models/MEMSChromatogramModel.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace InSituLaboratory.Models +{ + public class MEMSChromatogramModel + { + public DateTime SamplingTime { get; set; } + public string FaultCodes { get; set; } + public string C2Concentration { get; set; } + public string C3Concentration { get; set; } + public string C4Concentration { get; set; } + } +} diff --git a/InSituLaboratory.Models/MEMSMassModel.cs b/InSituLaboratory.Models/MEMSMassModel.cs new file mode 100644 index 0000000..2b358bb --- /dev/null +++ b/InSituLaboratory.Models/MEMSMassModel.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace InSituLaboratory.Models +{ + public class MEMSMassModel + { + public DateTime SamplingTime { get; set; } + public string FaultCodes { get; set; } + + public string CH4Concentration { get; set; } + public string H2OConcentration { get; set; } + public string N2Concentration { get; set; } + public string O2Concentration { get; set; } + public string ARConcentration { get; set; } + public string CO2Concentration { get; set; } + + + } +} diff --git a/InSituLaboratory.Models/RecordModel.cs b/InSituLaboratory.Models/RecordModel.cs new file mode 100644 index 0000000..30f3891 --- /dev/null +++ b/InSituLaboratory.Models/RecordModel.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace InSituLaboratory.Models +{ + public class RecordModel + { + public int Number { get; set; } + + public string SensorID { get; set; } + public string DurationTime { get; set; } + } +} diff --git a/InSituLaboratory/6604.ico b/InSituLaboratory/6604.ico new file mode 100644 index 0000000000000000000000000000000000000000..7ff2e56d073b50b64ff80fa4966e81dada5def1e GIT binary patch literal 4158 zcmeHJdr(x@89%$=g1kwP;-nQPG1iJx4KZkgQL3o0n6^pnBx$BeX3{a3stC(dBcN6k zA0-jBHqS9l)OLtE%_I@_-n+Z(?gd#u9*SClU5G6qq9I}u31+|k&fUGsLnhjE`bTGa znIGq#bH4BUeUEd#yNqe@7dw^V|5P?3g0X1E*bE>RNCNmee~QDE;eYa9)mp}?)-bIx zgH5Vh#};6G*0`SK120u&unf$93Cse5KgeWETKAuaDZq}H#r!eOh21^iYBFuO`AROZ=vTnJLOa+k~H;tLB0lH5LnVJA0>(1#V$X0P= zuy|vp)`HmFrh>a*e>F86d{p7A-7^odhLUybeZ=FhKai^Ub^47bN#5~ep>bAw0q4hVe z*Nz)M_8AZW-PgFjy(ErW52uru8|;ZQOG8Eu>zboH8MT~7VosnhKGVh^vJ^*9_2x*_HUvKD$h0w-#5|oM zbBizVQ_KxQ?jAx7W^#WeezdT6x z9ns33kmFC5qA+D{+dj#YixIWp=cRsss=|$Y-GKdH@fb%wJQwI0bKqxhUHKBke7}-g z$SE=L9Ll@CM;A^mq;u~-ObxG3_xQ!@i}<8`9dhLF%aN+bN6ydhBL`xC*JSXUpmLwY z+2+20KV8h3NT=U;g6dvbG;9a86>~$ByHve7260Y8?jtb|=l2MEff&OuhLVtt_k64a zM(A;FUbp5$&(Nu|L~#3E6tXnaRPIV}n~D|g{k%TBKk#0q`p)mnsj>wmmp(wJUQVRC zy$dlS@_Q*ZxsMy=M;6nIlhBHoyJc2Dx2muk^yO!b zbiL0`pPnzFFRnOfpjW2WcOE}+a;^3uDKBC@YJ1gZ#~TOcZmj32+#ewWAFg74$i>ld zWOYQODeAPQ(&-h45O*KF<#u|CZkDzz zZX_|@1?1iOf*<-k+YKLvdnvCMpO38@)}(?!l6OxY?r(~m24`C{09=J0$5+F;nm*Cs zpC}sqMzPC_0&&ih$SJQFbjfKwPC0E57{dEy zjP{Gh#V?|_hFP~p;`dPCE!+x!jh=PY=!0Fd{s8pcoz@iP`_cT)9Q4nb@FAY;+h_F) zhJbqfo{|xd1Na2JyV1NU_!7Qz&w}f>PP_hdfV}8~t(Az0bvu4OF0Z=SVNGTo)r+H? zwv;!aI|N&ZCyhER%c$-6JoL?JL)L9k7c4~)<(A^RpO!X;tdt5uXGsM?zvwV8eFQqT z5xl*Km?a#DbHNMZsozOF~eh+*j+@r@Pgl2gGCAM7b1@L>sT?uPAZZXdV`TmyQ6bJ#l$tbyG0?%FiOnl{$l zcb<3I7BiQ1k)}&d34u?s;EM<5BPVf~$8^cdbssw(W9_EI@67Rk#s6Lgh{#R-er_@| zHx;vm#Ml%!V_`QL)7|hu+s_yWQ{lq + + /InSituLaboratory.Assets;component/Fonts/iconfont.ttf#zx_icons diff --git a/InSituLaboratory/InSituLaboratory.csproj b/InSituLaboratory/InSituLaboratory.csproj index b3ecc35..07cb791 100644 --- a/InSituLaboratory/InSituLaboratory.csproj +++ b/InSituLaboratory/InSituLaboratory.csproj @@ -6,11 +6,11 @@ enable enable true - bitbug_favicon.ico + 6604.ico - + @@ -23,6 +23,7 @@ + diff --git a/InSituLaboratory/ViewModels/Pages/DashboardViewModel.cs b/InSituLaboratory/ViewModels/Pages/DashboardViewModel.cs index 7bcaa1c..a26d97d 100644 --- a/InSituLaboratory/ViewModels/Pages/DashboardViewModel.cs +++ b/InSituLaboratory/ViewModels/Pages/DashboardViewModel.cs @@ -7,15 +7,30 @@ using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; +using InSituLaboratory.Models; namespace InSituLaboratory.ViewModels.Pages { public class DashboardViewModel : ViewModelBase { + public ObservableCollection MEMSList { get; set; } = new ObservableCollection(); + public ObservableCollection MEMSMassList { get; set; } = new ObservableCollection(); public DashboardViewModel() : base(null) { PageTitle = "数据中心"; IsCanClose = false; + + MEMSList.Add(new MEMSChromatogramModel { SamplingTime = DateTime.Now, FaultCodes = "设备温度:正常;湿度:正常", C2Concentration = "30" , C3Concentration="40" , C4Concentration ="50"}); + MEMSList.Add(new MEMSChromatogramModel { SamplingTime = DateTime.Now, FaultCodes = "压力:警报、绝缘:未监控", C2Concentration = "10" , C3Concentration="20" , C4Concentration ="30"}); + + MEMSList.Add(new MEMSChromatogramModel { SamplingTime = DateTime.Now, FaultCodes = "设备温度:正常;湿度:正常", C2Concentration = "20" , C3Concentration="30" , C4Concentration ="70"}); + MEMSList.Add(new MEMSChromatogramModel { SamplingTime = DateTime.Now, FaultCodes = "湿度:正常", C2Concentration = "15" , C3Concentration="20" , C4Concentration ="30"}); + MEMSList.Add(new MEMSChromatogramModel { SamplingTime = DateTime.Now, FaultCodes = "压力:正常", C2Concentration = "15" , C3Concentration="20" , C4Concentration ="30"}); + + + + MEMSMassList.Add(new MEMSMassModel { SamplingTime = DateTime.Now, FaultCodes = "压力:正常", CH4Concentration = "10", H2OConcentration="20" , N2Concentration ="30", O2Concentration ="40", ARConcentration ="50", CO2Concentration ="60"}); + } } } diff --git a/InSituLaboratory/ViewModels/Pages/SequentialDistributionViewModel.cs b/InSituLaboratory/ViewModels/Pages/SequentialDistributionViewModel.cs index cc2b445..857cce4 100644 --- a/InSituLaboratory/ViewModels/Pages/SequentialDistributionViewModel.cs +++ b/InSituLaboratory/ViewModels/Pages/SequentialDistributionViewModel.cs @@ -4,6 +4,7 @@ using Prism.Regions; using Prism.Services.Dialogs; using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -13,6 +14,8 @@ namespace InSituLaboratory.ViewModels.Pages { public class SequentialDistributionViewModel : ViewModelBase { + public ObservableCollection RecordList { get; set; } = + new ObservableCollection(); IDialogService _dialogService; public SequentialDistributionViewModel(IRegionManager regionManager, IDialogService dialogService) : base(regionManager) @@ -20,6 +23,11 @@ namespace InSituLaboratory.ViewModels.Pages this.PageTitle = "时序下发"; _dialogService = dialogService; + + RecordList.Add(new RecordModel { Number = 1, SensorID = "色谱、质谱", DurationTime = "30"}); + RecordList.Add(new RecordModel { Number = 2, SensorID = "二氧化碳", DurationTime = "50"}); + RecordList.Add(new RecordModel { Number = 3, SensorID = "摄像1、摄像2", DurationTime = "100"}); + Refresh(); } diff --git a/InSituLaboratory/Views/MainView.xaml b/InSituLaboratory/Views/MainView.xaml index 9e7c16c..b0b92ed 100644 --- a/InSituLaboratory/Views/MainView.xaml +++ b/InSituLaboratory/Views/MainView.xaml @@ -124,7 +124,7 @@ - + diff --git a/InSituLaboratory/Views/Pages/DashboardView.xaml b/InSituLaboratory/Views/Pages/DashboardView.xaml index edb0063..9deb217 100644 --- a/InSituLaboratory/Views/Pages/DashboardView.xaml +++ b/InSituLaboratory/Views/Pages/DashboardView.xaml @@ -15,86 +15,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -111,49 +32,167 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/InSituLaboratory/Views/Pages/Dialogs/ModifySequentialView.xaml b/InSituLaboratory/Views/Pages/Dialogs/ModifySequentialView.xaml index df70220..d6d1cbe 100644 --- a/InSituLaboratory/Views/Pages/Dialogs/ModifySequentialView.xaml +++ b/InSituLaboratory/Views/Pages/Dialogs/ModifySequentialView.xaml @@ -16,7 +16,7 @@ - + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - 编辑 - - - 删除 - - - - - - - + + + + + + + + + + + + + + + + + + + + + + 编辑 + + + 删除 + + + + + + + + + + + + @@ -179,7 +200,7 @@