|
|
@ -243,7 +243,7 @@ namespace DyeingComputer.UserClass |
|
|
|
dat_821 = SerializeConvert.JsonDeserializeFromString<Dictionary<string, object>>(SYSDAT); |
|
|
|
if (dat_821.GetValue("INSTRUCTION").ToString() == "START") |
|
|
|
{ |
|
|
|
MainWindowViewModel.Dyelot_dat = MainWindow.SQLiteHelpers.ExecuteDataSet("select * from Dyelot where WorkOrder = '" + |
|
|
|
MainWindowViewModel.Dyelot_dat = MainWindow.SQLiteHelpers.ExecuteDataSet("select * from Dyelot where ReDye=0 AND WorkOrder = '" + |
|
|
|
dat_821.GetValue("WorkOrder").ToString() + "'", null).Tables[0]; |
|
|
|
var DT_Set = MainWindow.SQLiteHelpers.ExecuteDataSet("select * from WorkOrderSet where WorkOrder = '" + |
|
|
|
dat_821.GetValue("WorkOrder").ToString() + "'", null).Tables[0].Rows[0]; |
|
|
@ -262,29 +262,61 @@ namespace DyeingComputer.UserClass |
|
|
|
MainWindowViewModel.Updata_dtm("1039", DT_Set.Field<int>("ClothWheel")); |
|
|
|
MainWindowViewModel.Updata_dtm("1040", DT_Set.Field<int>("ClothWheel")); |
|
|
|
MainWindowViewModel.Updata_dtm("1041", DT_Set.Field<int>("ClothWheel")); |
|
|
|
DataTable WorkorderSteps = MainWindow.SQLiteHelpers.ExecuteDataSet( |
|
|
|
"select * from WorkorderSteps where ReDye=0 AND WorkOrder='" + dat_821.GetValue("WorkOrder").ToString() + "'", null).Tables[0]; //读取表写入缓存
|
|
|
|
DataTable Workorder = MainWindow.SQLiteHelpers.ExecuteDataSet( |
|
|
|
"select * from Workorder where ReDye=0 AND WorkOrder='" + dat_821.GetValue("WorkOrder").ToString() + "'", null).Tables[0]; //读取表写入缓存
|
|
|
|
MainWindowViewModel.ProgramName = Workorder.Rows[0].Field<string>("ProgramName"); |
|
|
|
MainWindowViewModel.Dyelot = MainWindowViewModel.Dyelot_dat.Rows[0].Field<string>("Dyelot"); |
|
|
|
MainWindow.SQLiteHelpers.Delete("RUN", null, null); //删除run信息
|
|
|
|
for (int i = 0; i < WorkorderSteps.Rows.Count; i++) |
|
|
|
{ |
|
|
|
DataRow dr = WorkorderSteps.Rows[i];//行转
|
|
|
|
|
|
|
|
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.ToDictionary(dr));//行插入
|
|
|
|
} |
|
|
|
Dictionary<string, object> updata_temp = new Dictionary<string, object>();//缓存函数
|
|
|
|
updata_temp.Add("State", 205); |
|
|
|
MainWindow.SQLiteHelpers.Update("WorkOrder", updata_temp, "WorkOrder='" + dat_821.GetValue("WorkOrder").ToString() + "'", null); |
|
|
|
updata_temp.Clear(); //使用前清缓存
|
|
|
|
updata_temp.Add("RUN", 1); |
|
|
|
MainWindow.SQLiteHelpers.Update("RUN", updata_temp, "Step=1", null); |
|
|
|
//SQLiteHelpers.Close(); //关闭连接
|
|
|
|
|
|
|
|
/*触发启动*/ |
|
|
|
string Numder = WorkorderSteps.Select("Step = 1").First().Field<string>("StepID");//
|
|
|
|
double P1 = WorkorderSteps.Select("Step = 1").First().Field<double>("Parameter1"); |
|
|
|
double P2 = WorkorderSteps.Select("Step = 1").First().Field<double>("Parameter2"); |
|
|
|
double P3 = WorkorderSteps.Select("Step = 1").First().Field<double>("Parameter3"); |
|
|
|
double P4 = WorkorderSteps.Select("Step = 1").First().Field<double>("Parameter4"); |
|
|
|
double P5 = WorkorderSteps.Select("Step = 1").First().Field<double>("Parameter5"); |
|
|
|
MainWindowViewModel.RUN_STEPID = Convert.ToInt16(1);//插入步骤号
|
|
|
|
MainWindowViewModel.STEP_START(Numder, Convert.ToDouble(P1), Convert.ToDouble(P2), Convert.ToDouble(P3), |
|
|
|
Convert.ToDouble(P4), Convert.ToDouble(P5)); |
|
|
|
MainWindowViewModel.WORK_RUN = 2; |
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "START", "STEP = " + |
|
|
|
MainWindowViewModel.RUN_STEPID + ";StepID=" + Numder + ";P1=" + P1 + ";P2=" + P2 + ";P3=" + P3 + ";P4=" + P4 + ";P5=" + P5); |
|
|
|
client.SendAsync("SC821" + SYSKEY + SYSDAT); |
|
|
|
} |
|
|
|
else if (dat_821.GetValue("INSTRUCTION").ToString() == "STOP") |
|
|
|
{ |
|
|
|
MainWindowViewModel.WORK_RUN = 0;//停止
|
|
|
|
MainWindowViewModel.DIDETime = 0; |
|
|
|
|
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "STOP", MainWindowViewModel.WorkNumder.ToString()); |
|
|
|
client.SendAsync("SC821" + SYSKEY + SYSDAT); |
|
|
|
} |
|
|
|
}//停止
|
|
|
|
else if (dat_821.GetValue("INSTRUCTION").ToString() == "PAUSE") |
|
|
|
{ |
|
|
|
MainWindowViewModel.WORK_RUN = 1;//暂停
|
|
|
|
MainWindowViewModel.errTabler.Clear(); |
|
|
|
|
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "PAUSE", MainWindowViewModel.WorkNumder.ToString()); |
|
|
|
client.SendAsync("SC821" + SYSKEY + SYSDAT); |
|
|
|
} |
|
|
|
}//暂停
|
|
|
|
else if (dat_821.GetValue("INSTRUCTION").ToString() == "CONTINUE") |
|
|
|
{ |
|
|
|
|
|
|
|
MainWindowViewModel.errTabler.Clear(); |
|
|
|
MainWindowViewModel.WORK_RUN = 2;//
|
|
|
|
//
|
|
|
|
MainWindowViewModel.WORK_RUN = 2;//PAUSE
|
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "CONTINUE", MainWindowViewModel.WorkNumder.ToString()); |
|
|
|
client.SendAsync("SC821" + SYSKEY + SYSDAT); |
|
|
|
}//运行
|
|
|
|
else if (dat_821.GetValue("INSTRUCTION").ToString() == "JUMP") |
|
|
@ -293,6 +325,11 @@ namespace DyeingComputer.UserClass |
|
|
|
MainWindowViewModel.STEP_START(dat_821.GetValue("Numder").ToString(), Convert.ToDouble(dat_821.GetValue("P1")), |
|
|
|
Convert.ToDouble(dat_821.GetValue("P2")), Convert.ToDouble(dat_821.GetValue("P3")), |
|
|
|
Convert.ToDouble(dat_821.GetValue("P4")), Convert.ToDouble(dat_821.GetValue("P5"))); |
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "JUMP", "STEP = " + |
|
|
|
MainWindowViewModel.RUN_STEPID + ";"+dat_821.GetValue("Numder").ToString()+";P1="+ |
|
|
|
Convert.ToDouble(dat_821.GetValue("P1")) + ";P2=" + Convert.ToDouble(dat_821.GetValue("P2")) + ";P3=" + |
|
|
|
Convert.ToDouble(dat_821.GetValue("P3")) + ";P4=" + Convert.ToDouble(dat_821.GetValue("P4")) + ";P5=" + |
|
|
|
Convert.ToDouble(dat_821.GetValue("P5"))); |
|
|
|
}//跳步
|
|
|
|
else if (dat_821.GetValue("INSTRUCTION").ToString() == "INSERT") |
|
|
|
{ |
|
|
@ -363,7 +400,7 @@ namespace DyeingComputer.UserClass |
|
|
|
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.ToDictionary(dt));//行插入
|
|
|
|
} |
|
|
|
//SQLiteHelpers.Close(); //关闭连接
|
|
|
|
|
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "INSERT", drtt.ToJsonString()); |
|
|
|
client.SendAsync("SC831" + "[" + MainWindowViewModel.S01 + "]" + MainWindowViewModel.dt_TP.ToJsonString()); |
|
|
|
MainWindowViewModel.TX++; |
|
|
|
}//插入
|
|
|
@ -421,7 +458,7 @@ namespace DyeingComputer.UserClass |
|
|
|
|
|
|
|
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.ToDictionary(dt));//行插入
|
|
|
|
} //SQLiteHelpers.Close(); //关闭连接
|
|
|
|
|
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "EDIT", dr.ToJsonString()); |
|
|
|
client.SendAsync("SC831" + "[" + MainWindowViewModel.S01 + "]" + MainWindowViewModel.dt_TP.ToJsonString()); |
|
|
|
MainWindowViewModel.TX++; |
|
|
|
}//编辑
|
|
|
@ -444,8 +481,8 @@ namespace DyeingComputer.UserClass |
|
|
|
|
|
|
|
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.ToDictionary(dt));//行插入
|
|
|
|
} |
|
|
|
//SQLiteHelpers.Close(); //关闭连接
|
|
|
|
|
|
|
|
//SQLiteHelpers.Close(); //关闭连接
|
|
|
|
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "CentralControl", "DELETE","ID="+ dat_821.GetValue("ID").ToString()); |
|
|
|
client.SendAsync("SC831" + "[" + MainWindowViewModel.S01 + "]" + MainWindowViewModel.dt_TP.ToJsonString()); |
|
|
|
MainWindowViewModel.TX++; |
|
|
|
}//删除
|
|
|
@ -458,7 +495,24 @@ namespace DyeingComputer.UserClass |
|
|
|
catch (Exception ex) { client.SendAsync("SC921" + "[" + MainWindowViewModel.S01 + "]" + ex); } |
|
|
|
} |
|
|
|
else { client.SendAsync("SC999"); } |
|
|
|
}//启停跳步指令
|
|
|
|
}//启停跳步指令
|
|
|
|
else if (SYSAPI == "SC822") |
|
|
|
{ |
|
|
|
if (SYSKEY == MainWindowViewModel.SYSKEY) |
|
|
|
{ |
|
|
|
try |
|
|
|
{ |
|
|
|
DataTable Workorder = MainWindow.SQLiteHelpers.ExecuteDataSet( |
|
|
|
"select * from Workorder where ReDye=0 AND State='101'AND StartTime >'"+ |
|
|
|
DateTime.Now.AddHours(-1).ToString()+"'", null).Tables[0]; //读取表写入缓存
|
|
|
|
|
|
|
|
client.SendAsync("SC822" + "[" + MainWindowViewModel.S01 + "]" + Workorder.ToJsonString()); |
|
|
|
APILog.DBlog(client.IP, SYSKEY, SYSAPI, SYSDAT);//记录指令
|
|
|
|
} |
|
|
|
catch (Exception ex) { client.SendAsync("SC922" + "[" + MainWindowViewModel.S01 + "]" + ex); } |
|
|
|
} |
|
|
|
else { client.SendAsync("SC999"); } |
|
|
|
}//最近可用工艺
|
|
|
|
else if (SYSAPI == "SC827") |
|
|
|
{ |
|
|
|
if (SYSKEY == MainWindowViewModel.SYSKEY) |
|
|
|