Browse Source

明细传输错误修正

master
sc 3 weeks ago
parent
commit
650f89b7cb
  1. 19
      UserClass/AsyncTcpServer.cs
  2. 28
      UserClass/SQLDATA.cs
  3. 24
      View/WorkOrderView.xaml.cs

19
UserClass/AsyncTcpServer.cs

@ -110,19 +110,10 @@ namespace DyeingComputer.UserClass
Dictionary<string, object> WorkOrder_dat; Dictionary<string, object> WorkOrder_dat;
WorkOrder_dat = SerializeConvert.JsonDeserializeFromString<Dictionary<string, object>>(SYSDAT); WorkOrder_dat = SerializeConvert.JsonDeserializeFromString<Dictionary<string, object>>(SYSDAT);
//WorkOrder_dat.GetValue("WorkOrder"); //WorkOrder_dat.GetValue("WorkOrder");
bool dat_w = SQLDATA.WorkOrder(
WorkOrder_dat.GetValue("WorkOrder").ToString(), object i = MainWindow.SQLiteHelpers.ExecuteScalar("select * from WorkOrder where WorkOrder = " + WorkOrder_dat.GetValue("WorkOrder").ToString(), null);
WorkOrder_dat.GetValue("ProgramName").ToString(),
WorkOrder_dat.GetValue("StartTime").ToString(), if (i != null)
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 + "]" + client.SendAsync("SC910" + "[" + MainWindowViewModel.S01 + "]" +
WorkOrder_dat.GetValue("WorkOrder").ToString()); WorkOrder_dat.GetValue("WorkOrder").ToString());
@ -133,6 +124,8 @@ namespace DyeingComputer.UserClass
WorkOrder_dat.GetValue("WorkOrder").ToString()); MainWindowViewModel.TX++; WorkOrder_dat.GetValue("WorkOrder").ToString()); MainWindowViewModel.TX++;
} }
MainWindow.SQLiteHelpers.InsertData("WorkOrder", WorkOrder_dat);
APILog.DBlog(client.IP, SYSKEY, SYSAPI, SYSDAT);//记录指令 APILog.DBlog(client.IP, SYSKEY, SYSAPI, SYSDAT);//记录指令
} }
catch (Exception ex) catch (Exception ex)

28
UserClass/SQLDATA.cs

@ -17,33 +17,7 @@ namespace DyeingComputer.UserClass
// private static SQLiteHelper SQLiteHelpers = null; //定义数据库 // private static SQLiteHelper SQLiteHelpers = null; //定义数据库
// private readonly static string DBAddress = Environment.CurrentDirectory + "\\DataBase\\800COMPUTER.db"; //数据库路径 // 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 = MainWindow.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);
MainWindow.SQLiteHelpers.InsertData("WorkOrder", WorkOrder_new);
//SQLiteHelpers.Close();
return true;
}
public static bool WorkOderStep(DataTable WorkOrderStep_) public static bool WorkOderStep(DataTable WorkOrderStep_)
{ {

24
View/WorkOrderView.xaml.cs

@ -485,17 +485,17 @@ namespace DyeingComputer.View
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
for (int i = 0; i < dat.Rows.Count; i++) for (int i = 0; i < dat.Rows.Count; i++)
{ {
switch (dat.Rows[i][5].ToString())//步骤用时计算 switch (dat.Rows[i].Field<string>("StepID"))//步骤用时计算
{ {
case "001": case "001":
TT = MSTT; TT = MSTT;
TC = (Double)dat.Rows[i][9]; TC = dat.Rows[i].Field<double>("Parameter2");
if (TC > 9.9 || TC < 0.1) TC = 9.9;//计算限制 if (TC > 9.9 || TC < 0.1) TC = 9.9;//计算限制
MSTT = (Double)dat.Rows[i][8]; MSTT = dat.Rows[i].Field<double>("Parameter1");
TT = Math.Abs(MSTT - TT) / TC * 60; TT = Math.Abs(MSTT - TT) / TC * 60;
TIMET = Convert.ToDateTime(TIMET).AddSeconds(TT).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddSeconds(TT).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
TIMET = Convert.ToDateTime(TIMET).AddMinutes((Double)dat.Rows[i][12]).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddMinutes(dat.Rows[i].Field<double>("Parameter3")).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "007": case "007":
@ -507,15 +507,15 @@ namespace DyeingComputer.View
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "013": case "013":
TIMET = Convert.ToDateTime(TIMET).AddMinutes((Double)dat.Rows[i][10] * (Double)dat.Rows[i][11]).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddMinutes(dat.Rows[i].Field<double>("Parameter3") * dat.Rows[i].Field<double>("Parameter4")).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "015": case "015":
TIMET = Convert.ToDateTime(TIMET).AddMinutes((Double)dat.Rows[i][10]).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddMinutes(dat.Rows[i].Field<double>("Parameter3")).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "017": case "017":
TIMET = Convert.ToDateTime(TIMET).AddMinutes((Double)dat.Rows[i][10]).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddMinutes(dat.Rows[i].Field<double>("Parameter3")).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "020": case "020":
@ -527,24 +527,24 @@ namespace DyeingComputer.View
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "031": case "031":
TIMET = Convert.ToDateTime(TIMET).AddMinutes((int)dat.Rows[i][8]).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddMinutes(dat.Rows[i].Field<double>("Parameter1")).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "065": case "065":
TIMET = Convert.ToDateTime(TIMET).AddMinutes((int)dat.Rows[i][10]).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddMinutes(dat.Rows[i].Field<double>("Parameter3")).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "091": case "091":
TT = MSTT; TT = MSTT;
TC = (Double)dat.Rows[i][9]; TC = (Double)dat.Rows[i][7];
if (TC > 9.9 || TC < 0.1) TC = 9.9;//计算限制 if (TC > 9.9 || TC < 0.1) TC = 9.9;//计算限制
MSTT = (Double)dat.Rows[i][8]; MSTT = (Double)dat.Rows[i][6];
TT = Math.Abs(MSTT - TT) / TC * 60; TT = Math.Abs(MSTT - TT) / TC * 60;
TIMET = Convert.ToDateTime(TIMET).AddSeconds(TT).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddSeconds(TT).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
case "093": case "093":
TIMET = Convert.ToDateTime(TIMET).AddMinutes((int)dat.Rows[i][8]).ToString("HH:mm:ss"); TIMET = Convert.ToDateTime(TIMET).AddMinutes(dat.Rows[i].Field<double>("Parameter1")).ToString("HH:mm:ss");
TEMPTable.Rows.Add(new object[] { TIMET, MSTT }); TEMPTable.Rows.Add(new object[] { TIMET, MSTT });
break; break;
default: default:

Loading…
Cancel
Save