浏览代码

Z991239-3374 #comment other: 高拍仪错误码&日志

翟俊伟80258120 3 年之前
父节点
当前提交
ce2cefba38

+ 3 - 1
Module/mod_HSPScanner/CMakeLists.txt

@@ -11,10 +11,12 @@ target_include_directories(${MODULE_NAME} PRIVATE
 	${DevHeadPath}
     ${CONAN_INCLUDE_DIRS_OPENCV}
     ${CONAN_INCLUDE_DIRS_OPENCV}/opencv2
+	${RVC_OTHER_DEPENDENIES_DIR}/libpublicFun
 )
 
+set(${MODULE_PREFIX}_SYSLIBS libpublicFun)
 set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS}) 
-target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS} ${CONAN_LIBS_OPENCV})   #add ${CONAN_LIBS_OPENCV}
+target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS} ${${MODULE_PREFIX}_SYSLIBS} ${CONAN_LIBS_OPENCV})   #add ${CONAN_LIBS_OPENCV}
 target_link_directories(${MODULE_NAME} PRIVATE ${CONAN_BIN_DIRS_OPENCV} ${CONAN_LIB_DIRS_OPENCV}) #add all line
 
 target_include_directories(${MODULE_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})

+ 21 - 9
Module/mod_HSPScanner/HSPSCanner_UserErrorCode.h

@@ -9,17 +9,29 @@
 #define LOG_EVT_SCANNERSET_HSPSCNT_UPLOAD_VENDORINFO 0x21700102
 #define LOG_EVT_SCANNERSET_HSPSCNT_ROOTINFO 0x21700103
 
-#define LOG_DEBUG_HSPS_CRITICAL_OPERATION_START 0x21700200
-#define LOG_DEBUG_HSPS_CRITICAL_OPERATION_SCANIMAGE 0x21700201
-#define LOG_DEBUG_HSPS_CRITICAL_OPERATION_SCANIMAGEEX 0x21700202
 
 
-#define LOG_WARN_HSPS_READ_CONFIG_FILE_FAILED 0x21710001 //图片大小限制参数读取失败
-#define LOG_WARN_HSPS_OPENCV_READ_FAILED 0x21710002  //opencv读图片失败
-#define LOG_WARN_HSPS_OPENCV_WRITE_FAILED 0x21710003 //opencv写图片失败
-#define LOG_WARN_HSPS_RESIZE_IMAGE_FILE_FAILED 0x21710004 //图片缩小失败
-#define LOG_WARN_HSPS_RESIZE_IMAGEEX_FILE_FAILED 0x21710005 //ex图片缩小失败
-#define LOG_WARN_HSPS_RESIZE_FUNCTION_SUCCEED 0x21710006 //resize函数执行成功
+#define HSPScanner_UserErrorCode_Start								0x21700200
+#define HSPScanner_UserErrorCode_READ_IMAGE_FILE_FAILED				( HSPScanner_UserErrorCode_Start + 1 )
+#define HSPScanner_UserErrorCode_CREATE_OBJECT_FAILED				( HSPScanner_UserErrorCode_Start + 2 )
+#define HSPScanner_UserErrorCode_LOAD_DLLFILE_FAILED				( HSPScanner_UserErrorCode_Start + 3 )
+#define HSPScanner_UserErrorCode_GET_CDC_ADDR_FAILED				( HSPScanner_UserErrorCode_Start + 4 )
+#define HSPScanner_UserErrorCode_GET_RDC_ADDR_FAILED				( HSPScanner_UserErrorCode_Start + 5 )
+#define HSPScanner_UserErrorCode_CLEAR_RESOURCE_FAILED				( HSPScanner_UserErrorCode_Start + 6 )
+#define HSPScanner_UserErrorCode_UPLOAD_VENDORINFO					( HSPScanner_UserErrorCode_Start + 7 )
+#define HSPScanner_UserErrorCode_ROOT_INFO							( HSPScanner_UserErrorCode_Start + 8 )
+
+#define LOG_DEBUG_HSPS_CRITICAL_OPERATION_START						( HSPScanner_UserErrorCode_Start + 9 )
+#define LOG_DEBUG_HSPS_CRITICAL_OPERATION_SCANIMAGE 				( HSPScanner_UserErrorCode_Start + 10 )
+#define LOG_DEBUG_HSPS_CRITICAL_OPERATION_SCANIMAGEEX 				( HSPScanner_UserErrorCode_Start + 11 )
+
+#define LOG_WARN_HSPS_READ_CONFIG_FILE_FAILED						( HSPScanner_UserErrorCode_Start + 12 ) //图片大小限制参数读取失败
+#define LOG_WARN_HSPS_OPENCV_READ_FAILED							( HSPScanner_UserErrorCode_Start + 13 ) //opencv读图片失败
+#define LOG_WARN_HSPS_OPENCV_WRITE_FAILED							( HSPScanner_UserErrorCode_Start + 14 ) //opencv写图片失败
+#define LOG_WARN_HSPS_RESIZE_IMAGE_FILE_FAILED						( HSPScanner_UserErrorCode_Start + 15 ) //图片缩小失败
+#define LOG_WARN_HSPS_RESIZE_IMAGEEX_FILE_FAILED					( HSPScanner_UserErrorCode_Start + 16 ) //ex图片缩小失败
+#define LOG_WARN_HSPS_RESIZE_FUNCTION_SUCCEED						( HSPScanner_UserErrorCode_Start + 17 ) //resize函数执行成功
+
 
 
 

