锁功能生效,操作锁

This commit is contained in:
sc committed 2025-08-30 21:52:00 +08:00
commit 469d76f9b0
14 files changed
+547 -317

No files matched your search

+2 -1
View File
@@ -209,7 +209,8 @@
</DataGrid.Columns>
</DataGrid>
<DataGrid x:Name="Parameter_set" Visibility="Collapsed" AutoGenerateColumns="False" FontSize="15" AlternationCount="2"
HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" ColumnHeaderHeight="40" CellEditEnding="Parameter_set_CellEditEnding">
HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" ColumnHeaderHeight="40"
CellEditEnding="Parameter_set_CellEditEnding" BeginningEdit="Parameter_set_BeginningEdit" >
<DataGrid.RowStyle >
<Style TargetType="{x:Type DataGridRow}">
<Setter Property="Height" Value="30" />
+148 -106
View File
@@ -196,11 +196,21 @@ namespace DyeingComputer.View
Parameter_set.ItemsSource = tblDatas.DefaultView;
}
private void Parameter_set_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
private void Parameter_set_BeginningEdit(object sender, DataGridBeginningEditEventArgs e)
{
string VID;
if (MainWindowViewModel._Lock_bool)
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
return;
}
}
private void Parameter_set_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
{
string VID;
string newValue = (e.EditingElement as TextBox).Text;//获得输入单元格信息
int rownum = Parameter_set.SelectedIndex;//获取鼠标选中行并定义变量
if (rownum != -1)//判断鼠标定位是否有效
{
@@ -233,8 +243,8 @@ namespace DyeingComputer.View
}
MainWindowViewModel.Updata_dtm(VID, i);
}
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Parameter",
"ID=" + VID + ";Name=" + Vname + ";Value="+newValue);
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Parameter",
"ID=" + VID + ";Name=" + Vname + ";Value=" + newValue);
}
catch { }
ParameterSet_d();
@@ -320,18 +330,26 @@ namespace DyeingComputer.View
{
// FocusManager.SetFocusedElement(Grid, Grid);
// Grid.DataContext = new MainWindowViewModel();
}
}
private void ProgramgroupView_edit_Click(object sender, RoutedEventArgs e)//编辑按钮
{
// if (string.IsNullOrEmpty(Numder)) { Numder = null; P1 = "0"; P2 = "0"; P3 = "0"; P4 = "0"; P5 = "0"; }
if (ID == null) return;//ID = sql.Tables[0].Rows.Count.ToString();
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Edit", "STEP = " + ID);
ViewStep viewstop = new ViewStep(Numder, MainWindowViewModel.dt_TP.Select("STEP = " + ID).First());
viewstop.boxNAME.IsEnabled=false;
//viewstop.no.IsEnabled = false;
viewstop.data = ID;
viewstop.AddressUpdated += new ViewStep.AddressUpdateHandler(Address_ButtonClicked);
viewstop.ShowDialog();
if (!MainWindowViewModel._Lock_bool)
{
// if (string.IsNullOrEmpty(Numder)) { Numder = null; P1 = "0"; P2 = "0"; P3 = "0"; P4 = "0"; P5 = "0"; }
if (ID == null) return;//ID = sql.Tables[0].Rows.Count.ToString();
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Edit", "STEP = " + ID);
ViewStep viewstop = new ViewStep(Numder, MainWindowViewModel.dt_TP.Select("STEP = " + ID).First());
viewstop.boxNAME.IsEnabled = false;
//viewstop.no.IsEnabled = false;
viewstop.data = ID;
viewstop.AddressUpdated += new ViewStep.AddressUpdateHandler(Address_ButtonClicked);
viewstop.ShowDialog();
}
else
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
}
private void Address_ButtonClicked(object sender, AddressUpdateEventArgs e)//编辑返回结果
{
@@ -410,92 +428,109 @@ namespace DyeingComputer.View
}
private void ProgramgroupView_del_Click(object sender, RoutedEventArgs e)//删除
{
int d = 0;
int a = MainWindowViewModel.dt_TP.Rows.Count;
if (ID != null) { d = Convert.ToInt16(ID); } else { return; }
MainWindowViewModel.dt_TP.Rows.RemoveAt(d - 1);
Dat();
GridSTEP.SelectedIndex = -1;
// SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
MainWindow.SQLiteHelpers.Delete("RUN", null, null);
DataTable data_t = MainWindowViewModel.dt_TP.Clone();
a = MainWindowViewModel.dt_TP.Rows.Count;
for (int i = 0; i < a; i++)
if (!MainWindowViewModel._Lock_bool)
{
data_t.Clear();//清空
DataRow dt = MainWindowViewModel.dt_TP.Rows[i];//行转换
DataRow drT = data_t.NewRow();
drT.ItemArray = dt.ItemArray;
data_t.Rows.InsertAt(drT, 0);
drT.BeginEdit(); //添加订单号
drT["DYELOT"] = MainWindowViewModel.WorkNumder;
drT.EndEdit();
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.DataTableToDictionary(data_t));//行插入
int d = 0;
int a = MainWindowViewModel.dt_TP.Rows.Count;
if (ID != null) { d = Convert.ToInt16(ID); } else { return; }
MainWindowViewModel.dt_TP.Rows.RemoveAt(d - 1);
Dat();
GridSTEP.SelectedIndex = -1;
// SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
MainWindow.SQLiteHelpers.Delete("RUN", null, null);
DataTable data_t = MainWindowViewModel.dt_TP.Clone();
a = MainWindowViewModel.dt_TP.Rows.Count;
for (int i = 0; i < a; i++)
{
data_t.Clear();//清空
DataRow dt = MainWindowViewModel.dt_TP.Rows[i];//行转换
DataRow drT = data_t.NewRow();
drT.ItemArray = dt.ItemArray;
data_t.Rows.InsertAt(drT, 0);
drT.BeginEdit(); //添加订单号
drT["DYELOT"] = MainWindowViewModel.WorkNumder;
drT.EndEdit();
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.DataTableToDictionary(data_t));//行插入
}
//SQLiteHelpers.Close(); //关闭连接
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Delete", "STEP = " + ID);
MainWindowViewModel.User_Button = true;
}
else
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
//SQLiteHelpers.Close(); //关闭连接
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Delete", "STEP = " + ID);
MainWindowViewModel.User_Button = true;
}
private void ProgramgroupView_Insert_Click(object sender, RoutedEventArgs e)//插入
{
int d = 0;
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
//SQLiteHelpers.Open(); //打开数据库
string ProgramID = MainWindow.SQLiteHelpers.ExecuteScalar("select ProgramID from RUN where Step = '1'", null).ToString();
string ProgramNAME = MainWindow.SQLiteHelpers.ExecuteScalar("select Program from RUN where Step = '1'", null).ToString();
// SQLiteHelpers.Close();
if (!MainWindowViewModel._Lock_bool)
{
int d = 0;
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
//SQLiteHelpers.Open(); //打开数据库
string ProgramID = MainWindow.SQLiteHelpers.ExecuteScalar("select ProgramID from RUN where Step = '1'", null).ToString();
string ProgramNAME = MainWindow.SQLiteHelpers.ExecuteScalar("select Program from RUN where Step = '1'", null).ToString();
// SQLiteHelpers.Close();
if (ID != null) { d = Convert.ToInt16(ID); } else { return; }
DataRow dr = MainWindowViewModel.dt_TP.NewRow();//添加表数据
//
dr["WorkOrder"] = MainWindowViewModel.WorkNumder;
dr["ProgramID"] = ProgramID;
dr["Program"] = ProgramNAME;
dr["Parameter1"] = 0;
dr["Parameter2"] = 0;
dr["Parameter3"] = 0;
dr["Parameter4"] = 0;
dr["Parameter5"] = 0;
dr["Parameter6"] = 0;
dr["Parameter7"] = 0;
dr["Parameter8"] = 0;
dr["Parameter9"] = 0;
dr["Parameter10"] = 0;
dr["Parameter1_S1"] = 0;
dr["Parameter2_S1"] = 0;
dr["Parameter3_S1"] = 0;
dr["Parameter4_S1"] = 0;
dr["Parameter5_S1"] = 0;
dr["Parameter1_S2"] = 0;
dr["Parameter2_S2"] = 0;
dr["Parameter3_S2"] = 0;
dr["Parameter4_S2"] = 0;
dr["Parameter5_S2"] = 0;
dr["Parameter1_S3"] = 0;
dr["Parameter2_S3"] = 0;
dr["Parameter3_S3"] = 0;
dr["Parameter4_S3"] = 0;
dr["Parameter5_S3"] = 0;
dr["StepName_S1"] = " ";
dr["StepName_S2"] = " ";
dr["StepName_S3"] = " ";
dr["StepID_S1"] = "000";
dr["StepID_S2"] = "000";
dr["StepID_S3"] = "000";
MainWindowViewModel.dt_TP.Rows.InsertAt(dr, d - 1);
// ID = null;
Dat();
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Insert", "STEP = "+ID);
if (ID == null) return;// ID = MainWindowViewModel.dt_TP.Rows.Count.ToString();
ViewStep viewstop = new ViewStep(null, MainWindowViewModel.dt_TP.Select("STEP = " + ID).First());
viewstop.boxNAME.IsEnabled = false;
//viewstop.no.IsEnabled = false;
viewstop.data = ID;
viewstop.AddressUpdated += new ViewStep.AddressUpdateHandler(Address_InsertClicked);
viewstop.ShowDialog();
if (ID != null) { d = Convert.ToInt16(ID); } else { return; }
DataRow dr = MainWindowViewModel.dt_TP.NewRow();//添加表数据
//
dr["WorkOrder"] = MainWindowViewModel.WorkNumder;
dr["ProgramID"] = ProgramID;
dr["Program"] = ProgramNAME;
dr["Parameter1"] = 0;
dr["Parameter2"] = 0;
dr["Parameter3"] = 0;
dr["Parameter4"] = 0;
dr["Parameter5"] = 0;
dr["Parameter6"] = 0;
dr["Parameter7"] = 0;
dr["Parameter8"] = 0;
dr["Parameter9"] = 0;
dr["Parameter10"] = 0;
dr["Parameter1_S1"] = 0;
dr["Parameter2_S1"] = 0;
dr["Parameter3_S1"] = 0;
dr["Parameter4_S1"] = 0;
dr["Parameter5_S1"] = 0;
dr["Parameter1_S2"] = 0;
dr["Parameter2_S2"] = 0;
dr["Parameter3_S2"] = 0;
dr["Parameter4_S2"] = 0;
dr["Parameter5_S2"] = 0;
dr["Parameter1_S3"] = 0;
dr["Parameter2_S3"] = 0;
dr["Parameter3_S3"] = 0;
dr["Parameter4_S3"] = 0;
dr["Parameter5_S3"] = 0;
dr["StepName_S1"] = " ";
dr["StepName_S2"] = " ";
dr["StepName_S3"] = " ";
dr["StepID_S1"] = "000";
dr["StepID_S2"] = "000";
dr["StepID_S3"] = "000";
MainWindowViewModel.dt_TP.Rows.InsertAt(dr, d - 1);
// ID = null;
Dat();
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Insert", "STEP = " + ID);
if (ID == null) return;// ID = MainWindowViewModel.dt_TP.Rows.Count.ToString();
ViewStep viewstop = new ViewStep(null, MainWindowViewModel.dt_TP.Select("STEP = " + ID).First());
viewstop.boxNAME.IsEnabled = false;
//viewstop.no.IsEnabled = false;
viewstop.data = ID;
viewstop.AddressUpdated += new ViewStep.AddressUpdateHandler(Address_InsertClicked);
viewstop.ShowDialog();
}
else
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
}
private void Address_InsertClicked(object sender, AddressUpdateEventArgs e)//插入返回结果
{
@@ -563,17 +598,24 @@ namespace DyeingComputer.View
}
private void ProgramgroupView_Jump_Click(object sender, RoutedEventArgs e)
{
DataRow dr = MainWindowViewModel.dt_TP.Select("Step='" + ID + "'").First();
dr.BeginEdit();
dr["RUN"] = 2;
dr.EndEdit();
MainWindowViewModel.User_Button = true;
MainWindowViewModel.RUN_STEPID = Convert.ToInt16(ID);//插入步骤号
MainWindowViewModel.STEP_START(Numder, Convert.ToDouble(P1), Convert.ToDouble(P2), Convert.ToDouble(P3),
Convert.ToDouble(P4), Convert.ToDouble(P5));
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Jump", "STEP = " + ID +
";StepID=" + Numder + ";P1=" + P1 + ";P2=" + P2 + ";P3=" + P3 + ";P4=" + P4 + ";P5=" + P5);
if (!MainWindowViewModel._Lock_bool)
{
DataRow dr = MainWindowViewModel.dt_TP.Select("Step='" + ID + "'").First();
dr.BeginEdit();
dr["RUN"] = 2;
dr.EndEdit();
MainWindowViewModel.User_Button = true;
MainWindowViewModel.RUN_STEPID = Convert.ToInt16(ID);//插入步骤号
MainWindowViewModel.STEP_START(Numder, Convert.ToDouble(P1), Convert.ToDouble(P2), Convert.ToDouble(P3),
Convert.ToDouble(P4), Convert.ToDouble(P5));
APILog.LOGlog(MainWindowViewModel.WorkNumder.ToString(), "UserActions", "Jump", "STEP = " + ID +
";StepID=" + Numder + ";P1=" + P1 + ";P2=" + P2 + ";P3=" + P3 + ";P4=" + P4 + ";P5=" + P5);
}
else
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
}//跳步
private void Grid_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
+164 -128
View File
@@ -105,32 +105,48 @@ namespace DyeingComputer.View
// Process_id = null;
// _lock = null;
}
private void WorkOrderView_lock_Click(object sender, RoutedEventArgs e)//锁定按钮
{
if (WorkOrder_Numder == null) return;
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
updata_temp.Clear();//使用前清理缓存
if (_lock == "0") //改变lock的状态
if (!MainWindowViewModel._Lock_bool)
{
updata_temp.Add("lock", 1);
MainWindow.SQLiteHelpers.Update("WorkOrder", updata_temp, "WorkOrder='" + WorkOrder_Numder + "'", null);
if (WorkOrder_Numder == null) return;
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
updata_temp.Clear();//使用前清理缓存
if (_lock == "0") //改变lock的状态
{
updata_temp.Add("lock", 1);
MainWindow.SQLiteHelpers.Update("WorkOrder", updata_temp, "WorkOrder='" + WorkOrder_Numder + "'", null);
}
else
{
updata_temp.Add("lock", 0);
MainWindow.SQLiteHelpers.Update("WorkOrder", updata_temp, "WorkOrder='" + WorkOrder_Numder + "'", null);
}
//SQLiteHelpers.Close();
Workorder_sql();
}
else
{
updata_temp.Add("lock", 0);
MainWindow.SQLiteHelpers.Update("WorkOrder", updata_temp, "WorkOrder='" + WorkOrder_Numder + "'", null);
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
//SQLiteHelpers.Close();
Workorder_sql();
}
private void WorkOrderView_new_Click(object sender, RoutedEventArgs e)//新建按钮
{
ViewProgram viewProgram = new ViewProgram();
viewProgram.AddressUpdated += new ViewProgram.AddressUpdateHandler(Address_ButtonClicked);
viewProgram.ShowDialog();
if (!MainWindowViewModel._Lock_bool)
{
ViewProgram viewProgram = new ViewProgram();
viewProgram.AddressUpdated += new ViewProgram.AddressUpdateHandler(Address_ButtonClicked);
viewProgram.ShowDialog();
}
else
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
}
private void Address_ButtonClicked(object sender, AddressUpdateEventArgs e)//新建返回结果
{
@@ -161,60 +177,72 @@ namespace DyeingComputer.View
MainWindow.SQLiteHelpers.InsertData("WorkOrder", WorkOrder_new);//
/*获取转并插入步骤信息*/
DataTable step_dat = MainWindow.SQLiteHelpers.ExecuteDataSet(
"select * from ProgramSteps where ProgramID='" + Process_id + "'", null).Tables[0]; //读取表写入缓存
DataTable _t = step_dat.Clone();
_t.Columns.Add("WorkOrder", System.Type.GetType("System.String"));
_t.Columns.Add("DYELOT", System.Type.GetType("System.String"));
"select * from ProgramSteps where ProgramID='" + Process_id + "'", null).Tables[0]; //读取表写入缓存
step_dat.Columns.Add("WorkOrder", System.Type.GetType("System.String"));
step_dat.Columns.Add("DYELOT", System.Type.GetType("System.String"));
int a = step_dat.Rows.Count;
for (int i = 0; i < a; i++)
{
_t.Clear();//清空
DataRow dt = step_dat.Rows[i];//行转
DataRow dr = _t.NewRow();
dr.ItemArray = dt.ItemArray;
dr.BeginEdit(); //添加订单号
dr["WorkOrder"] = WorkOrder_Numder;
dr["DYELOT"] = WorkOrder_Numder;
dr.EndEdit();
_t.Rows.InsertAt(dr, 0); //行转换
dt.BeginEdit(); //添加订单号
dt["WorkOrder"] = WorkOrder_Numder;
dt["DYELOT"] = WorkOrder_Numder;
dt.EndEdit();
MainWindow.SQLiteHelpers.InsertData("WorkorderSteps", MainWindow.SQLiteHelpers.DataTableToDictionary(_t));//行插入
MainWindow.SQLiteHelpers.InsertData("WorkorderSteps", MainWindow.SQLiteHelpers.ToDictionary(dt));//行插入
}
//SQLiteHelpers.Close();
}
private void WorkOrderView_del_Click(object sender, RoutedEventArgs e)//删除按钮
{
if (WorkOrder_Numder == null) return;
///弹窗提示确认删除
if (System.Windows.Forms.MessageBox.Show(Properties.Resources.Confirm +
Properties.Resources.Delete + WorkOrder_Numder, "Delete ",
System.Windows.Forms.MessageBoxButtons.OKCancel,
System.Windows.Forms.MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK)
{
if (!MainWindowViewModel._Lock_bool)
{
///执行删除
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
MainWindow.SQLiteHelpers.Delete("WorkOrder", "WorkOrder='" + WorkOrder_Numder + "'", null);
//SQLiteHelpers.Close();
Workorder_sql();
if (WorkOrder_Numder == null) return;
///弹窗提示确认删除
if (System.Windows.Forms.MessageBox.Show(Properties.Resources.Confirm +
Properties.Resources.Delete + WorkOrder_Numder, "Delete ",
System.Windows.Forms.MessageBoxButtons.OKCancel,
System.Windows.Forms.MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK)
{
///执行删除
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
MainWindow.SQLiteHelpers.Delete("WorkOrder", "WorkOrder='" + WorkOrder_Numder + "'", null);
//SQLiteHelpers.Close();
Workorder_sql();
}
SQL_UPDATE = false;
}
SQL_UPDATE = false;
}
else
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
}
private void WorkOrderView_redy_Click(object sender, RoutedEventArgs e)//重染按钮
{
string WorkNum = MainWindowViewModel.WorkNumder.ToString();
if (WorkNum != null)
if (!MainWindowViewModel._Lock_bool)
{
if (System.Windows.Forms.MessageBox.Show(Properties.Resources.Confirm +
Properties.Resources.Redye + WorkNum, "Redye ",
System.Windows.Forms.MessageBoxButtons.OKCancel,
System.Windows.Forms.MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK)
string WorkNum = MainWindowViewModel.WorkNumder.ToString();
if (WorkNum != null)
{
///执行重染
if (System.Windows.Forms.MessageBox.Show(Properties.Resources.Confirm +
Properties.Resources.Redye + WorkNum, "Redye ",
System.Windows.Forms.MessageBoxButtons.OKCancel,
System.Windows.Forms.MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK)
{
///执行重染
}
}
SQL_UPDATE = false;
}
else
{
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
SQL_UPDATE = false;
}
private void Grid_SelectionChanged(object sender, SelectionChangedEventArgs e)//表格选择事件
@@ -330,93 +358,101 @@ namespace DyeingComputer.View
}
private void Image_MouseLeftButtonUp1(object sender, MouseButtonEventArgs e)
{
SQL_UPDATE = false;
((System.Windows.Controls.Image)sender).RenderTransform = Transform.Identity;
if (string.IsNullOrEmpty(WorkOrder_Numder)) return;
if (_lock == "1")
if (!MainWindowViewModel._Lock_bool)
{
MessageBoxResult messageBox = System.Windows.MessageBox.Show(
Properties.Resources.Process_lock, "800", MessageBoxButton.OK);
return;
}
SQL_UPDATE = false;
((System.Windows.Controls.Image)sender).RenderTransform = Transform.Identity;
if (string.IsNullOrEmpty(WorkOrder_Numder)) return;
if (_lock == "1")
{
MessageBoxResult messageBox = System.Windows.MessageBox.Show(
Properties.Resources.Process_lock, "800", MessageBoxButton.OK);
return;
}
DataTable WorkorderSteps = new DataTable();
int a;
DataTable WorkorderSteps = new DataTable();
int a;
/*检查并写入run信息*/
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
/*检查并写入run信息*/
//SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
int R_D = MainWindow.SQLiteHelpers.ExecuteDataSet("select * from RUN", null).Tables[0].Rows.Count; //读取表写入缓存
if (R_D > 0)//判断是否有运行中工艺
{
int R_D = MainWindow.SQLiteHelpers.ExecuteDataSet("select * from RUN", null).Tables[0].Rows.Count; //读取表写入缓存
if (R_D > 0)//判断是否有运行中工艺
{
//SQLiteHelpers.Close(); //关闭连接
MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show(
Properties.Resources.RunningProcess, "800", MessageBoxButton.YesNo);
if (messageBoxResult == MessageBoxResult.No) return;
if (messageBoxResult == MessageBoxResult.Yes)
{
if (MainWindowViewModel.S17 == 1) //拒绝操作
{
System.Windows.MessageBox.Show(Properties.Resources.refuse, "800", MessageBoxButton.OK);
return;
}
// SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
}
}
updata_temp.Clear(); //使用前清缓存
updata_temp.Add("State", 205);
MainWindow.SQLiteHelpers.Update("WorkOrder", updata_temp, "WorkOrder='" + WorkOrder_Numder + "'", null);
MainWindowViewModel.Dyelot_dat = MainWindow.SQLiteHelpers.ExecuteDataSet("select * from Dyelot where Dyelot = '" +
Dyelot + "'", null).Tables[0];
WorkorderSteps = MainWindow.SQLiteHelpers.ExecuteDataSet(
"select * from WorkorderSteps where WorkOrder='" + WorkOrder_Numder + "'", null).Tables[0]; //读取表写入缓存
MainWindowViewModel.ProgramName = Process_Name;
MainWindowViewModel.Dyelot = Dyelot;
MainWindow.SQLiteHelpers.Delete("RUN", null, null); //删除run信息
a = WorkorderSteps.Rows.Count;
for (int i = 0; i < a; i++)
{
DataRow dr = WorkorderSteps.Rows[i];//行转
dr.BeginEdit(); //添加订单号
dr["ProgramID"] = Process_id;
dr["Program"] = MainWindowViewModel.ProgramName;
dr.EndEdit();
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.ToDictionary(dr));//行插入
}
updata_temp.Clear(); //使用前清缓存
updata_temp.Add("RUN", 1);
MainWindow.SQLiteHelpers.Update("RUN", updata_temp, "Step=1", null);
//SQLiteHelpers.Close(); //关闭连接
MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show(
Properties.Resources.RunningProcess, "800", MessageBoxButton.YesNo);
if (messageBoxResult == MessageBoxResult.No) return;
if (messageBoxResult == MessageBoxResult.Yes)
/*触发启动*/
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(), "UserActions", "Jump", "STEP = " +
MainWindowViewModel.RUN_STEPID + ";StepID=" + Numder + ";P1=" + P1 + ";P2=" + P2 + ";P3=" + P3 + ";P4=" + P4 + ";P5=" + P5);
/*选定工艺有效跳转准备 */
if (Process_id != null) //选定工艺有效跳转准备
{
if (MainWindowViewModel.S17 == 1) //拒绝操作
{
System.Windows.MessageBox.Show(Properties.Resources.refuse, "800", MessageBoxButton.OK);
return;
}
// SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
// SQLiteHelpers.Open(); //打开数据库
MainWindowViewModel.WorkNumder = WorkOrder_Numder;
TechnologicalProcessView.workName = Process_id;
MainWindowViewModel.SYS_REDYE = 0;
MainWindowViewModel.ViewID = 1;
var _mainWindow = Application.Current.Windows.Cast<Window>().FirstOrDefault(window => window is MainWindow) as MainWindow;//跨页面
_mainWindow.container.Content = new TechnologicalProcessView();//获取控件
}
}
updata_temp.Clear(); //使用前清缓存
updata_temp.Add("State", 205);
MainWindow.SQLiteHelpers.Update("WorkOrder", updata_temp, "WorkOrder='" + WorkOrder_Numder + "'", null);
MainWindowViewModel.Dyelot_dat = MainWindow.SQLiteHelpers.ExecuteDataSet("select * from Dyelot where Dyelot = '" +
Dyelot + "'", null).Tables[0];
WorkorderSteps = MainWindow.SQLiteHelpers.ExecuteDataSet(
"select * from WorkorderSteps where WorkOrder='" + WorkOrder_Numder + "'", null).Tables[0]; //读取表写入缓存
MainWindowViewModel.ProgramName = Process_Name;
MainWindowViewModel.Dyelot = Dyelot;
MainWindow.SQLiteHelpers.Delete("RUN", null, null); //删除run信息
a = WorkorderSteps.Rows.Count;
for (int i = 0; i < a; i++)
else
{
DataRow dr = WorkorderSteps.Rows[i];//行转
dr.BeginEdit(); //添加订单号
dr["ProgramID"] = Process_id;
dr["Program"] = MainWindowViewModel.ProgramName;
dr.EndEdit();
MainWindow.SQLiteHelpers.InsertData("RUN", MainWindow.SQLiteHelpers.ToDictionary(dr));//行插入
}
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(), "UserActions", "Jump", "STEP = " +
MainWindowViewModel.RUN_STEPID + ";StepID=" + Numder + ";P1=" + P1 + ";P2=" + P2 + ";P3=" + P3 + ";P4=" + P4 + ";P5=" + P5);
/*选定工艺有效跳转准备 */
if (Process_id != null) //选定工艺有效跳转准备
{
MainWindowViewModel.WorkNumder = WorkOrder_Numder;
TechnologicalProcessView.workName = Process_id;
MainWindowViewModel.SYS_REDYE = 0;
MainWindowViewModel.ViewID = 1;
var _mainWindow = Application.Current.Windows.Cast<Window>().FirstOrDefault(window => window is MainWindow) as MainWindow;//跨页面
_mainWindow.container.Content = new TechnologicalProcessView();//获取控件
MainWindowViewModel.USERinf(Properties.Resources.LockedState + "\n" +
Properties.Resources.TCOIR + "\n" + Properties.Resources.PCATRIL);
}
}//开始