|
|
@@ -57,6 +57,7 @@ namespace BulkPrinting
|
|
57
|
57
|
|
|
58
|
58
|
HttpWebRequest request = WebRequest.Create("https://" + Configuration.ServerDN + ":" + Configuration.ServerPort + "/api/login") as HttpWebRequest;
|
|
59
|
59
|
request.ServerCertificateValidationCallback = delegate { return true; };
|
|
|
60
|
+
|
|
60
|
61
|
request.Method = "POST";
|
|
61
|
62
|
request.ContentType = "application/json";
|
|
62
|
63
|
request.ContentLength = data.Length;
|
|
|
@@ -76,20 +77,14 @@ namespace BulkPrinting
|
|
76
|
77
|
Globals.SessionData = JsonConvert.DeserializeObject<OKResponse>(responseString);
|
|
77
|
78
|
if (RememberMe == true)
|
|
78
|
79
|
{
|
|
79
|
|
- RegSave("Username", UserLoginData.Username);
|
|
80
|
|
- RegSave("UserID", UserLoginData.UserId.ToString());
|
|
|
80
|
+ SaveSetting("Username", UserLoginData.Username);
|
|
|
81
|
+ SaveSetting("UserID", UserLoginData.UserId.ToString());
|
|
81
|
82
|
}
|
|
82
|
83
|
else {
|
|
83
|
|
- RegSave("Username", "");
|
|
84
|
|
- RegSave("UserID", "");
|
|
|
84
|
+ SaveSetting("Username", "");
|
|
|
85
|
+ SaveSetting("UserID", "");
|
|
85
|
86
|
}
|
|
86
|
|
- RegSave("VendorID", UserLoginData.VendorId.ToString());
|
|
87
|
|
-
|
|
88
|
|
- //TODO: Remove ovveride
|
|
89
|
|
- RegSave("EncryptedDBPassword", BitConverter.ToString(Globals.SessionData.Credentials.Payload.EncryptedDatabasePassword));
|
|
90
|
|
- RegSave("SessionData", BitConverter.ToString(Globals.SessionData.Credentials.Salt));
|
|
91
|
|
- RegSave("SessionValue", Globals.SessionData.Credentials.Iterations.ToString());
|
|
92
|
|
-
|
|
|
87
|
+ SaveSetting("VendorID", UserLoginData.VendorId.ToString());
|
|
93
|
88
|
|
|
94
|
89
|
Globals.SessionEncryptedDatabasePassword = Globals.SessionData.Credentials.Payload.EncryptedDatabasePassword;
|
|
95
|
90
|
Globals.SessionSalt = Globals.SessionData.Credentials.Salt;
|
|
|
@@ -97,7 +92,7 @@ namespace BulkPrinting
|
|
97
|
92
|
|
|
98
|
93
|
return true;
|
|
99
|
94
|
}
|
|
100
|
|
- catch (WebException e) {
|
|
|
95
|
+ catch (WebException) {
|
|
101
|
96
|
return false;
|
|
102
|
97
|
}
|
|
103
|
98
|
}
|
|
|
@@ -145,7 +140,7 @@ namespace BulkPrinting
|
|
145
|
140
|
return false;
|
|
146
|
141
|
}
|
|
147
|
142
|
}
|
|
148
|
|
-
|
|
|
143
|
+ /*
|
|
149
|
144
|
private static bool RegSave(string Key, string Value)
|
|
150
|
145
|
{
|
|
151
|
146
|
bool Result;
|
|
|
@@ -178,7 +173,73 @@ namespace BulkPrinting
|
|
178
|
173
|
}
|
|
179
|
174
|
return Result;
|
|
180
|
175
|
}
|
|
|
176
|
+ */
|
|
181
|
177
|
|
|
|
178
|
+ private static bool SaveSetting(string Key, string Value)
|
|
|
179
|
+ {
|
|
|
180
|
+ SavedSettings StoredValues = LoadSavedSettings();
|
|
|
181
|
+ switch (Key)
|
|
|
182
|
+ {
|
|
|
183
|
+ case "Username":
|
|
|
184
|
+ StoredValues.Username = Value;
|
|
|
185
|
+ break;
|
|
|
186
|
+ case "UserID":
|
|
|
187
|
+ if (Value == "")
|
|
|
188
|
+ StoredValues.UserId = 0;
|
|
|
189
|
+ else
|
|
|
190
|
+ StoredValues.UserId = int.Parse(Value);
|
|
|
191
|
+ break;
|
|
|
192
|
+ case "VendorID":
|
|
|
193
|
+ if (Value == "")
|
|
|
194
|
+ StoredValues.VendorId = 0;
|
|
|
195
|
+ else
|
|
|
196
|
+ StoredValues.VendorId = int.Parse(Value);
|
|
|
197
|
+ break;
|
|
|
198
|
+ default:
|
|
|
199
|
+ return false;
|
|
|
200
|
+ }
|
|
|
201
|
+ string MaxAppDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Configuration.MaxDataPathName);
|
|
|
202
|
+ string MaxSettingsFilePath = Path.Combine(MaxAppDataPath, "maxsettings.dat");
|
|
|
203
|
+ File.WriteAllText(MaxSettingsFilePath, JsonConvert.SerializeObject(StoredValues));
|
|
|
204
|
+ return true;
|
|
|
205
|
+ }
|
|
|
206
|
+
|
|
|
207
|
+ public static string LoadSetting(string Key)
|
|
|
208
|
+ {
|
|
|
209
|
+ SavedSettings StoredValues = LoadSavedSettings();
|
|
|
210
|
+ string ReturnVal = "";
|
|
|
211
|
+ switch (Key)
|
|
|
212
|
+ {
|
|
|
213
|
+ case "Username":
|
|
|
214
|
+ ReturnVal = StoredValues.Username;
|
|
|
215
|
+ break;
|
|
|
216
|
+ case "UserID":
|
|
|
217
|
+ ReturnVal = StoredValues.UserId.ToString();
|
|
|
218
|
+ break;
|
|
|
219
|
+ case "VendorID":
|
|
|
220
|
+ ReturnVal = StoredValues.VendorId.ToString();
|
|
|
221
|
+ break;
|
|
|
222
|
+ default:
|
|
|
223
|
+ return "";
|
|
|
224
|
+ }
|
|
|
225
|
+ if (ReturnVal == "0")
|
|
|
226
|
+ return "";
|
|
|
227
|
+ return ReturnVal;
|
|
|
228
|
+ }
|
|
|
229
|
+
|
|
|
230
|
+ private static SavedSettings LoadSavedSettings() {
|
|
|
231
|
+ string MaxAppDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Configuration.MaxDataPathName);
|
|
|
232
|
+ string MaxSettingsFilePath = Path.Combine(MaxAppDataPath, "maxsettings.dat");
|
|
|
233
|
+ SavedSettings StoredValues = new SavedSettings();
|
|
|
234
|
+ if (File.Exists(MaxSettingsFilePath)) {
|
|
|
235
|
+ StoredValues = JsonConvert.DeserializeObject<SavedSettings>(File.ReadAllText(MaxSettingsFilePath));
|
|
|
236
|
+ }
|
|
|
237
|
+ else {
|
|
|
238
|
+ File.WriteAllText(MaxSettingsFilePath, JsonConvert.SerializeObject(StoredValues));
|
|
|
239
|
+ }
|
|
|
240
|
+ return StoredValues;
|
|
|
241
|
+ }
|
|
|
242
|
+
|
|
182
|
243
|
public static byte[] Transform(ICryptoTransform transform, byte[] input)
|
|
183
|
244
|
{
|
|
184
|
245
|
using (var memoryStream = new MemoryStream())
|
|
|
@@ -331,7 +392,11 @@ namespace BulkPrinting
|
|
331
|
392
|
bool IsReprint;
|
|
332
|
393
|
|
|
333
|
394
|
var PrinterInitString = new StringBuilder();
|
|
334
|
|
- PrinterInitString.Append(Printer.INITIALISE_PRINTER).Append(Printer.UNIDIRECTIONAL_OFF).Append(Printer.EMPHASISE_ON);
|
|
|
395
|
+ PrinterInitString.Append(Printer.INITIALISE_PRINTER).Append(Printer.EMPHASISE_ON).Append(Printer.UNIDIRECTIONAL_OFF).Append(Printer.CHARPITCHELITE);
|
|
|
396
|
+ int initJobID = Globals.MaxPrinter.Open("Printer_Init");
|
|
|
397
|
+ if (initJobID == 0) return;
|
|
|
398
|
+ Globals.MaxPrinter.Print(PrinterInitString.ToString());
|
|
|
399
|
+ Globals.MaxPrinter.Close();
|
|
335
|
400
|
|
|
336
|
401
|
List<EventLog> LogEvents = new List<EventLog>();
|
|
337
|
402
|
|
|
|
@@ -366,42 +431,39 @@ namespace BulkPrinting
|
|
366
|
431
|
if (VoucherCount >= 5 || TotalCount == (EndSeqNo - StartSeqNo))
|
|
367
|
432
|
{
|
|
368
|
433
|
RowCount++;
|
|
369
|
|
- string PrintRow = "\r\n\n\n";
|
|
370
|
|
- //var PrintRowToo = new StringBuilder();
|
|
|
434
|
+ string PrintRow = "\r\n\n\n ";
|
|
371
|
435
|
for (int Column = 0; Column < VoucherRow.Count(); Column++)
|
|
372
|
436
|
{
|
|
373
|
437
|
IndividualVoucher = VoucherRow[Column];
|
|
374
|
|
- PrintRow += (Column == 2 ? " " : "") + (" " + IndividualVoucher.DecryptedPIN).PadRight(25, ' ');
|
|
375
|
|
- //PrintRowToo.Append(Column == 2 ? " " : "").AppendFormat(" {0:25}", IndividualVoucher.DecryptedPIN);
|
|
|
438
|
+ PrintRow += (Column == 2 ? " " : "") + (" " + IndividualVoucher.DecryptedPIN).PadRight(30, ' ');
|
|
376
|
439
|
}
|
|
377
|
|
- PrintRow = PrintRow.TrimEnd() + "\r\n\n";
|
|
|
440
|
+ PrintRow = PrintRow.TrimEnd() + "\r\n\n ";
|
|
378
|
441
|
for (int Column = 0; Column < VoucherRow.Count(); Column++)
|
|
379
|
442
|
{
|
|
380
|
443
|
IndividualVoucher = VoucherRow[Column];
|
|
381
|
444
|
SerialNumberTrimmed = IndividualVoucher.Serial;
|
|
382
|
|
- if (SerialNumberTrimmed.Length > 20)
|
|
|
445
|
+ if (SerialNumberTrimmed.Length > 24)
|
|
383
|
446
|
{
|
|
384
|
|
- SerialNumberTrimmed = SerialNumberTrimmed.Substring(0, 20);
|
|
|
447
|
+ SerialNumberTrimmed = SerialNumberTrimmed.Substring(0, 24);
|
|
385
|
448
|
}
|
|
386
|
|
- PrintRow += (Column == 2 ? " " : "") + SerialNumberTrimmed.PadRight(25, ' ');
|
|
|
449
|
+ PrintRow += (Column == 2 ? " " : "") + SerialNumberTrimmed.PadRight(30, ' ');
|
|
387
|
450
|
}
|
|
388
|
|
- PrintRow = PrintRow.TrimEnd() + "\r\n";
|
|
|
451
|
+ PrintRow = PrintRow.TrimEnd() + "\r\n ";
|
|
389
|
452
|
for (int Column = 0; Column < VoucherRow.Count(); Column++)
|
|
390
|
453
|
{
|
|
391
|
454
|
IndividualVoucher = VoucherRow[Column];
|
|
392
|
|
- PrintRow += (Column == 2 ? " " : "") + String.Format("{0}/{1}/{2}", IndividualVoucher.BatchId, IndividualVoucher.SequenceNumber, PageCount).PadRight(25, ' ');
|
|
|
455
|
+ PrintRow += (Column == 2 ? " " : "") + String.Format("{0}/{1}/{2}", IndividualVoucher.BatchId, IndividualVoucher.SequenceNumber, PageCount).PadRight(30, ' ');
|
|
393
|
456
|
}
|
|
394
|
|
- PrintRow = PrintRow.TrimEnd() + "\r\n";
|
|
|
457
|
+ PrintRow = PrintRow.TrimEnd() + "\r\n ";
|
|
395
|
458
|
for (int Column = 0; Column < VoucherRow.Count(); Column++)
|
|
396
|
459
|
{
|
|
397
|
460
|
IndividualVoucher = VoucherRow[Column];
|
|
398
|
|
- PrintRow += (Column == 2 ? " " : "") + IndividualVoucher.Description.PadRight(25, ' ');
|
|
|
461
|
+ PrintRow += (Column == 2 ? " " : "") + IndividualVoucher.Description.PadRight(30, ' ');
|
|
399
|
462
|
}
|
|
400
|
463
|
PrintRow = PrintRow.TrimEnd() + "\r\n\n\n\n\n\n\n\n\n\n\n";
|
|
401
|
464
|
int JobID = Globals.MaxPrinter.Open("Vouchers");
|
|
402
|
465
|
if (JobID == 0) return;
|
|
403
|
466
|
Globals.MaxPrinter.Print(PrintRow);
|
|
404
|
|
- Globals.MaxPrinter.Print(PrinterInitString.ToString());
|
|
405
|
467
|
Globals.MaxPrinter.Close();
|
|
406
|
468
|
foreach (PrintVoucher PrintedVoucher in VoucherRow)
|
|
407
|
469
|
{
|