cập nhật trạng thái máy in
cập nhật trạng thái DE70
This commit is contained in:
+4
-3
@@ -148,8 +148,8 @@ namespace SafeBagDE70
|
|||||||
}
|
}
|
||||||
return bInitUser;
|
return bInitUser;
|
||||||
}
|
}
|
||||||
public static CDMSTATE? CDMSTATE = null;
|
public static CDMSTATE CDMSTATE;
|
||||||
public static ADMINDEVICESTATUS? ADMINDEVICESTATUS = null;
|
public static ADMINDEVICESTATUS ADMINDEVICESTATUS;
|
||||||
private static DateTime CutOffTime = new DateTime(1, 1, 1, 11, 0, 0); // 11:00 a.m as cut-off time
|
private static DateTime CutOffTime = new DateTime(1, 1, 1, 11, 0, 0); // 11:00 a.m as cut-off time
|
||||||
|
|
||||||
public static string GetNumberPartFromMerchantCode(string merchantCode)
|
public static string GetNumberPartFromMerchantCode(string merchantCode)
|
||||||
@@ -609,7 +609,8 @@ namespace SafeBagDE70
|
|||||||
{
|
{
|
||||||
NORMAL = 0,
|
NORMAL = 0,
|
||||||
NEARPAPEROUT = 1,
|
NEARPAPEROUT = 1,
|
||||||
PAPEROUT=2
|
PAPEROUT=2,
|
||||||
|
ERROR=3
|
||||||
}
|
}
|
||||||
public enum SensorStatusCode
|
public enum SensorStatusCode
|
||||||
{
|
{
|
||||||
|
|||||||
+16
-3
@@ -8,6 +8,7 @@
|
|||||||
using System.IO.Ports;
|
using System.IO.Ports;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using SafeBagDE70.API;
|
||||||
|
|
||||||
public class CCmdRsp
|
public class CCmdRsp
|
||||||
{
|
{
|
||||||
@@ -15,6 +16,7 @@
|
|||||||
public static int mDenominationCount;
|
public static int mDenominationCount;
|
||||||
public static string mSelectedCurrency;
|
public static string mSelectedCurrency;
|
||||||
public static int miSelectedCurrency;
|
public static int miSelectedCurrency;
|
||||||
|
|
||||||
private SerialPort serialPort = null;
|
private SerialPort serialPort = null;
|
||||||
private int m_all_sendsize;
|
private int m_all_sendsize;
|
||||||
private int m_all_recvsize;
|
private int m_all_recvsize;
|
||||||
@@ -1577,6 +1579,7 @@
|
|||||||
public class Com232C
|
public class Com232C
|
||||||
{
|
{
|
||||||
SerialPort serialPort = null;
|
SerialPort serialPort = null;
|
||||||
|
public static int prevState = 0;
|
||||||
public Com232C(SerialPort _serialPort)
|
public Com232C(SerialPort _serialPort)
|
||||||
{
|
{
|
||||||
this.serialPort = _serialPort;
|
this.serialPort = _serialPort;
|
||||||
@@ -1584,13 +1587,18 @@
|
|||||||
public byte send_dat(byte[] buf, int size)
|
public byte send_dat(byte[] buf, int size)
|
||||||
{
|
{
|
||||||
//Debug.WriteLine(DE70_CMD.ByteArrayToString(buf, 0, size));
|
//Debug.WriteLine(DE70_CMD.ByteArrayToString(buf, 0, size));
|
||||||
|
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.NORMAL;
|
||||||
|
AppData.CDMSTATE.CDMStatus = "DE: OK";
|
||||||
|
byte bResult = 0;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
serialPort.Write(buf, 0, size);
|
serialPort.Write(buf, 0, size);
|
||||||
return Constants.E_OK;
|
bResult= Constants.E_OK;
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.DISCONNECT_SERIALPORT;
|
||||||
|
AppData.CDMSTATE.CDMStatus = "DE: LỖI";
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
Log.Fatal(e, "DE70_send_dat");
|
Log.Fatal(e, "DE70_send_dat");
|
||||||
@@ -1602,11 +1610,16 @@
|
|||||||
{
|
{
|
||||||
Log.Fatal(e2,"DE70_send_dat2");
|
Log.Fatal(e2,"DE70_send_dat2");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if(AppData.DeviceStatus.CDMStatus!=prevState)
|
||||||
|
{
|
||||||
|
APIModels.SendEvent(AppData.DeviceStatus);
|
||||||
|
prevState = AppData.DeviceStatus.CDMStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Implement serial communication send function
|
// Implement serial communication send function
|
||||||
return Constants.E_NG;
|
bResult= Constants.E_NG;
|
||||||
|
return bResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int rcv_dat(byte[] buf, int pos, int size)
|
public int rcv_dat(byte[] buf, int pos, int size)
|
||||||
|
|||||||
+57
-37
@@ -393,37 +393,7 @@ namespace SafeBagDE70
|
|||||||
|
|
||||||
if (countSensorTimer % 10 == 0)
|
if (countSensorTimer % 10 == 0)
|
||||||
{
|
{
|
||||||
|
GetPrinterStatus();
|
||||||
var status = printerManager.GetStatus();
|
|
||||||
var strPrinterMessage = "";
|
|
||||||
if(status!=null)
|
|
||||||
{
|
|
||||||
if (status.StsNOPAPER)
|
|
||||||
{
|
|
||||||
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.PAPEROUT;
|
|
||||||
StopTimers();
|
|
||||||
strPrinterMessage = "MÁY IN HẾT GIẤY! ĐỀ NGHỊ THAY GIẤY";
|
|
||||||
ShowError(strPrinterMessage);
|
|
||||||
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
|
|
||||||
}
|
|
||||||
else if (status.StsNEARENDPAP)
|
|
||||||
{
|
|
||||||
strPrinterMessage = "MÁY IN GẦN HẾT GIẤY";
|
|
||||||
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.NEARPAPEROUT;
|
|
||||||
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
AppData.ADMINDEVICESTATUS.PrinterStatus = "MÁY IN OK";
|
|
||||||
|
|
||||||
}
|
|
||||||
if (AppData.DeviceStatus.PrinterStatus != prevPrinterStatus)
|
|
||||||
{
|
|
||||||
AppData.DeviceStatus.Description = strPrinterMessage;
|
|
||||||
APIModels.SendEvent(AppData.DeviceStatus);
|
|
||||||
prevPrinterStatus = AppData.DeviceStatus.PrinterStatus;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
|
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
|
||||||
AppData.DeviceStatus.DeviceTime = DateTime.Now;
|
AppData.DeviceStatus.DeviceTime = DateTime.Now;
|
||||||
@@ -448,6 +418,54 @@ namespace SafeBagDE70
|
|||||||
}
|
}
|
||||||
sensorTimer.IsEnabled = true;
|
sensorTimer.IsEnabled = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void GetPrinterStatus()
|
||||||
|
{
|
||||||
|
var status = printerManager.GetStatus();
|
||||||
|
var strPrinterMessage = "";
|
||||||
|
if (status != null)
|
||||||
|
{
|
||||||
|
if (status.StsNOPAPER)
|
||||||
|
{
|
||||||
|
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.PAPEROUT;
|
||||||
|
StopTimers();
|
||||||
|
strPrinterMessage = "MÁY IN: HẾT GIẤY! ĐỀ NGHỊ THAY GIẤY";
|
||||||
|
ShowError(strPrinterMessage);
|
||||||
|
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
|
||||||
|
}
|
||||||
|
else if (status.StsNEARENDPAP)
|
||||||
|
{
|
||||||
|
strPrinterMessage = "MÁY IN: GẦN HẾT GIẤY";
|
||||||
|
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.NEARPAPEROUT;
|
||||||
|
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
|
||||||
|
}
|
||||||
|
else if (status.StsPAPERJAM || status.StsCUTERROR || status.StsOVERTEMP)
|
||||||
|
{
|
||||||
|
strPrinterMessage = "MÁY IN: LỖI";
|
||||||
|
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.ERROR;
|
||||||
|
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
strPrinterMessage = "MÁY IN: OK";
|
||||||
|
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.NORMAL;
|
||||||
|
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
strPrinterMessage = "MÁY IN: LỖI";
|
||||||
|
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.ERROR;
|
||||||
|
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
|
||||||
|
}
|
||||||
|
if (AppData.DeviceStatus.PrinterStatus != prevPrinterStatus)
|
||||||
|
{
|
||||||
|
AppData.DeviceStatus.Description = strPrinterMessage;
|
||||||
|
APIModels.SendEvent(AppData.DeviceStatus);
|
||||||
|
prevPrinterStatus = AppData.DeviceStatus.PrinterStatus;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Stopwatch watch = new Stopwatch();
|
Stopwatch watch = new Stopwatch();
|
||||||
private void GetSensorValue()
|
private void GetSensorValue()
|
||||||
{
|
{
|
||||||
@@ -535,12 +553,14 @@ namespace SafeBagDE70
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
Log.Fatal(ex,"GetSensorValue");
|
//Log.Fatal(ex,"GetSensorValue");
|
||||||
if(serialPortSensor.IsOpen)
|
//if(serialPortSensor.IsOpen)
|
||||||
serialPortSensor.Close();
|
// serialPortSensor.Close();
|
||||||
serialPortSensor.Open();
|
//serialPortSensor.Open();
|
||||||
serialPortSensor.DiscardInBuffer();
|
|
||||||
serialPortSensor.DiscardOutBuffer();
|
//serialPortSensor.DiscardInBuffer();
|
||||||
|
//serialPortSensor.DiscardOutBuffer();
|
||||||
|
InitSerialPortSensor();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
private void DoMaintaince()
|
private void DoMaintaince()
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
using Custom.CuCustomWndAPI;
|
using Custom.CuCustomWndAPI;
|
||||||
using HandyControl.Data;
|
using HandyControl.Data;
|
||||||
|
using Microsoft.IdentityModel.Abstractions;
|
||||||
using SafeBagDE70.API;
|
using SafeBagDE70.API;
|
||||||
using Serilog;
|
using Serilog;
|
||||||
using System;
|
using System;
|
||||||
@@ -28,23 +29,29 @@ namespace SafeBagDE70.Services
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
Log.Information("[PRINTER] Không thể khởi tạo máy in");
|
Log.Fatal(ex,"[PRINTER] Không thể khởi tạo máy in");
|
||||||
|
|
||||||
AppData.DeviceStatus.PrinterStatus = 3;
|
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.ERROR;
|
||||||
AppData.DeviceStatus.Description = "[PRINTER] Không thể khởi tạo máy in";
|
AppData.DeviceStatus.Description = "[PRINTER] Không thể khởi tạo máy in";
|
||||||
APIModels.SendEvent(AppData.DeviceStatus);
|
APIModels.SendEvent(AppData.DeviceStatus);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public PrinterStatus? GetStatus()
|
public PrinterStatus? GetStatus()
|
||||||
|
{
|
||||||
|
try
|
||||||
{
|
{
|
||||||
if (dev != null)
|
if (dev != null)
|
||||||
{
|
{
|
||||||
var status = dev.GetPrinterFullStatus();
|
var status = dev.GetPrinterFullStatus();
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
catch(Exception ex)
|
||||||
|
{
|
||||||
|
Log.Fatal(ex, "Get Printer Status");
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
}
|
}
|
||||||
public bool IsNearPaperOut()
|
public bool IsNearPaperOut()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user