+ 73 - 33
Module/mod_HSPScanner/HSPScannerFSM.cpp

@@ -94,9 +94,13 @@ CHSPScannerFSM::CHSPScannerFSM(void)
 	m_nSrcState(s0),
 	m_eDevStatus(DEVICE_STATUS_NOT_READY),
 	m_desiredAction(USER_EVT_QUIT),
-	m_bOpened(false)
+	m_bOpened(false),
+	m_csDevNo(""),
+	m_contiErrTimes(0)
 {
 	HARDWARE_ENTITY_RESET_ENTITYID(m_entCode, 0x217);
+	m_FirstStart = TRUE;
+	ZeroMemory(&m_adapterInfo, sizeof(m_adapterInfo));
 }
 
 CHSPScannerFSM::~CHSPScannerFSM(void)
@@ -122,6 +126,9 @@ ErrorCodeEnum CHSPScannerFSM::OnInit()
 		Dbg("Fetch Vendor dllName failed %s.", (LPCTSTR)csDllName);
 		goto FAIL;
 	}
+	LogWarn(Severity_Low, Error_Unexpect, HSPScanner_UserErrorCode_ROOT_INFO, (LPCTSTR)csDllName);
+	m_adapterInfo.adapterFileName = csDllName;
+
 	HARDWARE_ENTITY_SET_VENDOR_NAME(m_entCode, pEntity->vendorLibInfo.strVendor);
 	Dbg("VendorDllName: %s.", (LPCTSTR)csDllName);
     result = m_hDevHelper.LoadUp(csDllName);
@@ -134,9 +141,25 @@ ErrorCodeEnum CHSPScannerFSM::OnInit()
 
 	result = m_hDevHelper->DevOpen();
     if (FAILURED(result)) {
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(result, DevOpen);
+		SetErrPackage(m_errPkg, "OnInit::DevOpen", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_DevOpen);
+		AlarmDEC(m_errPkg);
         goto FAIL;
-    }
+	}
+	else {
+		ZeroMemory(m_devCat.szModel, sizeof(m_devCat.szModel));
+		ZeroMemory(m_devCat.szType, sizeof(m_devCat.szType));
+		ZeroMemory(m_devCat.szVendor, sizeof(m_devCat.szVendor));
+		erroCode = m_hDevHelper->GetDevCategory(m_devCat);
+		if (erroCode == Error_Succeed)
+		{
+			Dbg("szVendor:%s,szType:%s,szModel:%s,version:%d.%d.%d.%d", m_devCat.szVendor
+				, m_devCat.szType, m_devCat.szModel, m_devCat.version.wMajor, m_devCat.version.wMinor, m_devCat.version.wRevision, m_devCat.version.wBuild);
+		}
+		else {
+			SetErrPackage(m_errPkg, "OnInit::GetDevCategory", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_GetDevCategory);
+			AlarmDEC(m_errPkg);
+		}
+	}
     m_bOpened = true;
 	{
         m_nRecX = 1280;
@@ -1035,12 +1058,14 @@ int CHSPScannerFSM::StartPreview(SpReqAnsContext<HSPScannerService_StartPreview_
 		erroCode = m_hDevHelper->SetPreview(1);
 		Dbg("End to SetPreview(1) returned %s.", SpStrError(erroCode));
 		if(FAILURED(erroCode)) {
-			LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetPreview_Open);
+			SetErrPackage(m_errPkg, "StartPreview::SetPreview(1)", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetPreview_Open);
+			AlarmDEC(m_errPkg);
 		}
 	}
 	else
 	{
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, GetDevStatus);
+		SetErrPackage(m_errPkg, "StartPreview::GetDevStatus", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_GetDevStatus);
+		AlarmDEC(m_errPkg);
 	}
 
 	if(FAILURED(erroCode))
