máy in lỗi -> dừng

This commit is contained in:
thuannd88
2024-10-04 18:15:50 +07:00
parent 8a710a40f1
commit 61a0209269
3 changed files with 55 additions and 46 deletions
+53 -44
View File
@@ -402,8 +402,8 @@ namespace SafeBagDE70
GetCDMStatus();
AppData.GetandExecuteCommands();
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
AppData.DeviceStatus.DeviceTime = DateTime.Now;
//AppData.DeviceStatus.DeviceTime = DateTime.Now;
APIModels.SendHealthCheck(AppData.DeviceStatus);
}
if (countSensorTimer%5==0)
@@ -435,15 +435,18 @@ namespace SafeBagDE70
{
AppData.CDMSTATE.CDMStatus = "CDM: LỖI KẾT NỐI";
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.DISCONNECT_SERIALPORT;
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
}
else if (AppData.cCmdRsp.recv_dat.dat[1]==0x1C)
{
AppData.CDMSTATE.CDMStatus = "CDM: LỖI INITIALIZATION ERROR";
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.ERROR;
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
}
else
{
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.NORMAL;
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
}
if (AppData.DeviceStatus.CDMStatus != prevCDMState)
{
@@ -473,57 +476,63 @@ namespace SafeBagDE70
private void GetPrinterStatus()
{
var status = printerManager.GetStatus();
var strPrinterMessage = "";
if (status != null)
if(!AppData.IsInTransaction)
{
bool StsNOPAPER = status.StsNOPAPER;
bool StsNEARENDPAP = status.StsNEARENDPAP;
if (StsNOPAPER || (StsNEARENDPAP && AppData.IsStopPrinting()))
var status = printerManager.GetStatus();
var strPrinterMessage = "";
if (status != null)
{
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;
bool StsNOPAPER = status.StsNOPAPER;
bool StsNEARENDPAP = status.StsNEARENDPAP;
if (StsNOPAPER || (StsNEARENDPAP && AppData.IsStopPrinting()))
{
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 (StsNEARENDPAP)
{
AppData.UpdatePrinterStatus(true);
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
{
AppData.UpdatePrinterStatus(false);
strPrinterMessage = "MÁY IN: OK";
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.NORMAL;
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
}
}
else if (StsNEARENDPAP)
{
AppData.UpdatePrinterStatus(true);
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)
else
{
strPrinterMessage = "MÁY IN: LỖI";
AppData.DeviceStatus.PrinterStatus = (int)PrinterStatusCode.ERROR;
AppData.ADMINDEVICESTATUS.PrinterStatus = strPrinterMessage;
}
else
if (AppData.DeviceStatus.PrinterStatus != prevPrinterStatus)
{
AppData.UpdatePrinterStatus(false);
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)
{
Log.Information(strPrinterMessage);
AppData.DeviceStatus.Description = strPrinterMessage;
APIModels.SendEvent(AppData.DeviceStatus);
prevPrinterStatus = AppData.DeviceStatus.PrinterStatus;
}
if (AppData.DeviceStatus.PrinterStatus == (int)PrinterStatusCode.ERROR)
{
StopTimers();
ShowError(strPrinterMessage);
}
Log.Information(strPrinterMessage);
AppData.DeviceStatus.Description = strPrinterMessage;
APIModels.SendEvent(AppData.DeviceStatus);
prevPrinterStatus = AppData.DeviceStatus.PrinterStatus;
}
}
}
Stopwatch watch = new Stopwatch();