HGVersion库接口调整,需要传入oem名称

This commit is contained in:
luoliangyi 2023-01-13 11:01:24 +08:00
parent 18a2552b5a
commit 43c43a2616
5 changed files with 109 additions and 119 deletions

View File

@ -40,7 +40,7 @@ HGResult HGAPI HGVersion_GetServerConfig(HGVersionMgr mgr, HGServerConfig* confi
return versionMgrImpl->GetServerConfig(config); return versionMgrImpl->GetServerConfig(config);
} }
HGResult HGAPI HGVersion_PostInstallInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* desc) HGResult HGAPI HGVersion_PostInstallInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, const HGChar* desc)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -48,10 +48,10 @@ HGResult HGAPI HGVersion_PostInstallInfo(HGVersionMgr mgr, const HGChar* appName
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostInstallInfo(appName, desc); return versionMgrImpl->PostInstallInfo(appName, oemName, desc);
} }
HGResult HGAPI HGVersion_PostUninstallInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* desc) HGResult HGAPI HGVersion_PostUninstallInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, const HGChar* desc)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -59,10 +59,10 @@ HGResult HGAPI HGVersion_PostUninstallInfo(HGVersionMgr mgr, const HGChar* appNa
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostUninstallInfo(appName, desc); return versionMgrImpl->PostUninstallInfo(appName, oemName, desc);
} }
HGResult HGAPI HGVersion_PostCrashInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr) HGResult HGAPI HGVersion_PostCrashInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -70,10 +70,10 @@ HGResult HGAPI HGVersion_PostCrashInfo(HGVersionMgr mgr, const HGChar* appName,
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostCrashInfo(appName, desc, crashFilePath, exceptionAddr); return versionMgrImpl->PostCrashInfo(appName, oemName, desc, crashFilePath, exceptionAddr);
} }
HGResult HGAPI HGVersion_PostUserFeedback(HGVersionMgr mgr, const HGChar* appName, const HGChar* desc, const HGChar* feedback, const HGChar* contact) HGResult HGAPI HGVersion_PostUserFeedback(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, const HGChar* desc, const HGChar* feedback, const HGChar* contact)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -81,7 +81,7 @@ HGResult HGAPI HGVersion_PostUserFeedback(HGVersionMgr mgr, const HGChar* appNam
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostUserFeedback(appName, desc, feedback, contact); return versionMgrImpl->PostUserFeedback(appName, oemName, desc, feedback, contact);
} }
HGResult HGAPI HGVersion_PostDeviceOpenInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, HGResult HGAPI HGVersion_PostDeviceOpenInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN,
@ -168,7 +168,7 @@ HGResult HGAPI HGVersion_PostDevicePaperJamInfo(HGVersionMgr mgr, const HGChar*
return versionMgrImpl->PostDevicePaperJamInfo(devName, devSN, devType, devFW); return versionMgrImpl->PostDevicePaperJamInfo(devName, devSN, devType, devFW);
} }
HGResult HGAPI HGVersion_PostUserOpenInfo(HGVersionMgr mgr, const HGChar* appName) HGResult HGAPI HGVersion_PostUserOpenInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -176,10 +176,10 @@ HGResult HGAPI HGVersion_PostUserOpenInfo(HGVersionMgr mgr, const HGChar* appNam
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostUserOpenInfo(appName); return versionMgrImpl->PostUserOpenInfo(appName, oemName);
} }
HGResult HGAPI HGVersion_PostUserCloseInfo(HGVersionMgr mgr, const HGChar* appName) HGResult HGAPI HGVersion_PostUserCloseInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -187,10 +187,10 @@ HGResult HGAPI HGVersion_PostUserCloseInfo(HGVersionMgr mgr, const HGChar* appNa
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostUserCloseInfo(appName); return versionMgrImpl->PostUserCloseInfo(appName, oemName);
} }
HGResult HGAPI HGVersion_PostUserLoginInfo(HGVersionMgr mgr, const HGChar* appName) HGResult HGAPI HGVersion_PostUserLoginInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -198,10 +198,10 @@ HGResult HGAPI HGVersion_PostUserLoginInfo(HGVersionMgr mgr, const HGChar* appNa
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostUserLoginInfo(appName); return versionMgrImpl->PostUserLoginInfo(appName, oemName);
} }
HGResult HGAPI HGVersion_PostUserLogoutInfo(HGVersionMgr mgr, const HGChar* appName) HGResult HGAPI HGVersion_PostUserLogoutInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -209,7 +209,7 @@ HGResult HGAPI HGVersion_PostUserLogoutInfo(HGVersionMgr mgr, const HGChar* appN
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->PostUserLogoutInfo(appName); return versionMgrImpl->PostUserLogoutInfo(appName, oemName);
} }
HGResult HGAPI HGVersion_PostDeviceLockInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, HGResult HGAPI HGVersion_PostDeviceLockInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN,
@ -224,7 +224,7 @@ HGResult HGAPI HGVersion_PostDeviceLockInfo(HGVersionMgr mgr, const HGChar* devN
return versionMgrImpl->PostDeviceLockInfo(devName, devSN, devType, devFW, isLock); return versionMgrImpl->PostDeviceLockInfo(devName, devSN, devType, devFW, isLock);
} }
HGResult HGAPI HGVersion_GetVersionList(HGVersionMgr mgr, const HGChar* appName, HGVersionInfo** info, HGUInt* count) HGResult HGAPI HGVersion_GetVersionList(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, HGVersionInfo** info, HGUInt* count)
{ {
if (NULL == mgr) if (NULL == mgr)
{ {
@ -232,7 +232,7 @@ HGResult HGAPI HGVersion_GetVersionList(HGVersionMgr mgr, const HGChar* appName,
} }
HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr; HGVersionMgrImpl* versionMgrImpl = (HGVersionMgrImpl*)mgr;
return versionMgrImpl->GetVersionList(appName, info, count); return versionMgrImpl->GetVersionList(appName, oemName, info, count);
} }
HGResult HGAPI HGVersion_HttpDownload(HGVersionMgr mgr, const HGChar* url, const HGChar* saveFilePath, HGHttpDownloadFunc func, HGPointer param) HGResult HGAPI HGVersion_HttpDownload(HGVersionMgr mgr, const HGChar* url, const HGChar* saveFilePath, HGHttpDownloadFunc func, HGPointer param)
@ -251,9 +251,9 @@ HGResult HGAPI HGVersion_ReleaseVersionList(HGVersionInfo* info, HGUInt count)
return HGVersionMgrImpl::ReleaseVersionList(info, count); return HGVersionMgrImpl::ReleaseVersionList(info, count);
} }
HGResult HGAPI HGVersion_GetCurrVersion(const HGChar* appName, HGChar* version, HGUInt maxLen) HGResult HGAPI HGVersion_GetCurrVersion(const HGChar* appName, const HGChar* oemName, HGChar* version, HGUInt maxLen)
{ {
return HGVersionMgrImpl::GetCurrVersion(appName, version, maxLen); return HGVersionMgrImpl::GetCurrVersion(appName, oemName, version, maxLen);
} }
static std::vector<std::string> split(std::string strtem, char a) static std::vector<std::string> split(std::string strtem, char a)