@@ -1071,7 +1096,8 @@ int CHSPScannerFSM::StopPreview(SpReqAnsContext<HSPScannerService_CancelPreview_
 		}
 		else 
 		{
-			LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetParam);
+			SetErrPackage(m_errPkg, "Hide Preview", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+			AlarmDEC(m_errPkg);
 			nRes = 4;
 		}
 	}
@@ -1084,7 +1110,8 @@ int CHSPScannerFSM::StopPreview(SpReqAnsContext<HSPScannerService_CancelPreview_
 		{
 			nRes = 2;
 		} else {
-			LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetPreview_Close);
+			SetErrPackage(m_errPkg, "StopPreview::SetPreview(0)", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetPreview_Close);
+			AlarmDEC(m_errPkg);
 		}
 	}
 	if(ISSUCCEEDED(erroCode))
@@ -1245,9 +1272,9 @@ int CHSPScannerFSM::ScanImage(SpReqAnsContext<HSPScannerService_ScanImage_Req,
 		else
 		{
 			erroCode = Error_Resource;
-			LogError(Severity_High, Error_Resource, LOG_EVT_HSPS_READ_IMAGE_FILE_FAILED, 
-					 CSimpleStringA::Format("fopen(%s) failed: %d, %s", (LPCTSTR)csImageFile, errno, strerror(errno))
-				);
+			LogError(Severity_High, Error_Resource, HSPScanner_UserErrorCode_READ_IMAGE_FILE_FAILED,
+				CSimpleStringA::Format("fopen(%s) failed.", (LPCTSTR)csImageFile)
+			);
 			//GetAndDbgDevError();
 			nRes = 4;
 		}
@@ -1268,9 +1295,9 @@ int CHSPScannerFSM::ScanImage(SpReqAnsContext<HSPScannerService_ScanImage_Req,
 	}
 	else
 	{
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, ScanImage);
+		SetErrPackage(m_errPkg, "ScanImage::ScanImage", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_ScanImage);
+		AlarmDEC(m_errPkg);
 		ctx->Answer(erroCode);
-		//Todo: SetCustLastErrorCode();
 		return 2;
 	}
 	return nRes;
@@ -1400,7 +1427,8 @@ int CHSPScannerFSM::ScanImageEx(SpReqAnsContext<HSPScannerService_ScanImageEx_Re
 	else
 	{
 		Dbg("ScanImageEx failed returned %s, %d, %d.", SpStrError(erroCode), len, strlen((const char*)pBtImage));
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, ScanImageEx);
+		SetErrPackage(m_errPkg, "ScanImageEx::ScanImageEx", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_ScanImageEx);
+		AlarmDEC(m_errPkg);
 		ctx->Answer(erroCode);
 		nRes = 2;
 	}
