You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
116 lines
5.4 KiB
116 lines
5.4 KiB
using DyeingComputer.View;
|
|
using DyeingComputer.ViewModel;
|
|
using ScottPlot.Colormaps;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Documents;
|
|
using System.Xml.Linq;
|
|
using static DyeingComputer.UserClass.SqliteHelper;
|
|
|
|
namespace DyeingComputer.UserClass
|
|
{
|
|
public class SQLDATA
|
|
{
|
|
private static SQLiteHelper SQLiteHelpers = null; //定义数据库
|
|
private readonly static string DBAddress = Environment.CurrentDirectory + "\\DataBase\\800COMPUTER.db"; //数据库路径
|
|
//WorkOrder表检查写入
|
|
public static bool WorkOrder(string WorkOrder, string ProgramName, string StartTime, string EndTime, string Time, string Remark,string lock_,string state,string ProgramID, string color,string dyelot)
|
|
{
|
|
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
|
|
SQLiteHelpers.Open(); //打开数据库
|
|
object i = SQLiteHelpers.ExecuteScalar("select * from WorkOrder where WorkOrder = "+ WorkOrder,null);
|
|
if (i!=null)
|
|
{
|
|
SQLiteHelpers.Close();
|
|
return false;
|
|
}
|
|
Dictionary<string, object> WorkOrder_new = new Dictionary<string, object>();//缓存函数
|
|
WorkOrder_new.Add("WorkOrder", WorkOrder);
|
|
WorkOrder_new.Add("ProgramName", ProgramName);
|
|
WorkOrder_new.Add("StartTime", StartTime);
|
|
WorkOrder_new.Add("EndTime", EndTime);
|
|
WorkOrder_new.Add("Time", Time);
|
|
WorkOrder_new.Add("Remark", Remark);
|
|
WorkOrder_new.Add("lock", Convert.ToInt16(lock_));
|
|
WorkOrder_new.Add("state", Convert.ToInt16(state));
|
|
WorkOrder_new.Add("ProgramID", ProgramID);
|
|
WorkOrder_new.Add("color", color);
|
|
WorkOrder_new.Add("Dyelot", dyelot);
|
|
SQLiteHelpers.InsertData("WorkOrder", WorkOrder_new);
|
|
SQLiteHelpers.Close();
|
|
return true;
|
|
}
|
|
|
|
public static bool WorkOderStep(DataTable WorkOrderStep_)
|
|
{
|
|
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
|
|
SQLiteHelpers.Open(); //打开数据库
|
|
DataTable data_t = WorkOrderStep_.Clone();
|
|
int a = WorkOrderStep_.Rows.Count;
|
|
if (a < 1)
|
|
{
|
|
SQLiteHelpers.Close();
|
|
return false;
|
|
}
|
|
string Program = WorkOrderStep_.Rows[0][0].ToString();
|
|
object n = SQLiteHelpers.ExecuteScalar("select * from WorkorderSteps where Program = " + Program, null);
|
|
if (n != null)//如id存在着返回错误状态
|
|
{
|
|
SQLiteHelpers.Close();
|
|
return false;
|
|
}
|
|
for (int i = 0; i < a; i++)
|
|
{
|
|
data_t.Clear();//清空
|
|
DataRow dr = data_t.NewRow();
|
|
dr.ItemArray = WorkOrderStep_.Rows[i].ItemArray;
|
|
data_t.Rows.InsertAt(dr, 0);
|
|
SQLiteHelpers.InsertData("WorkorderSteps", SQLiteHelpers.DataTableToDictionary(data_t));//行插入
|
|
}
|
|
SQLiteHelpers.Close(); //关闭连接
|
|
return true;
|
|
}
|
|
|
|
public static void TechnologicalProcess_START(string workName)
|
|
{
|
|
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
|
|
SQLiteHelpers.Open(); //打开数据库
|
|
int r = 0;
|
|
string sql_script = "select * from WorkorderSteps where ProgramID = '" + workName + "'";
|
|
if (TechnologicalProcessView.sql != null) TechnologicalProcessView.sql.Clear(); //清空缓存
|
|
TechnologicalProcessView.sql = SQLiteHelpers.ExecuteDataSet(sql_script, null); //读取表写入缓存
|
|
MainWindowViewModel.ProgramName = SQLiteHelpers.ExecuteScalar("select ProgramName from Workorder where ProgramID = '" + workName + "'", null).ToString();
|
|
|
|
SQLiteHelpers.Delete("RUN", null, null); //删除run信息
|
|
DataTable data_t = new DataTable();
|
|
data_t = TechnologicalProcessView.sql.Tables[0].Clone();
|
|
data_t.Columns.Add("DYELOT", typeof(string)); //添加列
|
|
int a = TechnologicalProcessView.sql.Tables[0].Rows.Count;
|
|
for (int i = 0; i < a; i++)
|
|
{
|
|
data_t.Clear();//清空
|
|
DataRow dt = TechnologicalProcessView.sql.Tables[0].Rows[i];//行转
|
|
DataRow dr = data_t.NewRow();
|
|
dr.ItemArray = dt.ItemArray;
|
|
dr.BeginEdit(); //添加订单号
|
|
dr["DYELOT"] = MainWindowViewModel.WorkNumder;
|
|
dr.EndEdit();
|
|
data_t.Rows.InsertAt(dr, 0); //行转换
|
|
|
|
r = SQLiteHelpers.InsertData("RUN", SQLiteHelpers.DataTableToDictionary(data_t));//行插入
|
|
}
|
|
//数据插入
|
|
MainWindowViewModel.WorkNumder = SQLiteHelpers.ExecuteDataSet("select WorkOrder from Workorder where ProgramID = '" + workName + "'", null);;
|
|
TechnologicalProcessView.workName = workName;
|
|
MainWindowViewModel.SYS_REDYE = 0;
|
|
MainWindowViewModel.ViewID = 1;
|
|
|
|
SQLiteHelpers.Close(); //关闭连接
|
|
}
|
|
|
|
}
|
|
}
|
|
|