View File

@ -8,6 +8,11 @@ HG_DECLARE_HANDLE(HGVersionMgr);
#define HGVERSION_APPNAME_SCANNER "Scanner" #define HGVERSION_APPNAME_SCANNER "Scanner"
#define HGVERSION_OEMNAME_HUAGO "Huago"
#define HGVERSION_OEMNAME_HANVON "Hanvon"
#define HGVERSION_OEMNAME_LANXUM "Lanxum"
#define HGVERSION_OEMNAME_CUMTENN "Cumtenn"
#pragma pack(push) #pragma pack(push)
#pragma pack(4) #pragma pack(4)
@ -40,13 +45,13 @@ HGEXPORT HGResult HGAPI HGVersion_DestroyMgr(HGVersionMgr mgr);
HGEXPORT HGResult HGAPI HGVersion_GetServerConfig(HGVersionMgr mgr, HGServerConfig *config); HGEXPORT HGResult HGAPI HGVersion_GetServerConfig(HGVersionMgr mgr, HGServerConfig *config);
HGEXPORT HGResult HGAPI HGVersion_PostInstallInfo(HGVersionMgr mgr, const HGChar *appName, const HGChar *desc); HGEXPORT HGResult HGAPI HGVersion_PostInstallInfo(HGVersionMgr mgr, const HGChar *appName, const HGChar* oemName, const HGChar *desc);
HGEXPORT HGResult HGAPI HGVersion_PostUninstallInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* desc); HGEXPORT HGResult HGAPI HGVersion_PostUninstallInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, const HGChar* desc);
HGEXPORT HGResult HGAPI HGVersion_PostCrashInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr); HGEXPORT HGResult HGAPI HGVersion_PostCrashInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr);
HGEXPORT HGResult HGAPI HGVersion_PostUserFeedback(HGVersionMgr mgr, const HGChar* appName, const HGChar* desc, const HGChar* feedback, const HGChar* contact); HGEXPORT HGResult HGAPI HGVersion_PostUserFeedback(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, const HGChar* desc, const HGChar* feedback, const HGChar* contact);
// 设备信息 // 设备信息
HGEXPORT HGResult HGAPI HGVersion_PostDeviceOpenInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, HGEXPORT HGResult HGAPI HGVersion_PostDeviceOpenInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN,
@ -65,22 +70,22 @@ HGEXPORT HGResult HGAPI HGVersion_PostDevicePaperJamInfo(HGVersionMgr mgr, const
const HGChar* devType, const HGChar* devFW); const HGChar* devType, const HGChar* devFW);
// 用户行为 // 用户行为
HGEXPORT HGResult HGAPI HGVersion_PostUserOpenInfo(HGVersionMgr mgr, const HGChar* appName); HGEXPORT HGResult HGAPI HGVersion_PostUserOpenInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName);
HGEXPORT HGResult HGAPI HGVersion_PostUserCloseInfo(HGVersionMgr mgr, const HGChar* appName); HGEXPORT HGResult HGAPI HGVersion_PostUserCloseInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName);
HGEXPORT HGResult HGAPI HGVersion_PostUserLoginInfo(HGVersionMgr mgr, const HGChar* appName); HGEXPORT HGResult HGAPI HGVersion_PostUserLoginInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName);
HGEXPORT HGResult HGAPI HGVersion_PostUserLogoutInfo(HGVersionMgr mgr, const HGChar* appName); HGEXPORT HGResult HGAPI HGVersion_PostUserLogoutInfo(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName);
// 设备锁定信息 // 设备锁定信息
HGEXPORT HGResult HGAPI HGVersion_PostDeviceLockInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN, HGEXPORT HGResult HGAPI HGVersion_PostDeviceLockInfo(HGVersionMgr mgr, const HGChar* devName, const HGChar* devSN,
const HGChar* devType, const HGChar* devFW, HGBool isLock); const HGChar* devType, const HGChar* devFW, HGBool isLock);
HGEXPORT HGResult HGAPI HGVersion_GetVersionList(HGVersionMgr mgr, const HGChar* appName, HGVersionInfo **info, HGUInt *count); HGEXPORT HGResult HGAPI HGVersion_GetVersionList(HGVersionMgr mgr, const HGChar* appName, const HGChar* oemName, HGVersionInfo **info, HGUInt *count);
HGEXPORT HGResult HGAPI HGVersion_HttpDownload(HGVersionMgr mgr, const HGChar *url, const HGChar *saveFilePath, HGHttpDownloadFunc func, HGPointer param); HGEXPORT HGResult HGAPI HGVersion_HttpDownload(HGVersionMgr mgr, const HGChar *url, const HGChar *saveFilePath, HGHttpDownloadFunc func, HGPointer param);
HGEXPORT HGResult HGAPI HGVersion_ReleaseVersionList(HGVersionInfo* info, HGUInt count); HGEXPORT HGResult HGAPI HGVersion_ReleaseVersionList(HGVersionInfo* info, HGUInt count);
HGEXPORT HGResult HGAPI HGVersion_GetCurrVersion(const HGChar* appName, HGChar* version, HGUInt maxLen); HGEXPORT HGResult HGAPI HGVersion_GetCurrVersion(const HGChar* appName, const HGChar* oemName, HGChar* version, HGUInt maxLen);
HGEXPORT HGResult HGAPI HGVersion_CompareVersion(const HGChar* version1, const HGChar* version2, HGInt* result); HGEXPORT HGResult HGAPI HGVersion_CompareVersion(const HGChar* version1, const HGChar* version2, HGInt* result);

