diff --git a/ConvertMoels/StatenToImageConvert.cs b/ConvertMoels/StatenToImageConvert.cs new file mode 100644 index 0000000..b36ecf4 --- /dev/null +++ b/ConvertMoels/StatenToImageConvert.cs @@ -0,0 +1,81 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Data; +using System.Windows.Media.Imaging; + +namespace DyeingComputer.ConvertMoels +{ + internal class StatenToImageConvert : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) + { + switch (value) + { + case "001": + return new BitmapImage(new Uri("/Lmage/ID001.png", UriKind.Relative));//功能模块001温度控制 + case "007": + return new BitmapImage(new Uri("/Lmage/ID007.png", UriKind.Relative));//液位入水 + case "008": + return new BitmapImage(new Uri("/Lmage/ID008.png", UriKind.Relative));//流量入水 + case "013": + return new BitmapImage(new Uri("/Lmage/ID013.png", UriKind.Relative));//批次水位水洗 + case "015": + return new BitmapImage(new Uri("/Lmage/ID015.png", UriKind.Relative));//溢流水洗 + case "017": + return new BitmapImage(new Uri("/Lmage/ID017.png", UriKind.Relative));//降温水洗 + case "020": + return new BitmapImage(new Uri("/Lmage/ID020.png", UriKind.Relative));//排水 + case "022": + return new BitmapImage(new Uri("/Lmage/ID022.png", UriKind.Relative));//动力排水 + case "031": + return new BitmapImage(new Uri("/Lmage/ID031.png", UriKind.Relative));//运转时间 + case "035": + return new BitmapImage(new Uri("/Lmage/ID035.png", UriKind.Relative));//准备入布 + case "036": + return new BitmapImage(new Uri("/Lmage/ID036.png", UriKind.Relative));//准备出布 + case "039": + return new BitmapImage(new Uri("/Lmage/ID039.png", UriKind.Relative));//呼叫人工 + case "040": + return new BitmapImage(new Uri("/Lmage/ID040.png", UriKind.Relative));//取样 + case "041": + return new BitmapImage(new Uri("/Lmage/ID041.png", UriKind.Relative));//结束 + case "049": + return new BitmapImage(new Uri("/Lmage/ID049.png", UriKind.Relative));//等待 + case "050": + return new BitmapImage(new Uri("/Lmage/ID050.png", UriKind.Relative));//主缸加压 + case "051": + return new BitmapImage(new Uri("/Lmage/ID051.png", UriKind.Relative));//主缸减压 + case "054": + return new BitmapImage(new Uri("/Lmage/ID054.png", UriKind.Relative));//主泵/风机速度 + case "055": + return new BitmapImage(new Uri("/Lmage/ID055.png", UriKind.Relative));//主泵启动 + case "056": + + case "064": + return new BitmapImage(new Uri("/Lmage/ID064.png", UriKind.Relative));// + case "065": + return new BitmapImage(new Uri("/Lmage/ID065.png", UriKind.Relative));// + case "067": + return new BitmapImage(new Uri("/Lmage/ID067.png", UriKind.Relative));// + case "090": + return new BitmapImage(new Uri("/Lmage/ID090.png", UriKind.Relative));// + case "091": + return new BitmapImage(new Uri("/Lmage/ID091.png", UriKind.Relative));// + case "094": + return new BitmapImage(new Uri("/Lmage/ID094.png", UriKind.Relative));// + default: + return new BitmapImage(new Uri("",UriKind.Relative)); + } + } + + public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) + { + throw new NotImplementedException(); + } + + } +} diff --git a/DyeingComputer.csproj b/DyeingComputer.csproj index e95b701..f0b23c6 100644 --- a/DyeingComputer.csproj +++ b/DyeingComputer.csproj @@ -111,6 +111,7 @@ + True @@ -427,6 +428,10 @@ + + + + diff --git a/Lmage/ID001.png b/Lmage/ID001.png new file mode 100644 index 0000000..8064d9b Binary files /dev/null and b/Lmage/ID001.png differ diff --git a/Lmage/ID039.png b/Lmage/ID039.png new file mode 100644 index 0000000..7f71b0b Binary files /dev/null and b/Lmage/ID039.png differ diff --git a/Lmage/ID064.png b/Lmage/ID064.png new file mode 100644 index 0000000..eaa5ab3 Binary files /dev/null and b/Lmage/ID064.png differ diff --git a/Lmage/ID065.png b/Lmage/ID065.png new file mode 100644 index 0000000..ed4b788 Binary files /dev/null and b/Lmage/ID065.png differ diff --git a/Lmage/去除图片线条.png b/Lmage/去除图片线条.png new file mode 100644 index 0000000..ed4b788 Binary files /dev/null and b/Lmage/去除图片线条.png differ diff --git a/View/TechnologicalProcessView.xaml b/View/TechnologicalProcessView.xaml index 2aa42ab..d209d13 100644 --- a/View/TechnologicalProcessView.xaml +++ b/View/TechnologicalProcessView.xaml @@ -12,6 +12,7 @@ d:DesignHeight="1080" d:DesignWidth="1920"> + @@ -93,22 +94,29 @@ - + + + + + + + + - - + + - + @@ -116,6 +124,27 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/View/TechnologicalProcessView.xaml.cs b/View/TechnologicalProcessView.xaml.cs index 8a59382..737eb6d 100644 --- a/View/TechnologicalProcessView.xaml.cs +++ b/View/TechnologicalProcessView.xaml.cs @@ -308,8 +308,7 @@ namespace DyeingComputer.View SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径 SQLiteHelpers.Open(); //打开数据库 string sql_script = "select * from RUN"; - if (sql != null) sql.Clear(); //清空缓存 - sql = SQLiteHelpers.ExecuteDataSet(sql_script, null); //读取表写入缓存 + MainWindowViewModel.dt_TP = SQLiteHelpers.ExecuteDataSet(sql_script, null).Tables[0]; //读取表写入缓存 try { MainWindowViewModel.ProgramName = SQLiteHelpers.ExecuteScalar("select Program from RUN where Step = '1'", null).ToString(); @@ -318,7 +317,6 @@ namespace DyeingComputer.View catch (Exception) { } SQLiteHelpers.Close(); //关闭连接 // if (sql != null) - MainWindowViewModel.dt_TP = sql.Tables[0]; //转换显示计划表 } private void UserControl_Loaded(object sender, RoutedEventArgs e) { diff --git a/ViewModel/MainWindowViewModel.cs b/ViewModel/MainWindowViewModel.cs index c1a809d..2e2675e 100644 --- a/ViewModel/MainWindowViewModel.cs +++ b/ViewModel/MainWindowViewModel.cs @@ -880,7 +880,7 @@ namespace DyeingComputer.ViewModel updata_RUN.Clear(); updata_RUN.Add("RUN", 1); SQLiteHelpers.Update("RUN", updata_RUN, "Step ='"+ RUN_STEPID + "'", null);//更新 - dt_TP = SQLiteHelpers.ExecuteDataSet("select * from RUN", null).Tables[0]; + dt_TP = SQLiteHelpers.ExecuteDataSet("select * from RUN WHERE Mode = 0", null).Tables[0]; SQLiteHelpers.Close();//关闭数据库 } @@ -2279,6 +2279,9 @@ namespace DyeingComputer.ViewModel public static DataTable dt_a = new DataTable("AIO"); public static DataTable dt_m = new DataTable("M"); public static DataTable dt_TP = new DataTable(); + public static DataTable dt_TP_S1 = new DataTable(); + public static DataTable dt_TP_S2 = new DataTable(); + public static DataTable dt_TP_S3 = new DataTable(); public static DataTable dt_ParameterSet = new DataTable(); public static DataTable dt_SysSet = new DataTable(); public static void SQL_data()//获得io表 @@ -2290,7 +2293,7 @@ namespace DyeingComputer.ViewModel dt_m = SQLiteHelpers.ExecuteDataSet("select * from IOName where type='M' order by ID", null).Tables[0]; dt_ParameterSet = SQLiteHelpers.ExecuteDataSet("select * from Parameters order by ParameterID asc", null).Tables[0]; dt_SysSet = SQLiteHelpers.ExecuteDataSet("select * from System order by ParameterID asc", null).Tables[0]; - dt_TP = SQLiteHelpers.ExecuteDataSet("select * from RUN", null).Tables[0]; + dt_TP = SQLiteHelpers.ExecuteDataSet("select * from RUN WHERE Mode = 0", null).Tables[0]; SQLiteHelpers.Close(); dt_d.RowChanged += new DataRowChangeEventHandler(ROW_changed_D);//添加行改变触发事件 @@ -2664,6 +2667,12 @@ namespace DyeingComputer.ViewModel public double Step { get; set; } public string StepID { get; set; } public string StepName { get; set; } + public string StepID_S1 { get; set; } + public string StepName_S1 { get; set; } + public string StepID_S2 { get; set; } + public string StepName_S2 { get; set; } + public string StepID_S3 { get; set; } + public string StepName_S3 { get; set; } public string ParameterName { get; set; } public string Parameter1 { get; set; } public string Parameter2 { get; set; } diff --git a/Windows/ViewStep.xaml.cs b/Windows/ViewStep.xaml.cs index b7586d6..9f58121 100644 --- a/Windows/ViewStep.xaml.cs +++ b/Windows/ViewStep.xaml.cs @@ -158,11 +158,11 @@ namespace DyeingComputer.Windows if (g != -1) { boxID.SelectedIndex = g;//有效索引传入 - Set(g); + Set(a[g]); } else { boxID.SelectedIndex =-1; - Set(-1); + Set("-1"); } } } @@ -172,7 +172,7 @@ namespace DyeingComputer.Windows { int i = boxID.SelectedIndex; boxNAME.Text = a.ElementAt(i); - Set(i); + Set(a[i]); } } @@ -204,11 +204,11 @@ namespace DyeingComputer.Windows this.Close(); //关闭窗口 } - private void Set(int a) //参数显示 + private void Set(string a) //参数显示 { switch (a) { - case 0: + case "001": P1N.Text = Properties.Resources.Target+Properties.Resources.Temperature; P2N.Text = Properties.Resources.Rate+ "(°C/min)"; P3N.Text = Properties.Resources.Time; @@ -223,7 +223,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 1: + case "007": P1N.Text = Properties.Resources.Headwaters; P2N.Text = Properties.Resources.WaterLevel; P1.Visibility = Visibility.Visible; @@ -237,7 +237,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 2: + case "008": P1N.Text = Properties.Resources.Headwaters; P2N.Text = Properties.Resources.Flowmeter; P1.Visibility = Visibility.Visible; @@ -251,7 +251,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 3: + case "013": P1N.Text = Properties.Resources.Headwaters; P2N.Text = Properties.Resources.WaterLevel; P3N.Text = Properties.Resources.Time; @@ -267,7 +267,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 4: + case "015": P1N.Text = Properties.Resources.Headwaters; P2N.Text = Properties.Resources.WaterLevel; P3N.Text = Properties.Resources.Time; @@ -284,7 +284,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Visible; P5N.Visibility = Visibility.Visible; break; - case 5: + case "017": P1N.Text = Properties.Resources.Headwaters; P2N.Text = Properties.Resources.WaterLevel; P3N.Text = Properties.Resources.Time; @@ -301,7 +301,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Visible; P5N.Visibility = Visibility.Visible; break; - case 6: + case "020": P1N.Text = Properties.Resources.Drainage; P2N.Text = Properties.Resources.WaterLevel; P1.Visibility = Visibility.Visible; @@ -315,7 +315,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 7: + case "022": P1N.Text = Properties.Resources.Drainage; P2N.Text = Properties.Resources.WaterLevel; P1.Visibility = Visibility.Visible; @@ -329,7 +329,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 8: + case "031": P1N.Text = Properties.Resources.Time; P1.Visibility = Visibility.Visible; P1N.Visibility = Visibility.Visible; @@ -342,7 +342,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 15: + case "050": P1N.Text = Properties.Resources.Temperature; P2N.Text = Properties.Resources.Pressure; P1.Visibility = Visibility.Visible; @@ -356,7 +356,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 16: + case "051": P1N.Text = Properties.Resources.Temperature; P2N.Text = Properties.Resources.Pressure; P1.Visibility = Visibility.Visible; @@ -370,7 +370,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 17: + case "054": P1N.Text = Properties.Resources.PumpSpeed; P2N.Text = Properties.Resources.Blower; P3N.Text = Properties.Resources.Nozzle; @@ -385,7 +385,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 20: + case "064": P1N.Text = Properties.Resources.Medicine + Properties.Resources.Tank; P2N.Text = Properties.Resources.Headwaters; P3N.Text = Properties.Resources.WaterLevel; @@ -402,7 +402,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Visible; P5N.Visibility = Visibility.Visible; break; - case 21: + case "065": P1N.Text = Properties.Resources.Medicine + Properties.Resources.Tank; P2N.Text = Properties.Resources.Curve; P3N.Text = Properties.Resources.Time; @@ -417,7 +417,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 22: + case "066": P1N.Text = Properties.Resources.Medicine + Properties.Resources.Tank; P2N.Text = Properties.Resources.Type; P3N.Text = Properties.Resources.Step; @@ -432,7 +432,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 23: + case "067": P1N.Text = Properties.Resources.Medicine + Properties.Resources.Tank; P2N.Text = Properties.Resources.Type; P3N.Text = Properties.Resources.Function; @@ -447,7 +447,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 24: + case "090": P1N.Text = Properties.Resources.Target + Properties.Resources.Temperature; P2N.Text = "PH"; P1.Visibility = Visibility.Visible; @@ -461,7 +461,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 25: + case "091": P1N.Text = Properties.Resources.Target + Properties.Resources.Temperature; P2N.Text = Properties.Resources.Rate; P3N.Text = "PH"; @@ -476,7 +476,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 26: + case "093": P1N.Text = Properties.Resources.Time; P1.Visibility = Visibility.Visible; P1N.Visibility = Visibility.Visible; @@ -489,7 +489,7 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - case 27: + case "094": P1N.Text = Properties.Resources.Time; P2N.Text = "PH"; P1.Visibility = Visibility.Visible; @@ -503,7 +503,6 @@ namespace DyeingComputer.Windows P5.Visibility = Visibility.Collapsed; P5N.Visibility = Visibility.Collapsed; break; - default: P1.Visibility = Visibility.Collapsed; P1N.Visibility = Visibility.Collapsed;