BoardLog.cs
3.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace URSoldering.Common
{
public class BoardLog
{
/// <summary>
/// 日志记录时间
/// </summary>
public DateTime LogTime { get; set; }
/// <summary>
/// 电路板名称
/// </summary>
public string BoardName { get; set; }
/// <summary>
/// 电路板焊点名称
/// </summary>
public string BoardPoint { get; set; }
/// <summary>
/// 预热温度
/// </summary>
public double PreTemp { get; set; }
/// <summary>
/// 开始预热时间
/// </summary>
public DateTime StartPreTime { get; set; }
/// <summary>
/// 结束预热时间
/// </summary>
public DateTime EndPreTime { get; set; }
/// <summary>
/// 焊接温度
/// </summary>
public double WeldTemp { get; set; }
/// <summary>
/// 开始焊接时间
/// </summary>
public DateTime StartSolderingTime { get; set; }
/// <summary>
/// 结束焊接时间
/// </summary>
public DateTime EndSolderingTime { get; set; }
/// <summary>
/// 预送丝量
/// </summary>
public double PreSendWire { get; set; }
/// <summary>
/// 送丝长度
/// </summary>
public double SendWire { get; set; }
public static BoardLog GetLog(string s)
{
string[] fields = s.Split(',');
if (fields.Length >= 7)
{
try
{
BoardLog log = new BoardLog();
log.LogTime = Convert.ToDateTime(fields[0]);
log.BoardName = fields[1];
log.BoardPoint = fields[2];
log.StartPreTime = Convert.ToDateTime(fields[3]);
log.EndPreTime = Convert.ToDateTime(fields[4]);
log.StartSolderingTime = Convert.ToDateTime(fields[5]);
log.EndSolderingTime = Convert.ToDateTime(fields[6]);
if (fields.Length >= 15)
{
log.PreTemp = Convert.ToDouble(fields[7]);
log.WeldTemp = Convert.ToDouble(fields[9]);
int sspeed = Convert.ToInt32(fields[11]);
double stime = Convert.ToDouble(fields[12]);
int speed = Convert.ToInt32(fields[13]);
double time = Convert.ToDouble(fields[14]);
log.SendWire = speed * time;
log.PreSendWire = sspeed * stime;
}
else
{
log.PreTemp = 0;
log.WeldTemp = 0;
log.SendWire = 0;
log.PreSendWire = 0;
}
return log;
}
catch (Exception ex)
{
LogUtil.error("解析日志文件出错:【" + s + "】" + ex.ToString());
}
}
return null;
}
private static string spilt = ",";
public string ToCSVString()
{
return LogTime + spilt + BoardName + spilt + BoardPoint + spilt + StartPreTime + spilt + EndPreTime + spilt
+ StartSolderingTime + spilt + EndSolderingTime + spilt + PreTemp + spilt + WeldTemp + spilt + SendWire;
}
public static string CSVTitleString()
{
return "记录时间" + spilt + "电路板名称" + spilt + "焊点名称" + spilt + "预热开始时间" + spilt + "预热结束时间" + spilt
+ "焊接开始时间" + spilt + "焊接结束时间" + spilt + "预热温度" + spilt + "焊接温度" + spilt + "送丝长度(毫米)";
}
}
}