View File

@ -403,37 +403,22 @@ static std::string GetArchName()
return archName; return archName;
} }
static std::string GetOemName() static std::string GetCurrVersion(const std::string& appName, const std::string& oemName)
{
std::string oemName;
#if defined(OEM_HANWANG)
oemName = "Hanvon";
#elif defined(OEM_LISICHENG)
oemName = "Lanxum";
#elif defined(OEM_CANGTIAN)
oemName = "Cumtenn";
#else
oemName = "Huago";
#endif
return oemName;
}
static std::string GetCurrVersion(const std::string& appName)
{ {
std::string version = "0.0.0.0"; std::string version = "0.0.0.0";
if (appName == HGVERSION_APPNAME_SCANNER) if (appName == HGVERSION_APPNAME_SCANNER)
{ {
#if defined(HG_CMP_MSC) #if defined(HG_CMP_MSC)
#if defined(OEM_HANWANG) std::string regName;
std::string regName = "SOFTWARE\\HanvonScan"; if (oemName == HGVERSION_OEMNAME_HANVON)
#elif defined(OEM_LISICHENG) regName = "SOFTWARE\\HanvonScan";
std::string regName = "SOFTWARE\\LanxumScan"; else if (oemName == HGVERSION_OEMNAME_LANXUM)
#elif defined(OEM_CANGTIAN) regName = "SOFTWARE\\LanxumScan";
std::string regName = "SOFTWARE\\CumtennScan"; else if (oemName == HGVERSION_OEMNAME_CUMTENN)
#else regName = "SOFTWARE\\CumtennScan";
std::string regName = "SOFTWARE\\HuaGoScan"; else
#endif regName = "SOFTWARE\\HuaGoScan";
HKEY hKey = NULL; HKEY hKey = NULL;
RegOpenKeyExA(HKEY_LOCAL_MACHINE, regName.c_str(), 0, KEY_QUERY_VALUE, &hKey); RegOpenKeyExA(HKEY_LOCAL_MACHINE, regName.c_str(), 0, KEY_QUERY_VALUE, &hKey);
@ -453,27 +438,25 @@ static std::string GetCurrVersion(const std::string& appName)
std::string osName = GetOSName(); std::string osName = GetOSName();
if ("UnionTech" == osName) if ("UnionTech" == osName)
{ {
#if defined(OEM_HANWANG) if (oemName == HGVERSION_OEMNAME_HANVON)
appName = "com.hanvonchina.hanvonscan"; appName = "com.hanvonchina.hanvonscan";
#elif defined(OEM_LISICHENG) else if (oemName == HGVERSION_OEMNAME_LANXUM)
appName = "com.lanxumchina.lanxumscan"; appName = "com.lanxumchina.lanxumscan";
#elif defined(OEM_CANGTIAN) else if (oemName == HGVERSION_OEMNAME_CUMTENN)
appName = "com.cumtennchina.cumtennscan"; appName = "com.cumtennchina.cumtennscan";
#else else
appName = "com.huagaochina.huagoscan"; appName = "com.huagaochina.huagoscan";
#endif
} }
else else
{ {
#if defined(OEM_HANWANG) if (oemName == HGVERSION_OEMNAME_HANVON)
appName = "scanner-driver-hanvon"; appName = "scanner-driver-hanvon";
#elif defined(OEM_LISICHENG) else if (oemName == HGVERSION_OEMNAME_LANXUM)
appName = "scanner-driver-lanxum"; appName = "scanner-driver-lanxum";
#elif defined(OEM_CANGTIAN) else if (oemName == HGVERSION_OEMNAME_CUMTENN)
appName = "scanner-driver-cumtenn"; appName = "scanner-driver-cumtenn";
#else else
appName = "scanner-driver-huagao"; appName = "scanner-driver-huagao";
#endif
} }
std::string cmd = "dpkg -l " + appName; std::string cmd = "dpkg -l " + appName;
@ -516,7 +499,7 @@ static bool Greater(const std::string& str1, const std::string& str2)
return str1 > str2; return str1 > str2;
} }
static HGResult PostInfo(int type, const std::string& appName, const std::string& desc, const std::string& crashFileUrl, static HGResult PostInfo(int type, const std::string& appName, const std::string& oemName, const std::string& desc, const std::string& crashFileUrl,
const std::string& exceptionAddr, const std::string& feedbackInfo, const std::string& feedbackContact) const std::string& exceptionAddr, const std::string& feedbackInfo, const std::string& feedbackContact)
{ {
HGResult ret = HGBASE_ERR_FAIL; HGResult ret = HGBASE_ERR_FAIL;
@ -551,10 +534,9 @@ static HGResult PostInfo(int type, const std::string& appName, const std::string
pstr += 2; pstr += 2;
} }
std::string version = GetCurrVersion(appName); std::string version = GetCurrVersion(appName, oemName);
std::string osName = GetOSName(); std::string osName = GetOSName();
std::string archName = GetArchName(); std::string archName = GetArchName();
std::string oemName = GetOemName();
std::string jsonStr; std::string jsonStr;
cJSON* json = cJSON_CreateObject(); cJSON* json = cJSON_CreateObject();
@ -631,17 +613,17 @@ static HGResult PostInfo(int type, const std::string& appName, const std::string
return ret; return ret;
} }
static HGResult PostInstallInfo(const std::string& appName, const std::string& desc) static HGResult PostInstallInfo(const std::string& appName, const std::string& oemName, const std::string& desc)
{ {
return PostInfo(1, appName, desc, "", "", "", ""); return PostInfo(1, appName, oemName, desc, "", "", "", "");
} }
static HGResult PostUninstallInfo(const std::string& appName, const std::string& desc) static HGResult PostUninstallInfo(const std::string& appName, const std::string& oemName, const std::string& desc)
{ {
return PostInfo(2, appName, desc, "", "", "", ""); return PostInfo(2, appName, oemName, desc, "", "", "", "");
} }
static HGResult PostCrashInfo(const std::string &appName, const std::string &desc, const std::string& crashFilePath, const std::string& exceptionAddr) static HGResult PostCrashInfo(const std::string &appName, const std::string& oemName, const std::string &desc, const std::string& crashFilePath, const std::string& exceptionAddr)
{ {
std::string crashFileUrl; std::string crashFileUrl;
HGResult ret = CrashFileUpload(crashFilePath, crashFileUrl); HGResult ret = CrashFileUpload(crashFilePath, crashFileUrl);
@ -650,12 +632,12 @@ static HGResult PostCrashInfo(const std::string &appName, const std::string &des
return ret; return ret;
} }
return PostInfo(3, appName, desc, crashFileUrl, exceptionAddr, "", ""); return PostInfo(3, appName, oemName, desc, crashFileUrl, exceptionAddr, "", "");
} }
static HGResult PostUserFeedback(const std::string& appName, const std::string& desc, const std::string& feedback, const std::string& contact) static HGResult PostUserFeedback(const std::string& appName, const std::string& oemName, const std::string& desc, const std::string& feedback, const std::string& contact)
{ {
return PostInfo(4, appName, desc, "", "", feedback, contact); return PostInfo(4, appName, oemName, desc, "", "", feedback, contact);
} }
static HGResult PostDeviceInfo(const std::string& devName, const std::string& devSN, const std::string& devType, static HGResult PostDeviceInfo(const std::string& devName, const std::string& devSN, const std::string& devType,
@ -836,7 +818,7 @@ static HGResult PostDeviceLockInfo(const std::string& devName, const std::string
return ret; return ret;
} }
static HGResult PostUserInfo(const std::string& appName, HGUInt powerOn, HGUInt powerOff, HGUInt login, HGUInt logout) static HGResult PostUserInfo(const std::string& appName, const std::string& oemName, HGUInt powerOn, HGUInt powerOff, HGUInt login, HGUInt logout)
{ {
HGResult ret = HGBASE_ERR_FAIL; HGResult ret = HGBASE_ERR_FAIL;
CURL* curl = curl_easy_init(); CURL* curl = curl_easy_init();
@ -870,10 +852,9 @@ static HGResult PostUserInfo(const std::string& appName, HGUInt powerOn, HGUInt
pstr += 2; pstr += 2;
} }
std::string version = GetCurrVersion(appName); std::string version = GetCurrVersion(appName, oemName);
std::string osName = GetOSName(); std::string osName = GetOSName();
std::string archName = GetArchName(); std::string archName = GetArchName();
std::string oemName = GetOemName();
std::string jsonStr; std::string jsonStr;
cJSON* json = cJSON_CreateObject(); cJSON* json = cJSON_CreateObject();
@ -942,7 +923,7 @@ static HGResult PostUserInfo(const std::string& appName, HGUInt powerOn, HGUInt
return ret; return ret;
} }
static HGResult GetVersionList(const std::string& appName, std::list<VersionInfoImpl> &versionList) static HGResult GetVersionList(const std::string& appName, const std::string& oemName, std::list<VersionInfoImpl> &versionList)
{ {
versionList.clear(); versionList.clear();
@ -954,7 +935,6 @@ static HGResult GetVersionList(const std::string& appName, std::list<VersionInfo
std::string osName = GetOSName(); std::string osName = GetOSName();
std::string archName = GetArchName(); std::string archName = GetArchName();
std::string oemName = GetOemName();
std::string url = "http://cd.holdtecs.net:50080/api/ver?app=" + appName + "&oem=" + oemName + "&cpu=" + archName + "&sys=" + osName; std::string url = "http://cd.holdtecs.net:50080/api/ver?app=" + appName + "&oem=" + oemName + "&cpu=" + archName + "&sys=" + osName;
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 2); curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 2);
@ -1147,17 +1127,17 @@ HGResult HGVersionMgrImpl::GetServerConfig(HGServerConfig* config)
return HGBASE_ERR_OK; return HGBASE_ERR_OK;
} }
HGResult HGVersionMgrImpl::PostInstallInfo(const HGChar* appName, const HGChar* desc) HGResult HGVersionMgrImpl::PostInstallInfo(const HGChar* appName, const HGChar* oemName, const HGChar* desc)
{ {
return ::PostInstallInfo(appName, desc); return ::PostInstallInfo(appName, oemName, desc);
} }
HGResult HGVersionMgrImpl::PostUninstallInfo(const HGChar* appName, const HGChar* desc) HGResult HGVersionMgrImpl::PostUninstallInfo(const HGChar* appName, const HGChar* oemName, const HGChar* desc)
{ {
return ::PostUninstallInfo(appName, desc); return ::PostUninstallInfo(appName, oemName, desc);
} }
HGResult HGVersionMgrImpl::PostCrashInfo(const HGChar* appName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr) HGResult HGVersionMgrImpl::PostCrashInfo(const HGChar* appName, const HGChar* oemName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr)
{ {
HGBase_EnterLock(m_lock); HGBase_EnterLock(m_lock);
HGBool postCrashInfo = m_serverCfg.postCrashInfo; HGBool postCrashInfo = m_serverCfg.postCrashInfo;
@ -1165,12 +1145,12 @@ HGResult HGVersionMgrImpl::PostCrashInfo(const HGChar* appName, const HGChar* de
if (!postCrashInfo) if (!postCrashInfo)
return HGBASE_ERR_FAIL; return HGBASE_ERR_FAIL;
return ::PostCrashInfo(appName, desc, crashFilePath, exceptionAddr); return ::PostCrashInfo(appName, oemName, desc, crashFilePath, exceptionAddr);
} }
HGResult HGVersionMgrImpl::PostUserFeedback(const HGChar* appName, const HGChar* desc, const HGChar* feedback, const HGChar* contact) HGResult HGVersionMgrImpl::PostUserFeedback(const HGChar* appName, const HGChar* oemName, const HGChar* desc, const HGChar* feedback, const HGChar* contact)
{ {
return ::PostUserFeedback(appName, desc, feedback, contact); return ::PostUserFeedback(appName, oemName, desc, feedback, contact);
} }
HGResult HGVersionMgrImpl::PostDeviceOpenInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, HGResult HGVersionMgrImpl::PostDeviceOpenInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType,
@ -1365,7 +1345,7 @@ HGResult HGVersionMgrImpl::PostDevicePaperJamInfo(const HGChar* devName, const H
return ret; return ret;
} }
HGResult HGVersionMgrImpl::PostUserOpenInfo(const HGChar* appName) HGResult HGVersionMgrImpl::PostUserOpenInfo(const HGChar* appName, const HGChar* oemName)
{ {
HGBase_EnterLock(m_lock); HGBase_EnterLock(m_lock);
HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo; HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo;
@ -1375,6 +1355,7 @@ HGResult HGVersionMgrImpl::PostUserOpenInfo(const HGChar* appName)
PostUserInfoParam* param = new PostUserInfoParam; PostUserInfoParam* param = new PostUserInfoParam;
param->appName = appName; param->appName = appName;
param->oemName = oemName;
HGMsg msg; HGMsg msg;
msg.id = MsgId_PostUserOpenInfo; msg.id = MsgId_PostUserOpenInfo;
@ -1385,7 +1366,7 @@ HGResult HGVersionMgrImpl::PostUserOpenInfo(const HGChar* appName)
return ret; return ret;
} }
HGResult HGVersionMgrImpl::PostUserCloseInfo(const HGChar* appName) HGResult HGVersionMgrImpl::PostUserCloseInfo(const HGChar* appName, const HGChar* oemName)
{ {
HGBase_EnterLock(m_lock); HGBase_EnterLock(m_lock);
HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo; HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo;
@ -1395,6 +1376,7 @@ HGResult HGVersionMgrImpl::PostUserCloseInfo(const HGChar* appName)
PostUserInfoParam* param = new PostUserInfoParam; PostUserInfoParam* param = new PostUserInfoParam;
param->appName = appName; param->appName = appName;
param->oemName = oemName;
HGMsg msg; HGMsg msg;
msg.id = MsgId_PostUserCloseInfo; msg.id = MsgId_PostUserCloseInfo;
@ -1405,7 +1387,7 @@ HGResult HGVersionMgrImpl::PostUserCloseInfo(const HGChar* appName)
return ret; return ret;
} }
HGResult HGVersionMgrImpl::PostUserLoginInfo(const HGChar* appName) HGResult HGVersionMgrImpl::PostUserLoginInfo(const HGChar* appName, const HGChar* oemName)
{ {
HGBase_EnterLock(m_lock); HGBase_EnterLock(m_lock);
HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo; HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo;
@ -1415,6 +1397,7 @@ HGResult HGVersionMgrImpl::PostUserLoginInfo(const HGChar* appName)
PostUserInfoParam* param = new PostUserInfoParam; PostUserInfoParam* param = new PostUserInfoParam;
param->appName = appName; param->appName = appName;
param->oemName = oemName;
HGMsg msg; HGMsg msg;
msg.id = MsgId_PostUserLoginInfo; msg.id = MsgId_PostUserLoginInfo;
@ -1425,7 +1408,7 @@ HGResult HGVersionMgrImpl::PostUserLoginInfo(const HGChar* appName)
return ret; return ret;
} }
HGResult HGVersionMgrImpl::PostUserLogoutInfo(const HGChar* appName) HGResult HGVersionMgrImpl::PostUserLogoutInfo(const HGChar* appName, const HGChar* oemName)
{ {
HGBase_EnterLock(m_lock); HGBase_EnterLock(m_lock);
HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo; HGBool postUserBehaviorInfo = m_serverCfg.postUserBehaviorInfo;
@ -1435,6 +1418,7 @@ HGResult HGVersionMgrImpl::PostUserLogoutInfo(const HGChar* appName)
PostUserInfoParam* param = new PostUserInfoParam; PostUserInfoParam* param = new PostUserInfoParam;
param->appName = appName; param->appName = appName;
param->oemName = oemName;
HGMsg msg; HGMsg msg;
msg.id = MsgId_PostUserLogoutInfo; msg.id = MsgId_PostUserLogoutInfo;
@ -1464,7 +1448,7 @@ HGResult HGVersionMgrImpl::PostDeviceLockInfo(const HGChar* devName, const HGCha
return ret; return ret;
} }
HGResult HGVersionMgrImpl::GetVersionList(const HGChar* appName, HGVersionInfo** info, HGUInt* count) HGResult HGVersionMgrImpl::GetVersionList(const HGChar* appName, const HGChar* oemName, HGVersionInfo** info, HGUInt* count)
{ {
if (NULL == info || NULL == count) if (NULL == info || NULL == count)
{ {
@ -1472,7 +1456,7 @@ HGResult HGVersionMgrImpl::GetVersionList(const HGChar* appName, HGVersionInfo**
} }
std::list<VersionInfoImpl> versionList; std::list<VersionInfoImpl> versionList;
HGResult ret = ::GetVersionList(appName, versionList); HGResult ret = ::GetVersionList(appName, oemName, versionList);
if (HGBASE_ERR_OK != ret) if (HGBASE_ERR_OK != ret)
{ {
return ret; return ret;
@ -1541,14 +1525,14 @@ HGResult HGVersionMgrImpl::ReleaseVersionList(HGVersionInfo* info, HGUInt count)
return HGBASE_ERR_OK; return HGBASE_ERR_OK;
} }
HGResult HGVersionMgrImpl::GetCurrVersion(const HGChar* appName, HGChar* version, HGUInt maxLen) HGResult HGVersionMgrImpl::GetCurrVersion(const HGChar* appName, const HGChar* oemName, HGChar* version, HGUInt maxLen)
{ {
if (NULL == version || 0 == maxLen) if (NULL == version || 0 == maxLen)
{ {
return HGBASE_ERR_INVALIDARG; return HGBASE_ERR_INVALIDARG;
} }
std::string ver = ::GetCurrVersion(appName); std::string ver = ::GetCurrVersion(appName, oemName);
if (maxLen < ver.size() + 1) if (maxLen < ver.size() + 1)
{ {
return HGBASE_ERR_FAIL; return HGBASE_ERR_FAIL;
@ -1843,28 +1827,28 @@ void HGAPI HGVersionMgrImpl::MsgPumpFunc(HGMsgPump msgPump, const HGMsg* msg, HG
case MsgId_PostUserOpenInfo: case MsgId_PostUserOpenInfo:
{ {
PostUserInfoParam* param = (PostUserInfoParam*)msg->data; PostUserInfoParam* param = (PostUserInfoParam*)msg->data;
::PostUserInfo(param->appName, 1, 0, 0, 0); ::PostUserInfo(param->appName, param->oemName, 1, 0, 0, 0);
delete param; delete param;
} }
break; break;
case MsgId_PostUserCloseInfo: case MsgId_PostUserCloseInfo:
{ {
PostUserInfoParam* param = (PostUserInfoParam*)msg->data; PostUserInfoParam* param = (PostUserInfoParam*)msg->data;
::PostUserInfo(param->appName, 0, 1, 0, 0); ::PostUserInfo(param->appName, param->oemName, 0, 1, 0, 0);
delete param; delete param;
} }
break; break;
case MsgId_PostUserLoginInfo: case MsgId_PostUserLoginInfo:
{ {
PostUserInfoParam* param = (PostUserInfoParam*)msg->data; PostUserInfoParam* param = (PostUserInfoParam*)msg->data;
::PostUserInfo(param->appName, 0, 0, 1, 0); ::PostUserInfo(param->appName, param->oemName, 0, 0, 1, 0);
delete param; delete param;
} }
break; break;
case MsgId_PostUserLogoutInfo: case MsgId_PostUserLogoutInfo:
{ {
PostUserInfoParam* param = (PostUserInfoParam*)msg->data; PostUserInfoParam* param = (PostUserInfoParam*)msg->data;
::PostUserInfo(param->appName, 0, 0, 0, 1); ::PostUserInfo(param->appName, param->oemName, 0, 0, 0, 1);
delete param; delete param;
} }
break; break;

View File

@ -13,10 +13,10 @@ public:
~HGVersionMgrImpl(); ~HGVersionMgrImpl();
HGResult GetServerConfig(HGServerConfig* config); HGResult GetServerConfig(HGServerConfig* config);
HGResult PostInstallInfo(const HGChar* appName, const HGChar* desc); HGResult PostInstallInfo(const HGChar* appName, const HGChar* oemName, const HGChar* desc);
HGResult PostUninstallInfo(const HGChar* appName, const HGChar* desc); HGResult PostUninstallInfo(const HGChar* appName, const HGChar* oemName, const HGChar* desc);
HGResult PostCrashInfo(const HGChar* appName, const HGChar* desc, const HGChar* crashFilePath, const HGChar* exceptionAddr); HGResult PostCrashInfo(const HGChar* appName, const HGChar* oemName, 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* oemName, const HGChar* desc, const HGChar* feedback, const HGChar* contact);
// 设备信息 // 设备信息
HGResult PostDeviceOpenInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, HGResult PostDeviceOpenInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType,
@ -35,19 +35,19 @@ public:
const HGChar* devFW); const HGChar* devFW);
// 用户行为 // 用户行为
HGResult PostUserOpenInfo(const HGChar* appName); HGResult PostUserOpenInfo(const HGChar* appName, const HGChar* oemName);
HGResult PostUserCloseInfo(const HGChar* appName); HGResult PostUserCloseInfo(const HGChar* appName, const HGChar* oemName);
HGResult PostUserLoginInfo(const HGChar* appName); HGResult PostUserLoginInfo(const HGChar* appName, const HGChar* oemName);
HGResult PostUserLogoutInfo(const HGChar* appName); HGResult PostUserLogoutInfo(const HGChar* appName, const HGChar* oemName);
// 设备锁定日志 // 设备锁定日志
HGResult PostDeviceLockInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType, HGResult PostDeviceLockInfo(const HGChar* devName, const HGChar* devSN, const HGChar* devType,
const HGChar* devFW, HGBool isLock); const HGChar* devFW, HGBool isLock);
HGResult GetVersionList(const HGChar* appName, HGVersionInfo** info, HGUInt* count); HGResult GetVersionList(const HGChar* appName, const HGChar* oemName, HGVersionInfo** info, HGUInt* count);
HGResult HttpDownload(const HGChar* url, const HGChar* saveFilePath, HGHttpDownloadFunc func, HGPointer param); HGResult HttpDownload(const HGChar* url, const HGChar* saveFilePath, HGHttpDownloadFunc func, HGPointer param);
static HGResult ReleaseVersionList(HGVersionInfo *info, HGUInt count); static HGResult ReleaseVersionList(HGVersionInfo *info, HGUInt count);
static HGResult GetCurrVersion(const HGChar* appName, HGChar* version, HGUInt maxLen); static HGResult GetCurrVersion(const HGChar* appName, const HGChar* oemName, HGChar* version, HGUInt maxLen);
HGResult BlackListCheck(const HGChar* devSN, HGBool* inList); HGResult BlackListCheck(const HGChar* devSN, HGBool* inList);
HGResult GetDriverVersionList(const HGChar* devType, HGVersionInfo** info, HGUInt* count); HGResult GetDriverVersionList(const HGChar* devType, HGVersionInfo** info, HGUInt* count);

View File

@ -51,6 +51,7 @@ struct PostDeviceRollerCountInfoParam
struct PostUserInfoParam struct PostUserInfoParam
{ {
std::string appName; std::string appName;
std::string oemName;
}; };
struct PostDeviceLockInfoParam struct PostDeviceLockInfoParam