增加上传开关机和管理员登入登出次数

This commit is contained in:
yangjiaxuan 2022-07-27 11:32:46 +08:00
parent 180741194e
commit 521da3acc2
3 changed files with 228 additions and 0 deletions

View File

@ -15,6 +15,16 @@ VersionDll::VersionDll()
m_funcReleaseVersionList = NULL; m_funcReleaseVersionList = NULL;
m_funcGetCurrVersion = NULL; m_funcGetCurrVersion = NULL;
m_funcCompareVersion = NULL; m_funcCompareVersion = NULL;
m_funcPostDeviceOpenInfo = NULL;
m_funcPostDeviceCloseInfo = NULL;
m_funcPostDeviceScanCountInfo = NULL;
m_funcPostDeviceClearRollerInfo = NULL;
m_funcPostDeviceHistroyCountInfo = NULL;
m_funcPostDeviceRollerCountInfo = NULL;
m_funcPostUserOpenInfo = NULL;
m_funcPostUserCloseInfo = NULL;
m_funcPostUserLoginInfo = NULL;
m_funcPostUserLogoutInfo = NULL;
m_mgr = NULL; m_mgr = NULL;
Load(); Load();
@ -128,6 +138,76 @@ HGResult VersionDll::Load()
break; break;
} }
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostDeviceOpenInfo", (HGPointer *)&m_funcPostDeviceOpenInfo);
if (NULL == m_funcPostDeviceOpenInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostDeviceCloseInfo", (HGPointer *)&m_funcPostDeviceCloseInfo);
if (NULL == m_funcPostDeviceCloseInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostDeviceScanCountInfo", (HGPointer *)&m_funcPostDeviceScanCountInfo);
if (NULL == m_funcPostDeviceScanCountInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostDeviceClearRollerInfo", (HGPointer *)&m_funcPostDeviceClearRollerInfo);
if (NULL == m_funcPostDeviceClearRollerInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostDeviceHistroyCountInfo", (HGPointer *)&m_funcPostDeviceHistroyCountInfo);
if (NULL == m_funcPostDeviceHistroyCountInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostDeviceRollerCountInfo", (HGPointer *)&m_funcPostDeviceRollerCountInfo);
if (NULL == m_funcPostDeviceRollerCountInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostUserOpenInfo", (HGPointer *)&m_funcPostUserOpenInfo);
if (NULL == m_funcPostUserOpenInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostUserCloseInfo", (HGPointer *)&m_funcPostUserCloseInfo);
if (NULL == m_funcPostUserCloseInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostUserLoginInfo", (HGPointer *)&m_funcPostUserLoginInfo);
if (NULL == m_funcPostUserLoginInfo)
{
ok = false;
break;
}
HGBase_GetDllProcAddress(m_dll, "HGVersion_PostUserLogoutInfo", (HGPointer *)&m_funcPostUserLogoutInfo);
if (NULL == m_funcPostUserLogoutInfo)
{
ok = false;
break;
}
m_funcCreateMgr(&m_mgr); m_funcCreateMgr(&m_mgr);
if (NULL == m_mgr) if (NULL == m_mgr)
{ {
@ -256,3 +336,103 @@ HGResult VersionDll::PostUserFeedback(const HGChar* appName, const HGChar* desc,
return m_funcPostUserFeedback(m_mgr, appName, desc, feedback, contact); return m_funcPostUserFeedback(m_mgr, appName, desc, feedback, contact);
} }
HGResult VersionDll::PostDeviceOpenInfo(const HGChar *devName, const HGChar *devSN, const HGChar *devType, const HGChar *devFW)
{
if (NULL == m_funcPostDeviceOpenInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostDeviceOpenInfo(m_mgr, devName, devSN, devType, devFW);
}
HGResult VersionDll::PostDeviceCloseInfo(const HGChar *devName, const HGChar *devSN, const HGChar *devType, const HGChar *devFW)
{
if (NULL == m_funcPostDeviceCloseInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostDeviceCloseInfo(m_mgr, devName, devSN, devType, devFW);
}
HGResult VersionDll::PostDeviceScanCountInfo(const HGChar *devName, const HGChar *devSN, const HGChar *devType, const HGChar *devFW, HGUInt scanCount)
{
if (NULL == m_funcPostDeviceScanCountInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostDeviceScanCountInfo(m_mgr, devName, devSN, devType, devFW, scanCount);
}
HGResult VersionDll::PostDeviceClearRollerInfo(const HGChar *devName, const HGChar *devSN, const HGChar *devType, const HGChar *devFW)
{
if (NULL == m_funcPostDeviceClearRollerInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostDeviceClearRollerInfo(m_mgr, devName, devSN, devType, devFW);
}
HGResult VersionDll::PostDeviceHistroyCountInfo(const HGChar *devName, const HGChar *devSN, const HGChar *devType, const HGChar *devFW, HGUInt histroyCount)
{
if (NULL == m_funcPostDeviceHistroyCountInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostDeviceHistroyCountInfo(m_mgr, devName, devSN, devType, devFW, histroyCount);
}
HGResult VersionDll::PostDeviceRollerCountInfo(const HGChar *devName, const HGChar *devSN, const HGChar *devType, const HGChar *devFW, HGUInt rollerCount)
{
if (NULL == m_funcPostDeviceRollerCountInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostDeviceRollerCountInfo(m_mgr, devName, devSN, devType, devFW, rollerCount);
}
HGResult VersionDll::PostUserOpenInfo(const HGChar *appName)
{
if (NULL == m_funcPostUserOpenInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostUserOpenInfo(m_mgr, appName);
}
HGResult VersionDll::PostUserCloseInfo(const HGChar *appName)
{
if (NULL == m_funcPostUserCloseInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostUserCloseInfo(m_mgr, appName);
}
HGResult VersionDll::PostUserLoginInfo(const HGChar *appName)
{
if (NULL == m_funcPostUserLoginInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostUserLoginInfo(m_mgr, appName);
}
HGResult VersionDll::PostUserLogoutInfo(const HGChar *appName)
{
if (NULL == m_funcPostUserLogoutInfo)
{
return HGBASE_ERR_FAIL;
}
return m_funcPostUserLogoutInfo(m_mgr, appName);
}

View File

@ -23,6 +23,16 @@ public:
HGResult PostCrashInfo(const HGChar* appName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr); HGResult PostCrashInfo(const HGChar* appName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr);
HGResult PostUserFeedback(const HGChar* appName, const HGChar* desc, const HGChar* feedback, const HGChar* contact); HGResult PostUserFeedback(const HGChar* appName, const HGChar* desc, const HGChar* feedback, const HGChar* contact);
HGResult PostDeviceOpenInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW);
HGResult PostDeviceCloseInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW);
HGResult PostDeviceScanCountInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW, HGUInt scanCount);
HGResult PostDeviceClearRollerInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW);
HGResult PostDeviceHistroyCountInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW, HGUInt histroyCount);
HGResult PostDeviceRollerCountInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW, HGUInt rollerCount);
HGResult PostUserOpenInfo(const HGChar* appName);
HGResult PostUserCloseInfo(const HGChar* appName);
HGResult PostUserLoginInfo(const HGChar* appName);
HGResult PostUserLogoutInfo(const HGChar* appName);
private: private:
typedef HGResult (HGAPI *HGVersion_CreateMgr)(HGVersionMgr *mgr); typedef HGResult (HGAPI *HGVersion_CreateMgr)(HGVersionMgr *mgr);
typedef HGResult (HGAPI *HGVersion_DestroyMgr)(HGVersionMgr mgr); typedef HGResult (HGAPI *HGVersion_DestroyMgr)(HGVersionMgr mgr);
@ -35,6 +45,17 @@ private:
typedef HGResult (HGAPI *HGVersion_GetCurrVersion)(const HGChar* appName, HGChar* version, HGUInt maxLen); typedef HGResult (HGAPI *HGVersion_GetCurrVersion)(const HGChar* appName, HGChar* version, HGUInt maxLen);
typedef HGResult (HGAPI *HGVersion_CompareVersion)(const HGChar* version1, const HGChar* version2, HGInt* result); typedef HGResult (HGAPI *HGVersion_CompareVersion)(const HGChar* version1, const HGChar* version2, HGInt* result);
typedef HGResult (HGAPI *HGVersion_PostDeviceOpenInfo)(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW);
typedef HGResult (HGAPI *HGVersion_PostDeviceCloseInfo)(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW);
typedef HGResult (HGAPI *HGVersion_PostDeviceScanCountInfo)(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW, HGUInt scanCount);
typedef HGResult (HGAPI *HGVersion_PostDeviceClearRollerInfo)(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW);
typedef HGResult (HGAPI *HGVersion_PostDeviceHistroyCountInfo)(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW, HGUInt histroyCount);
typedef HGResult (HGAPI *HGVersion_PostDeviceRollerCountInfo)(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, const HGChar* devType, const HGChar* devFW, HGUInt rollerCount);
typedef HGResult (HGAPI *HGVersion_PostUserOpenInfo)(HGVersionMgr mgr, const HGChar* appName);
typedef HGResult (HGAPI *HGVersion_PostUserCloseInfo)(HGVersionMgr mgr, const HGChar* appName);
typedef HGResult (HGAPI *HGVersion_PostUserLoginInfo)(HGVersionMgr mgr, const HGChar* appName);
typedef HGResult (HGAPI *HGVersion_PostUserLogoutInfo)(HGVersionMgr mgr, const HGChar* appName);
private: private:
HGDll m_dll; HGDll m_dll;
HGVersion_CreateMgr m_funcCreateMgr; HGVersion_CreateMgr m_funcCreateMgr;
@ -47,6 +68,17 @@ private:
HGVersion_ReleaseVersionList m_funcReleaseVersionList; HGVersion_ReleaseVersionList m_funcReleaseVersionList;
HGVersion_GetCurrVersion m_funcGetCurrVersion; HGVersion_GetCurrVersion m_funcGetCurrVersion;
HGVersion_CompareVersion m_funcCompareVersion; HGVersion_CompareVersion m_funcCompareVersion;
HGVersion_PostDeviceOpenInfo m_funcPostDeviceOpenInfo;
HGVersion_PostDeviceCloseInfo m_funcPostDeviceCloseInfo;
HGVersion_PostDeviceScanCountInfo m_funcPostDeviceScanCountInfo;
HGVersion_PostDeviceClearRollerInfo m_funcPostDeviceClearRollerInfo;
HGVersion_PostDeviceHistroyCountInfo m_funcPostDeviceHistroyCountInfo;
HGVersion_PostDeviceRollerCountInfo m_funcPostDeviceRollerCountInfo;
HGVersion_PostUserOpenInfo m_funcPostUserOpenInfo;
HGVersion_PostUserCloseInfo m_funcPostUserCloseInfo;
HGVersion_PostUserLoginInfo m_funcPostUserLoginInfo;
HGVersion_PostUserLogoutInfo m_funcPostUserLogoutInfo;
HGVersionMgr m_mgr; HGVersionMgr m_mgr;
}; };

View File

@ -102,6 +102,10 @@ MainWindow::MainWindow(QWidget *parent)
ui->actionact_update->setVisible(false); ui->actionact_update->setVisible(false);
ui->act_feedback->setVisible(false); ui->act_feedback->setVisible(false);
} }
else
{
m_versionDll->PostUserOpenInfo(HGVERSION_APPNAME_SCANNER);
}
m_config.load(); m_config.load();
@ -2216,6 +2220,10 @@ void MainWindow::closeEvent(QCloseEvent *e)
QDir dir = QDir(Dialog_ClrCache::getCachePath()); QDir dir = QDir(Dialog_ClrCache::getCachePath());
dir.removeRecursively(); dir.removeRecursively();
QMainWindow::closeEvent(e); QMainWindow::closeEvent(e);
if(m_versionDll->IsValid())
{
m_versionDll->PostUserCloseInfo(HGVERSION_APPNAME_SCANNER);
}
} }
int MainWindow::sane_ex_callback(SANE_Handle hdev, int code, void *data, unsigned int* len, void *param) int MainWindow::sane_ex_callback(SANE_Handle hdev, int code, void *data, unsigned int* len, void *param)
@ -2480,6 +2488,10 @@ void MainWindow::on_act_signIn_triggered()
Dialog_Admin dlg(m_password, this); Dialog_Admin dlg(m_password, this);
m_admin_loggedIn = dlg.exec(); m_admin_loggedIn = dlg.exec();
updateActionStatus(); updateActionStatus();
if(m_versionDll->IsValid())
{
m_versionDll->PostUserLoginInfo(HGVERSION_APPNAME_SCANNER);
}
} }
void MainWindow::on_act_passwordChange_triggered() void MainWindow::on_act_passwordChange_triggered()
@ -2514,6 +2526,10 @@ void MainWindow::on_act_signOut_triggered()
m_admin_loggedIn = false; m_admin_loggedIn = false;
updateActionStatus(); updateActionStatus();
} }
if(m_versionDll->IsValid())
{
m_versionDll->PostUserLogoutInfo(HGVERSION_APPNAME_SCANNER);
}
} }
void MainWindow::on_act_log_triggered() void MainWindow::on_act_log_triggered()