diff --git a/UserClass/AsyncTcpServer.cs b/UserClass/AsyncTcpServer.cs index 104fda7..1a119f7 100644 --- a/UserClass/AsyncTcpServer.cs +++ b/UserClass/AsyncTcpServer.cs @@ -100,7 +100,7 @@ namespace DyeingComputer.UserClass client.SendAsync("SC800" + "[" + MainWindowViewModel.S01 + "]" + Chart_new.ToJsonString()); MainWindowViewModel.TX++; APILog.DBlog(client.IP,SYSKEY,SYSAPI,SYSDAT);//记录指令 - } + } else if (SYSAPI == "SC810") { if (SYSKEY == MainWindowViewModel.SYSKEY) @@ -110,26 +110,32 @@ namespace DyeingComputer.UserClass Dictionary WorkOrder_dat; WorkOrder_dat = SerializeConvert.JsonDeserializeFromString>(SYSDAT); //WorkOrder_dat.GetValue("WorkOrder"); - bool dat_w = SQLDATA.WorkOrder( - WorkOrder_dat.GetValue("WorkOrder").ToString(), - WorkOrder_dat.GetValue("ProgramName").ToString(), - WorkOrder_dat.GetValue("StartTime").ToString(), - WorkOrder_dat.GetValue("EndTime").ToString(), - WorkOrder_dat.GetValue("Time").ToString(), - WorkOrder_dat.GetValue("Remark").ToString(), - WorkOrder_dat.GetValue("lock").ToString(), - WorkOrder_dat.GetValue("State").ToString(), - WorkOrder_dat.GetValue("ProgramID").ToString(), - WorkOrder_dat.GetValue("color").ToString(), + bool dat_w = SQLDATA.WorkOrder( + WorkOrder_dat.GetValue("WorkOrder").ToString(), + WorkOrder_dat.GetValue("ProgramName").ToString(), + WorkOrder_dat.GetValue("StartTime").ToString(), + WorkOrder_dat.GetValue("EndTime").ToString(), + WorkOrder_dat.GetValue("Time").ToString(), + WorkOrder_dat.GetValue("Remark").ToString(), + WorkOrder_dat.GetValue("lock").ToString(), + WorkOrder_dat.GetValue("State").ToString(), + WorkOrder_dat.GetValue("ProgramID").ToString(), + WorkOrder_dat.GetValue("color").ToString(), WorkOrder_dat.GetValue("Dyelot").ToString()); - if (!dat_w) { client.SendAsync("SC910" + "[" + MainWindowViewModel.S01 + "]" + - WorkOrder_dat.GetValue("WorkOrder").ToString()); } - else { client.SendAsync("SC810" + "[" + MainWindowViewModel.S01 + "]" + - WorkOrder_dat.GetValue("WorkOrder").ToString()); MainWindowViewModel.TX++; } + if (!dat_w) + { + client.SendAsync("SC910" + "[" + MainWindowViewModel.S01 + "]" + + WorkOrder_dat.GetValue("WorkOrder").ToString()); + } + else + { + client.SendAsync("SC810" + "[" + MainWindowViewModel.S01 + "]" + + WorkOrder_dat.GetValue("WorkOrder").ToString()); MainWindowViewModel.TX++; + } APILog.DBlog(client.IP, SYSKEY, SYSAPI, SYSDAT);//记录指令 } - catch(Exception ex) + catch (Exception ex) { client.SendAsync("SC990" + "[" + MainWindowViewModel.S01 + "]" + ex); } @@ -145,20 +151,20 @@ namespace DyeingComputer.UserClass DataTable WorkOrder_dat; WorkOrder_dat = SerializeConvert.JsonDeserializeFromString(SYSDAT); bool dat_w = SQLDATA.WorkOderStep(WorkOrder_dat); - if (!dat_w) + if (!dat_w) { client.SendAsync("SC911" + "[" + MainWindowViewModel.S01 + "]" + - WorkOrder_dat.Select().First().Field("WorkOrder")); + WorkOrder_dat.Select().First().Field("WorkOrder")); } - else - { + else + { client.SendAsync("SC811" + "[" + MainWindowViewModel.S01 + "]" + WorkOrder_dat.Select().First().Field("WorkOrder")); MainWindowViewModel.TX++; } APILog.DBlog(client.IP, SYSKEY, SYSAPI, SYSDAT);//记录指令 } - catch(Exception ex) + catch (Exception ex) { client.SendAsync("SC991" + "[" + MainWindowViewModel.S01 + "]" + ex); } @@ -290,8 +296,8 @@ namespace DyeingComputer.UserClass //_TechnologicalProcessView.Grid.SelectedIndex = -1; /**存入信息**/ /**存入信息**/ - // SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径 - // SQLiteHelpers.Open(); //打开数据库 + // SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径 + // SQLiteHelpers.Open(); //打开数据库 SQLiteHelpers.Delete("RUN", null, null); DataTable data_t = MainWindowViewModel.dt_TP.Clone(); for (int i = 0; i < MainWindowViewModel.dt_TP.Rows.Count; i++) @@ -395,11 +401,41 @@ namespace DyeingComputer.UserClass } else { client.SendAsync("SC999"); } }//启停跳步指令 + else if (SYSAPI == "SC829") + { + if (SYSKEY == MainWindowViewModel.SYSKEY) + { + try + { + Dictionary dat_829; + dat_829 = SerializeConvert.JsonDeserializeFromString>(SYSDAT); + if (dat_829.GetValue("LOCK").ToString() == "TRUE") + { + MainWindowViewModel._Lock_bool = true; + client.SendAsync("SC829" + SYSKEY + SYSDAT); + } + else if (dat_829.GetValue("LOCK").ToString() == "FALSE") + { + MainWindowViewModel._Lock_bool = false; + client.SendAsync("SC829" + SYSKEY + SYSDAT); + } + else + { + client.SendAsync("SC829" + "[NOT]"); + } + MainWindowViewModel.TX++; + APILog.DBlog(client.IP, SYSKEY, SYSAPI, SYSDAT);//记录指令 + } + catch (Exception ex) { client.SendAsync("SC929" + "[" + MainWindowViewModel.S01 + "]" + ex); } + } + else { client.SendAsync("SC999"); } + }//锁指令 else if (SYSAPI == "SC830") { if (SYSKEY == MainWindowViewModel.SYSKEY) { - try { + try + { Dictionary Chart_new = new Dictionary();//缓存函数 Chart_new.Add("Status", MainWindowViewModel.StatusStr); Chart_new.Add("Machine", MainWindowViewModel.S01); @@ -443,7 +479,8 @@ namespace DyeingComputer.UserClass if (SYSKEY == MainWindowViewModel.SYSKEY) { try - { client.SendAsync("SC832" + "[" + MainWindowViewModel.S01 + "]" + MainWindowViewModel.SYSlog); + { + client.SendAsync("SC832" + "[" + MainWindowViewModel.S01 + "]" + MainWindowViewModel.SYSlog); MainWindowViewModel.TX++; } catch (Exception ex) { client.SendAsync("SC932" + "[" + MainWindowViewModel.S01 + "]" + ex); } @@ -542,8 +579,8 @@ namespace DyeingComputer.UserClass dat_861 = SerializeConvert.JsonDeserializeFromString>(SYSDAT); Dictionary datagrid_v = new Dictionary();//缓存函数 - datagrid_v.Add("Value", dat_861.GetValue("Value")); - + datagrid_v.Add("Value", dat_861.GetValue("Value")); + SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径 SQLiteHelpers.Open(); //打开数据库 SQLiteHelpers.Update("Parameters", datagrid_v, "ParameterID ='" + dat_861.GetValue("ID") + "'", null);//更新 @@ -555,8 +592,8 @@ namespace DyeingComputer.UserClass APILog.DBlog(client.IP, SYSKEY, SYSAPI, SYSDAT);//记录指令 } catch (Exception ex) - { - client.SendAsync("SC961" + "[" + MainWindowViewModel.S01 + "]" + ex); + { + client.SendAsync("SC961" + "[" + MainWindowViewModel.S01 + "]" + ex); } } else { client.SendAsync("SC999"); } @@ -591,8 +628,8 @@ namespace DyeingComputer.UserClass } } catch (Exception ex) - { - client.SendAsync("SC962" + "[" + MainWindowViewModel.S01 + "]" + ex); + { + client.SendAsync("SC962" + "[" + MainWindowViewModel.S01 + "]" + ex); } } else { client.SendAsync("SC999"); } diff --git a/ViewModel/MainWindowViewModel.cs b/ViewModel/MainWindowViewModel.cs index dc365c6..b4df971 100644 --- a/ViewModel/MainWindowViewModel.cs +++ b/ViewModel/MainWindowViewModel.cs @@ -308,8 +308,8 @@ namespace DyeingComputer.ViewModel _UserButton = value; OnPropertyChanged("UserButton"); } - } - bool _Lock_bool; + } + public static bool _Lock_bool; Visibility _Lock_bool_xml; public Visibility Lock_bool//锁图标 { @@ -449,8 +449,7 @@ namespace DyeingComputer.ViewModel uint TX_t; void Tick_Event_5S()//Tick_Event周期执行事件5S { - if (TX_t != TX) { _Link_bool = true; } else { _Link_bool = false; } - TX_t = TX; + if (TX_t != TX) { _Link_bool = true; TX_t = TX; } else { _Link_bool = false; TX_t = TX; } //中央连接状态判断 if(WORK_RUN !=0) Chart();//写入记录