@@ -1456,7 +1484,8 @@ int CHSPScannerFSM::SetProperty(SpReqAnsContext<HSPScannerService_SetProperty_Re
 	if(FAILURED(erroCode)) 
 	{
 		retCode |= 0x0001;
-		LogErrMsg("SetProperty::SetParam", erroCode, MEC_DEVAPI_HSPSCANNER_SetParam, TRUE);
+		SetErrPackage(m_errPkg, "SetProperty::SetParam", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+		AlarmDEC(m_errPkg);
 		erroCode = Error_Succeed;
 	}
 	//////////////////////////////////////////////////////////////////////////
@@ -1483,7 +1512,8 @@ int CHSPScannerFSM::SetProperty(SpReqAnsContext<HSPScannerService_SetProperty_Re
 	if(FAILURED(erroCode)) 
 	{
 		retCode |= 0x0002;
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetParam);
+		SetErrPackage(m_errPkg, "SetProperty::SetParam", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+		AlarmDEC(m_errPkg);
 		erroCode = Error_Succeed;
 	}
 	//////////////////////////////////////////////////////////////////////////
@@ -1505,7 +1535,8 @@ int CHSPScannerFSM::SetProperty(SpReqAnsContext<HSPScannerService_SetProperty_Re
 	if(FAILURED(erroCode)) 
 	{
 		retCode |= 0x0004;
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetParam);
+		SetErrPackage(m_errPkg, "SetProperty::SetParam", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+		AlarmDEC(m_errPkg);
 		erroCode = Error_Succeed;
 	}
 
@@ -1543,7 +1574,8 @@ int CHSPScannerFSM::SetWinPos(SpReqAnsContext<HSPScannerService_SetWinPos_Req,
 		erroCode = m_hDevHelper->SetViewPos(ctx->Req.pointX, ctx->Req.pointY, ctx->Req.nWidth);
 		if(FAILURED(erroCode))
 		{
-			LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetViewPos);
+			SetErrPackage(m_errPkg, "SetWinPos::SetViewPos", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetViewPos);
+			AlarmDEC(m_errPkg);
 			nRes = 2;
 		}
 		else
@@ -1560,7 +1592,8 @@ int CHSPScannerFSM::SetWinPos(SpReqAnsContext<HSPScannerService_SetWinPos_Req,
 		Dbg("End to SetViewParam returned 0x%x.", erroCode);
 		if(FAILURED(erroCode))
 		{
-			LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetParam);
+			SetErrPackage(m_errPkg, "SetWinPos::SetParam", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+			AlarmDEC(m_errPkg);
 			nRes = 1;
 		}
 	}
@@ -1583,7 +1616,8 @@ int CHSPScannerFSM::GetDevStatus(SpReqAnsContext<HSPScannerService_GetDevStatus_
 	}
 	else
 	{
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, GetDevStatus);
+		SetErrPackage(m_errPkg, "GetDevStatus::GetDevStatus", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_GetDevStatus);
+		AlarmDEC(m_errPkg);
 		nRes = 1;
 	}
 	ctx->Answer(erroCode);
@@ -1604,10 +1638,12 @@ int CHSPScannerFSM::GetDevInfo(SpReqAnsContext<HSPScannerService_GetDevInfo_Req,
 		ctx->Ans.type = info.szType;
 		ctx->Ans.version = CSimpleStringA::Format("%d.%d.%d.%d",
 			info.version.wMajor, info.version.wMinor, info.version.wRevision, info.version.wBuild);
+		m_adapterInfo.devCatInfo = info;
 	}
 	else
 	{
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, GetDevCategory);
+		SetErrPackage(m_errPkg, "GetDevInfo::GetDevCategory", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_GetDevCategory);
+		AlarmDEC(m_errPkg);
 		nRes = 1;
 	}
 	{
@@ -1653,9 +1689,9 @@ BOOL CHSPScannerFSM::DelAndGetNewFileName(CSimpleStringA& csfileName)
             Dbg("DeleteFile(%s) suc.", (LPCTSTR)strAimPath);
             return TRUE;
         } else {
-            LogError(Severity_High, Error_Unexpect, UpdateDEC(MEC_CLEAR_RESOURCE_FAILED), CSimpleStringA::Format(
-                "DeleteFile(%s) failed LastError(%d).", (LPCTSTR)strAimPath, GetLastError()));
-            return FALSE;
+			LogWarn(Severity_High, Error_Unexpect, HSPScanner_UserErrorCode_CLEAR_RESOURCE_FAILED, CSimpleStringA::Format(
+				"DeleteFile(%s) failed LastError(%d).", (LPCTSTR)strAimPath, GetLastError()));
+			return FALSE;
         }
 	} else {
 		return TRUE;
@@ -1682,11 +1718,13 @@ ErrorCodeEnum CHSPScannerFSM::OnDevExit()
 				if(ISSUCCEEDED(erroCode)) {
 					LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_OFF, "HSPScanner warning off.");
 				} else {
-					LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetPreview_Close);
+					SetErrPackage(m_errPkg, "OnDevExit::SetPreview(0)", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetPreview_Close);
+					AlarmDEC(m_errPkg);
 				}
 			}
 		} else if (!FAILURED(erroCode)) {
-			LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, GetDevStatus);
+			SetErrPackage(m_errPkg, "OnDevExit::GetDevStatus", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_GetDevStatus);
+			AlarmDEC(m_errPkg);
 		} else {
 			Dbg("HSPSCanner device is disconnected!");
 		}
