BufferDataManager.cs
5.8 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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
using OnlineStore.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading.Tasks;
namespace OnlineStore.DeviceLibrary
{
public class BufferDataManager
{
/// <summary>
/// A面有出库任务
/// </summary>
public static bool SideAHasOutTask = false;
/// <summary>
/// B面有出库任务
/// </summary>
public static bool SideBHasOutTask = false;
private static InOutPosInfo aInStoreInfo = null;
private static InOutPosInfo aOutStoreInfo = null;
private static InOutPosInfo bInStoreInfo = null;
private static InOutPosInfo bOutStoreInfo = null;
private static InOutPosInfo aLineStoreInfo = null;
private static InOutPosInfo bLineStoreInfo = null;
private static InOutPosInfo labelInfo = null;
public static bool ReelInBuffData(string posId)
{
if (posId.Equals(aOutStoreInfo?.PosId))
return true;
if (posId.Equals(bOutStoreInfo?.PosId))
return true;
if (posId.Equals(aLineStoreInfo?.PosId))
return true;
if (posId.Equals(bLineStoreInfo?.PosId))
return true;
return false;
}
/// <summary>
/// 存储机构有出库任务
/// </summary>
/// <returns></returns>
public static bool BoxHasOutTask()
{
return SideAHasOutTask || SideBHasOutTask;
}
/// <summary>
/// A进料上暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo AInStoreInfo
{
get { return aInStoreInfo; }
set
{
aInStoreInfo = value;
SaveData(Setting_Init.AInStoreInfo, value);
}
}
/// <summary>
/// A出料下暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo AOutStoreInfo
{
get { return aOutStoreInfo; }
set
{
aOutStoreInfo = value;
SaveData(Setting_Init.AOutStoreInfo, value);
}
}
/// <summary>
/// B进料上暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo BInStoreInfo
{
get { return bInStoreInfo; }
set
{
bInStoreInfo = value;
SaveData(Setting_Init.BInStoreInfo, value);
}
}
/// <summary>
/// B出料下暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo BOutStoreInfo
{
get { return bOutStoreInfo; }
set
{
bOutStoreInfo = value;
SaveData(Setting_Init.BOutStoreInfo, value);
}
}
/// <summary>
/// A侧皮带线上料盘信息
/// </summary>
public static InOutPosInfo ALineStoreInfo
{
get { return aLineStoreInfo; }
set
{
aLineStoreInfo = value;
SaveData(Setting_Init.ALineStoreInfo, value);
}
}
/// <summary>
/// B侧皮带线上料盘信息
/// </summary>
public static InOutPosInfo BLineStoreInfo
{
get { return bLineStoreInfo; }
set
{
bLineStoreInfo = value;
SaveData(Setting_Init.BLineStoreInfo, value);
}
}
/// <summary>
/// 打印机出标对应的料盘信息
/// </summary>
public static InOutPosInfo LabelInfo
{
get { return labelInfo; }
set
{
labelInfo = value;
SaveData(Setting_Init.LabelInfo, value);
}
}
public static void InitData()
{
AInStoreInfo = LoadInoutPosInfo(Setting_Init.AInStoreInfo);
AOutStoreInfo = LoadInoutPosInfo(Setting_Init.AOutStoreInfo);
BInStoreInfo = LoadInoutPosInfo(Setting_Init.BInStoreInfo);
BOutStoreInfo = LoadInoutPosInfo(Setting_Init.BOutStoreInfo);
ALineStoreInfo = LoadInoutPosInfo(Setting_Init.ALineStoreInfo);
BLineStoreInfo = LoadInoutPosInfo(Setting_Init.BLineStoreInfo);
LabelInfo = LoadInoutPosInfo(Setting_Init.LabelInfo);
}
private static InOutPosInfo LoadInoutPosInfo(string configStr)
{
string saveData = ConfigAppSettings.GetValue(configStr);
if (!String.IsNullOrEmpty(saveData))
{
InOutPosInfo ainPos = JsonHelper.DeserializeJsonToObject<InOutPosInfo>(saveData);
if (ainPos != null && (!ainPos.barcode.Equals("")) && (!ainPos.PosId.Equals("")))
{
return ainPos;
}
}
return null;
}
public static T LoadData<T>(string configStr) where T : class
{
string saveData = ConfigAppSettings.GetValue(configStr);
if (!String.IsNullOrEmpty(saveData))
{
T data = JsonHelper.DeserializeJsonToObject<T>(saveData);
return data;
}
return null;
}
public static void SaveData<T>(string configStr, T value) where T : class
{
string jsonData = "";
if (!(value == null))
{
jsonData = JsonHelper.SerializeObject(value);
}
ConfigAppSettings.SaveValue(configStr, jsonData);
LogUtil.info($"保存配置:[{configStr}]=[{jsonData}]");
}
}
}