@@ -1700,7 +1738,7 @@ void CHSPScannerFSM::SelfTest(EntityTestEnum eTestType,
 	pTransactionContext->SendAnswer(m_ecSelfTest);
 }
 
-void CHSPScannerFSM::OnStateTrans(int iSrcState, int iDstState)
+void CHSPScannerFSM::OnStateTrans(int iSrcState, int iDstState) 
 {
 	Dbg("trans from %s to %s", GetStateName(iSrcState), GetStateName(iDstState));
 	m_nSrcState = iSrcState;
@@ -1731,7 +1769,8 @@ ErrorCodeEnum CHSPScannerFSM::SetPreview(SpReqAnsContext<HSPScannerService_Start
 	if(FAILURED(erroCode)) 
 	{
 		retCode |= 0x0001;
-		LogErrMsg("SetPreview::SetParam", erroCode, MEC_DEVAPI_HSPSCANNER_SetParam, TRUE);
+		SetErrPackage(m_errPkg, "SetPreview::SetParam", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+		AlarmDEC(m_errPkg);
 		erroCode = Error_Succeed;
 	}
 	//////////////////////////////////////////////////////////////////////////
@@ -1761,7 +1800,8 @@ ErrorCodeEnum CHSPScannerFSM::SetPreview(SpReqAnsContext<HSPScannerService_Start
 	if(FAILURED(erroCode)) 
 	{
 		retCode |= 0x0002;
-		LogErrMsg("SetPreview::SetParam", erroCode, MEC_DEVAPI_HSPSCANNER_SetParam, TRUE);
+		SetErrPackage(m_errPkg, "SetPreview::SetParam", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+		AlarmDEC(m_errPkg);
 		erroCode = Error_Succeed;
 	}
 	//////////////////////////////////////////////////////////////////////////
@@ -1786,8 +1826,8 @@ ErrorCodeEnum CHSPScannerFSM::SetPreview(SpReqAnsContext<HSPScannerService_Start
 	if(FAILURED(erroCode)) 
 	{
 		retCode |= 0x0004;
-		LOG_HSPSCANNER_ERROR_MSG_MACRO(erroCode, SetParam);
-		//LogErrMsg("SetPreview::SetParam", erroCode, MEC_DEVAPI_HSPSCANNER_SetParam, TRUE);
+		SetErrPackage(m_errPkg, "SetPreview::SetParam", m_csDevNo, erroCode, MEC_DEVAPI_HSPSCANNER_SetParam);
+		AlarmDEC(m_errPkg);
 		erroCode = Error_Succeed;
 	}
 
@@ -1810,9 +1850,9 @@ ErrorCodeEnum CHSPScannerFSM::DeleteFileIfExisted(LPCTSTR fileName)
             Dbg("DeleteFile(%s) suc.", fileName);
             return Error_Succeed;
         } else {
-            LogError(Severity_High, Error_Unexpect, UpdateDEC(MEC_CLEAR_RESOURCE_FAILED), CSimpleStringA::Format(
-                "DeleteFile(%s) failed LastError(%d).", fileName, GetLastError()));
-            return Error_Unexpect;
+			LogWarn(Severity_High, Error_Unexpect, HSPScanner_UserErrorCode_CLEAR_RESOURCE_FAILED, CSimpleStringA::Format(
+				"DeleteFile(%s) failed LastError(%d).", fileName, GetLastError()));
+			return Error_Unexpect;
         }
 	} else {
 		return Error_Succeed;

+ 5 - 2
Module/mod_HSPScanner/HSPScannerFSM.h

@@ -389,8 +389,12 @@ private:
 
 	DevStateEnum m_eDevStatus;
 	EvtType m_desiredAction;
-
+	CSimpleStringA m_csDevNo;
 	bool m_bOpened;
+	DevCategoryInfo m_devCat;
+	ErrorPackage m_errPkg;
+	AdapterInfo m_adapterInfo;
+	int m_contiErrTimes;
 
 public:
 
@@ -437,7 +441,6 @@ private:
 		Dbg("GetDevStatus failed in IsDevConnect().");
 		return -1;
 	}
-
 };
 
 struct StartPreviewTask : public ITaskSp