1.数据库可以支持每个测试项上传多个文件

2.支持自定义的测试项
This commit is contained in:
luoliangyi 2023-01-03 18:11:21 +08:00
parent 0b8f2fd2e0
commit 290e78164c
6 changed files with 417 additions and 658 deletions

View File

@ -199,6 +199,28 @@ HGResult HGAPI HGPdtToolDb_SetUserConfig(HGPdtToolDbUserMgr userMgr, const HGCha
return userMgrImpl->SetConfig(key, value); return userMgrImpl->SetConfig(key, value);
} }
HGResult HGAPI HGPdtToolDb_GetEntryNameCnStr(HGPdtToolDbUserMgr userMgr, const HGChar* entryName, HGChar* entryNameCnStr, HGUInt maxLen)
{
if (NULL == userMgr)
{
return HGBASE_ERR_INVALIDARG;
}
HGPdtToolDbUserMgrImpl* userMgrImpl = (HGPdtToolDbUserMgrImpl*)userMgr;
return userMgrImpl->GetEntryNameCnStr(entryName, entryNameCnStr, maxLen);
}
HGResult HGAPI HGPdtToolDb_SetEntryNameCnStr(HGPdtToolDbUserMgr userMgr, const HGChar* entryName, const HGChar* entryNameCnStr)
{
if (NULL == userMgr)
{
return HGBASE_ERR_INVALIDARG;
}
HGPdtToolDbUserMgrImpl* userMgrImpl = (HGPdtToolDbUserMgrImpl*)userMgr;
return userMgrImpl->SetEntryNameCnStr(entryName, entryNameCnStr);
}
HGResult HGAPI HGPdtToolDb_OpenDevice(HGPdtToolDbUserMgr userMgr, const HGChar* sn, HGPdtToolDbDevice* device) HGResult HGAPI HGPdtToolDb_OpenDevice(HGPdtToolDbUserMgr userMgr, const HGChar* sn, HGPdtToolDbDevice* device)
{ {
if (NULL == userMgr || NULL == device) if (NULL == userMgr || NULL == device)
@ -296,29 +318,7 @@ HGResult HGAPI HGPdtToolDb_SetDeviceVersion(HGPdtToolDbDevice device, const HGCh
return deviceImpl->SetVersion(version); return deviceImpl->SetVersion(version);
} }
HGResult HGAPI HGPdtToolDb_GetDeviceCurrEntry(HGPdtToolDbDevice device, HGUInt* entryName) HGResult HGAPI HGPdtToolDb_GetDeviceEntryStatus(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt* entryStatus)
{
if (NULL == device)
{
return HGBASE_ERR_INVALIDARG;
}
HGPdtToolDbDeviceImpl* deviceImpl = (HGPdtToolDbDeviceImpl*)device;
return deviceImpl->GetCurrEntry(entryName);
}
HGResult HGAPI HGPdtToolDb_SetDeviceCurrEntry(HGPdtToolDbDevice device, HGUInt entryName)
{
if (NULL == device)
{
return HGBASE_ERR_INVALIDARG;
}
HGPdtToolDbDeviceImpl* deviceImpl = (HGPdtToolDbDeviceImpl*)device;
return deviceImpl->SetCurrEntry(entryName);
}
HGResult HGAPI HGPdtToolDb_GetDeviceEntryStatus(HGPdtToolDbDevice device, HGUInt entryName, HGUInt* entryStatus)
{ {
if (NULL == device) if (NULL == device)
{ {
@ -329,7 +329,7 @@ HGResult HGAPI HGPdtToolDb_GetDeviceEntryStatus(HGPdtToolDbDevice device, HGUInt
return deviceImpl->GetEntryStatus(entryName, entryStatus); return deviceImpl->GetEntryStatus(entryName, entryStatus);
} }
HGResult HGAPI HGPdtToolDb_GetDeviceEntryExcepDesc(HGPdtToolDbDevice device, HGUInt entryName, HGChar* excepDesc, HGUInt maxLen) HGResult HGAPI HGPdtToolDb_GetDeviceEntryExcepDesc(HGPdtToolDbDevice device, const HGChar* entryName, HGChar* excepDesc, HGUInt maxLen)
{ {
if (NULL == device) if (NULL == device)
{ {
@ -340,7 +340,7 @@ HGResult HGAPI HGPdtToolDb_GetDeviceEntryExcepDesc(HGPdtToolDbDevice device, HGU
return deviceImpl->GetEntryExcepDesc(entryName, excepDesc, maxLen); return deviceImpl->GetEntryExcepDesc(entryName, excepDesc, maxLen);
} }
HGResult HGAPI HGPdtToolDb_SetDeviceEntryStatus(HGPdtToolDbDevice device, HGUInt entryName, HGUInt entryStatus) HGResult HGAPI HGPdtToolDb_SetDeviceEntryStatus(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt entryStatus)
{ {
if (NULL == device) if (NULL == device)
{ {
@ -351,7 +351,7 @@ HGResult HGAPI HGPdtToolDb_SetDeviceEntryStatus(HGPdtToolDbDevice device, HGUInt
return deviceImpl->SetEntryStatus(entryName, entryStatus); return deviceImpl->SetEntryStatus(entryName, entryStatus);
} }
HGResult HGAPI HGPdtToolDb_SetDeviceEntryExcepDesc(HGPdtToolDbDevice device, HGUInt entryName, const HGChar* excepDesc) HGResult HGAPI HGPdtToolDb_SetDeviceEntryExcepDesc(HGPdtToolDbDevice device, const HGChar* entryName, const HGChar* excepDesc)
{ {
if (NULL == device) if (NULL == device)
{ {
@ -362,8 +362,8 @@ HGResult HGAPI HGPdtToolDb_SetDeviceEntryExcepDesc(HGPdtToolDbDevice device, HGU
return deviceImpl->SetEntryExcepDesc(entryName, excepDesc); return deviceImpl->SetEntryExcepDesc(entryName, excepDesc);
} }
HGResult HGAPI HGPdtToolDb_DownloadDeviceEntryImage(HGPdtToolDbDevice device, HGUInt entryName, HGResult HGAPI HGPdtToolDb_DownloadDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName,
const HGChar* ftpHost, HGUShort ftpPort, const HGChar* fileName) const HGChar* ftpHost, HGUShort ftpPort, HGUInt index, const HGChar* fileName)
{ {
if (NULL == device) if (NULL == device)
{ {
@ -371,10 +371,10 @@ HGResult HGAPI HGPdtToolDb_DownloadDeviceEntryImage(HGPdtToolDbDevice device, HG
} }
HGPdtToolDbDeviceImpl* deviceImpl = (HGPdtToolDbDeviceImpl*)device; HGPdtToolDbDeviceImpl* deviceImpl = (HGPdtToolDbDeviceImpl*)device;
return deviceImpl->DownloadEntryImage(entryName, ftpHost, ftpPort, fileName); return deviceImpl->DownloadEntryImage(entryName, ftpHost, ftpPort, index, fileName);
} }
HGResult HGAPI HGPdtToolDb_CheckDeviceEntryImage(HGPdtToolDbDevice device, HGUInt entryName) HGResult HGAPI HGPdtToolDb_GetDeviceEntryImageCount(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt* count)
{ {
if (NULL == device) if (NULL == device)
{ {
@ -382,10 +382,21 @@ HGResult HGAPI HGPdtToolDb_CheckDeviceEntryImage(HGPdtToolDbDevice device, HGUIn
} }
HGPdtToolDbDeviceImpl* deviceImpl = (HGPdtToolDbDeviceImpl*)device; HGPdtToolDbDeviceImpl* deviceImpl = (HGPdtToolDbDeviceImpl*)device;
return deviceImpl->CheckEntryImage(entryName); return deviceImpl->GetEntryImageCount(entryName, count);
} }
HGResult HGAPI HGPdtToolDb_UploadDeviceEntryImage(HGPdtToolDbDevice device, HGUInt entryName, HGResult HGAPI HGPdtToolDb_ClearDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName)
{
if (NULL == device)
{
return HGBASE_ERR_INVALIDARG;
}
HGPdtToolDbDeviceImpl* deviceImpl = (HGPdtToolDbDeviceImpl*)device;
return deviceImpl->ClearEntryImage(entryName);
}
HGResult HGAPI HGPdtToolDb_UploadDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName,
const HGChar* ftpHost, HGUShort ftpPort, const HGChar* fileName) const HGChar* ftpHost, HGUShort ftpPort, const HGChar* fileName)
{ {
if (NULL == device) if (NULL == device)

View File

@ -19,6 +19,8 @@ HGPdtToolDb_DownloadFile
HGPdtToolDb_Export HGPdtToolDb_Export
HGPdtToolDb_GetUserConfig HGPdtToolDb_GetUserConfig
HGPdtToolDb_SetUserConfig HGPdtToolDb_SetUserConfig
HGPdtToolDb_GetEntryNameCnStr
HGPdtToolDb_SetEntryNameCnStr
HGPdtToolDb_OpenDevice HGPdtToolDb_OpenDevice
HGPdtToolDb_CloseDevice HGPdtToolDb_CloseDevice
HGPdtToolDb_GetDeviceName HGPdtToolDb_GetDeviceName
@ -27,12 +29,11 @@ HGPdtToolDb_GetDeviceType
HGPdtToolDb_SetDeviceType HGPdtToolDb_SetDeviceType
HGPdtToolDb_GetDeviceVersion HGPdtToolDb_GetDeviceVersion
HGPdtToolDb_SetDeviceVersion HGPdtToolDb_SetDeviceVersion
HGPdtToolDb_GetDeviceCurrEntry
HGPdtToolDb_SetDeviceCurrEntry
HGPdtToolDb_GetDeviceEntryStatus HGPdtToolDb_GetDeviceEntryStatus
HGPdtToolDb_GetDeviceEntryExcepDesc HGPdtToolDb_GetDeviceEntryExcepDesc
HGPdtToolDb_SetDeviceEntryStatus HGPdtToolDb_SetDeviceEntryStatus
HGPdtToolDb_SetDeviceEntryExcepDesc HGPdtToolDb_SetDeviceEntryExcepDesc
HGPdtToolDb_DownloadDeviceEntryImage HGPdtToolDb_DownloadDeviceEntryImage
HGPdtToolDb_CheckDeviceEntryImage HGPdtToolDb_GetDeviceEntryImageCount
HGPdtToolDb_ClearDeviceEntryImage
HGPdtToolDb_UploadDeviceEntryImage HGPdtToolDb_UploadDeviceEntryImage

View File

@ -19,79 +19,6 @@
/* 普通账户 */ /* 普通账户 */
#define HGPDTTOOLDB_USERTYPE_NORMAL 2L #define HGPDTTOOLDB_USERTYPE_NORMAL 2L
/* 拨码开关校验 */
#define HGPDTTOOLDB_ENTRYNAME_DIAL_SWITCH 1L
/* 检查船型开关功能 */
#define HGPDTTOOLDB_ENTRYNAME_ROCKER_SWITCH 2L
/* 设备上电并观察开机状态 */
#define HGPDTTOOLDB_ENTRYNAME_BOOT_STATUS 3L
/* 检查液晶显示 */
#define HGPDTTOOLDB_ENTRYNAME_LCD_DISPLAY 4L
/* 清理纸道功能确认 */
#define HGPDTTOOLDB_ENTRYNAME_CLEAR_PAPER_PATH 5L
/* 按键功能检测 */
#define HGPDTTOOLDB_ENTRYNAME_KEY_FUNCTION 6L
/* 计数模式检测 */
#define HGPDTTOOLDB_ENTRYNAME_COUNTING_MODE 7L
/* 歪斜检测 */
#define HGPDTTOOLDB_ENTRYNAME_SKEW_DETECTION 8L
/* 分纸电机检测 */
#define HGPDTTOOLDB_ENTRYNAME_SEPARATER_MOTOR 9L
/* CIS原图初检 */
#define HGPDTTOOLDB_ENTRYNAME_CIS_ORIGINAL_IMAGE 10L
/* 主机风扇功能检测 */
#define HGPDTTOOLDB_ENTRYNAME_HOST_FAN 11L
/* 超声波模块检验 */
#define HGPDTTOOLDB_ENTRYNAME_ULTRASONIC_MODULE 12L
/* LED灯状态检查 */
#define HGPDTTOOLDB_ENTRYNAME_LED_LIGHT 13L
/* 复位检查 */
#define HGPDTTOOLDB_ENTRYNAME_RESET 14L
/* 走纸检查 */
#define HGPDTTOOLDB_ENTRYNAME_PAPER_FEED 15L
/* 开盖传感器检查 */
#define HGPDTTOOLDB_ENTRYNAME_COVER_SENSOR 16L
/* 扫描传感器检查 */
#define HGPDTTOOLDB_ENTRYNAME_SCANNING_SENSOR 17L
/* 配置速度模式 */
#define HGPDTTOOLDB_ENTRYNAME_CONFIGURE_SPEED_MODE 101L
/* 放置校正纸 */
#define HGPDTTOOLDB_ENTRYNAME_PLACE_CORRECTION_PAPER 102L
/* 自动平场校正 */
#define HGPDTTOOLDB_ENTRYNAME_AUTO_FLAT_FIELD 103L
/* 重启设备 */
#define HGPDTTOOLDB_ENTRYNAME_REBOOT_DEVICE 104L
/* 扫描图像质量确认 */
#define HGPDTTOOLDB_ENTRYNAME_IMAGE_QUALITY 105L
/* 色卡纸成像质量评估 */
#define HGPDTTOOLDB_ENTRYNAME_COLORCARD_IMAGEING_QUALITY 106L
/* 色卡纸偏色成像质量评估 */
#define HGPDTTOOLDB_ENTRYNAME_COLORCARD_BIAS_IMAGEING_QUALITY 107L
/* 清晰度质量评估 */
#define HGPDTTOOLDB_ENTRYNAME_CLARITY_QUALITY 108L
/* 畸变修正 */
#define HGPDTTOOLDB_ENTRYNAME_DISTORTION 109L
/* 设置休眠 */
#define HGPDTTOOLDB_ENTRYNAME_DORMANCY 110L
/* 歪斜挡位检测 */
#define HGPDTTOOLDB_ENTRYNAME_SKEW_GEAR 111L
/* 分纸强度检测 */
#define HGPDTTOOLDB_ENTRYNAME_PAPER_SEPARATION_STRENGTH 112L
/* 机械走纸倾斜检测 */
#define HGPDTTOOLDB_ENTRYNAME_MECH_PAPER_FEEDING_INCLINATION 113L
/* 单张测试1 */
#define HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_1 201L
/* 单张测试2 */
#define HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_2 202L
/* 单张测试3 */
#define HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_3 203L
/* 压力测试2轮 */
#define HGPDTTOOLDB_ENTRYNAME_PRESSUER_TEST 204L
/* 清除滚轴计数 */
#define HGPDTTOOLDB_ENTRYNAME_CLEAR_ROLLER_COUNT 205L
/* 未测试 */ /* 未测试 */
#define HGPDTTOOLDB_ENTRYSTATUS_NOTTEST 0L #define HGPDTTOOLDB_ENTRYSTATUS_NOTTEST 0L
/* 不通过 */ /* 不通过 */
@ -156,6 +83,12 @@ HGEXPORT HGResult HGAPI HGPdtToolDb_GetUserConfig(HGPdtToolDbUserMgr userMgr, co
/* 设置用户配置 */ /* 设置用户配置 */
HGEXPORT HGResult HGAPI HGPdtToolDb_SetUserConfig(HGPdtToolDbUserMgr userMgr, const HGChar* key, const HGChar* value); HGEXPORT HGResult HGAPI HGPdtToolDb_SetUserConfig(HGPdtToolDbUserMgr userMgr, const HGChar* key, const HGChar* value);
/* 获取测试项中文字符串 */
HGEXPORT HGResult HGAPI HGPdtToolDb_GetEntryNameCnStr(HGPdtToolDbUserMgr userMgr, const HGChar* entryName, HGChar* entryNameCnStr, HGUInt maxLen);
/* 设置测试项中文字符串 */
HGEXPORT HGResult HGAPI HGPdtToolDb_SetEntryNameCnStr(HGPdtToolDbUserMgr userMgr, const HGChar* entryName, const HGChar* entryNameCnStr);
/* 创建/打开设备sn标识设备唯一序列号 */ /* 创建/打开设备sn标识设备唯一序列号 */
HGEXPORT HGResult HGAPI HGPdtToolDb_OpenDevice(HGPdtToolDbUserMgr userMgr, const HGChar* sn, HGPdtToolDbDevice *device); HGEXPORT HGResult HGAPI HGPdtToolDb_OpenDevice(HGPdtToolDbUserMgr userMgr, const HGChar* sn, HGPdtToolDbDevice *device);
@ -180,33 +113,30 @@ HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceVersion(HGPdtToolDbDevice device, H
/* 设置设备版本 */ /* 设置设备版本 */
HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceVersion(HGPdtToolDbDevice device, const HGChar* version); HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceVersion(HGPdtToolDbDevice device, const HGChar* version);
/* 获取当前的测试项, 0表示还未测试0xFFFFFFFF表示已经测试完成 */
HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceCurrEntry(HGPdtToolDbDevice device, HGUInt *entryName);
/* 设置当前的测试项, 0表示还未测试0xFFFFFFFF表示已经测试完成 */
HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceCurrEntry(HGPdtToolDbDevice device, HGUInt entryName);
/* 获取某个测试项的状态 */ /* 获取某个测试项的状态 */
HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryStatus(HGPdtToolDbDevice device, HGUInt entryName, HGUInt *entryStatus); HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryStatus(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt *entryStatus);
/* 获取某个测试项的异常说明 */ /* 获取某个测试项的异常说明 */
HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryExcepDesc(HGPdtToolDbDevice device, HGUInt entryName, HGChar *excepDesc, HGUInt maxLen); HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryExcepDesc(HGPdtToolDbDevice device, const HGChar* entryName, HGChar *excepDesc, HGUInt maxLen);
/* 设置某个测试项的状态 */ /* 设置某个测试项的状态 */
HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceEntryStatus(HGPdtToolDbDevice device, HGUInt entryName, HGUInt entryStatus); HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceEntryStatus(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt entryStatus);
/* 设置某个测试项的异常说明 */ /* 设置某个测试项的异常说明 */
HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceEntryExcepDesc(HGPdtToolDbDevice device, HGUInt entryName, const HGChar* excepDesc); HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceEntryExcepDesc(HGPdtToolDbDevice device, const HGChar* entryName, const HGChar* excepDesc);
/* 下载某个测试项关联的图像 */ /* 下载某个测试项关联的图像 */
HGEXPORT HGResult HGAPI HGPdtToolDb_DownloadDeviceEntryImage(HGPdtToolDbDevice device, HGUInt entryName, HGEXPORT HGResult HGAPI HGPdtToolDb_DownloadDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName,
const HGChar* ftpHost, HGUShort ftpPort, const HGChar* fileName); const HGChar* ftpHost, HGUShort ftpPort, HGUInt index, const HGChar* fileName);
/* 检查某个测试项关联的图像 */ /* 获取某个测试项关联的图像数量 */
HGEXPORT HGResult HGAPI HGPdtToolDb_CheckDeviceEntryImage(HGPdtToolDbDevice device, HGUInt entryName); HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryImageCount(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt* count);
/* 上传/更新某个测试项关联的图像 */ /* 清理某个测试项关联的图像 */
HGEXPORT HGResult HGAPI HGPdtToolDb_UploadDeviceEntryImage(HGPdtToolDbDevice device, HGUInt entryName, HGEXPORT HGResult HGAPI HGPdtToolDb_ClearDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName);
/* 上传某个测试项关联的图像 */
HGEXPORT HGResult HGAPI HGPdtToolDb_UploadDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName,
const HGChar* ftpHost, HGUShort ftpPort, const HGChar* fileName); const HGChar* ftpHost, HGUShort ftpPort, const HGChar* fileName);

File diff suppressed because it is too large Load Diff

View File

@ -36,6 +36,8 @@ public:
HGResult Export(const HGChar* xlsPath); HGResult Export(const HGChar* xlsPath);
HGResult GetConfig(const HGChar *key, HGChar *value, HGUInt maxLen); HGResult GetConfig(const HGChar *key, HGChar *value, HGUInt maxLen);
HGResult SetConfig(const HGChar* key, const HGChar *value); HGResult SetConfig(const HGChar* key, const HGChar *value);
HGResult GetEntryNameCnStr(const HGChar* entryName, HGChar* entryNameCnStr, HGUInt maxLen);
HGResult SetEntryNameCnStr(const HGChar* entryName, const HGChar* entryNameCnStr);
HGResult OpenDevice(const HGChar* sn, class HGPdtToolDbDeviceImpl **deviceImpl); HGResult OpenDevice(const HGChar* sn, class HGPdtToolDbDeviceImpl **deviceImpl);
private: private:
@ -45,24 +47,14 @@ private:
static int GetConnectId(MYSQL* sql); static int GetConnectId(MYSQL* sql);
static int SetUserLoginInfo(MYSQL* sql, const HGChar* userName, int connectId, const std::string& takeUserName); static int SetUserLoginInfo(MYSQL* sql, const HGChar* userName, int connectId, const std::string& takeUserName);
static int GetUserLoginInfo(MYSQL* sql, const HGChar* userName, int &connectId, std::string &takeUserName); static int GetUserLoginInfo(MYSQL* sql, const HGChar* userName, int &connectId, std::string &takeUserName);
static HGUInt GetCols(MYSQL* sql, const HGChar *tableName, std::list<std::string> &cols);
int CreateFileTable(MYSQL* sql); int CreateFileTable(MYSQL* sql);
int CreateEntryNameCnStrTable(MYSQL* sql);
int CreateMainTestTable(MYSQL *sql); int CreateMainTestTable(MYSQL *sql);
// init tables int CreateInspectionTable(MYSQL* sql, const HGChar* tableName);
int CreateInitInspTestTable(MYSQL* sql);
int CreateInitInspDescTable(MYSQL* sql);
int CreateInitInspImageTable(MYSQL* sql);
// image tables
int CreateImgInspTestTable(MYSQL* sql);
int CreateImgInspDescTable(MYSQL* sql);
int CreateImgInspImageTable(MYSQL* sql);
// pre tables
int CreatePreInspTestTable(MYSQL* sql);
int CreatePreInspDescTable(MYSQL* sql);
int CreatePreInspImageTable(MYSQL* sql);
int InitMainTestItem(const HGChar *sn); int InitMainTestItem(const HGChar *sn);
int InitInspTestItem(const HGChar* tableName, const HGChar* sn); int InitInspectionItem(const HGChar* tableName, const HGChar* sn);
private: private:
MYSQL* m_sql; MYSQL* m_sql;
@ -84,25 +76,19 @@ public:
HGResult SetType(const HGChar* type); HGResult SetType(const HGChar* type);
HGResult GetVersion(HGChar* version, HGUInt maxLen); HGResult GetVersion(HGChar* version, HGUInt maxLen);
HGResult SetVersion(const HGChar* version); HGResult SetVersion(const HGChar* version);
HGResult GetCurrEntry(HGUInt* entryName);
HGResult SetCurrEntry(HGUInt entryName);
HGResult GetEntryStatus(HGUInt entryName, HGUInt* entryStatus); HGResult GetEntryStatus(const HGChar* entryName, HGUInt* entryStatus);
HGResult SetEntryStatus(HGUInt entryName, HGUInt entryStatus); HGResult SetEntryStatus(const HGChar* entryName, HGUInt entryStatus);
HGResult GetEntryExcepDesc(HGUInt entryName, HGChar* excepDesc, HGUInt maxLen); HGResult GetEntryExcepDesc(const HGChar* entryName, HGChar* excepDesc, HGUInt maxLen);
HGResult SetEntryExcepDesc(HGUInt entryName, const HGChar* excepDesc); HGResult SetEntryExcepDesc(const HGChar* entryName, const HGChar* excepDesc);
HGResult DownloadEntryImage(HGUInt entryName, const HGChar *ftpHost, HGUShort ftpPort, const HGChar* fileName); HGResult DownloadEntryImage(const HGChar* entryName, const HGChar *ftpHost, HGUShort ftpPort, HGUInt index, const HGChar* fileName);
HGResult CheckEntryImage(HGUInt entryName); HGResult GetEntryImageCount(const HGChar* entryName, HGUInt *count);
HGResult UploadEntryImage(HGUInt entryName, const HGChar* ftpHost, HGUShort ftpPort, const HGChar *fileName); HGResult ClearEntryImage(const HGChar* entryName);
HGResult UploadEntryImage(const HGChar* entryName, const HGChar* ftpHost, HGUShort ftpPort, const HGChar *fileName);
private: private:
HGResult GetProperty(const HGChar *prop, HGChar* str, HGUInt maxLen); HGResult GetProperty(const HGChar *prop, HGChar* str, HGUInt maxLen);
HGResult SetProperty(const HGChar* prop, const HGChar* str); HGResult SetProperty(const HGChar* prop, const HGChar* str);
const HGChar* GetEntryNameStr(HGUInt entryName);
const HGChar* GetTestTableName(HGUInt entryName);
const HGChar* GetDescTableName(HGUInt entryName);
const HGChar* GetImageTableName(HGUInt entryName);
HGResult GetEntryImageRemotePath(const HGChar *tableName, const HGChar *entryNameStr, std::string &remotePath);
private: private:
// FTP // FTP

View File

@ -1,6 +1,21 @@
#include "base/HGDef.h" #include "base/HGDef.h"
#include "base/HGInc.h" #include "base/HGInc.h"
#include "../HGPdtToolDb/HGPdtToolDb.h" #include "../HGPdtToolDb/HGPdtToolDb.h"
#include <string>
static std::string AnsiToUtf8(const char* text)
{
int wlen = ::MultiByteToWideChar(CP_ACP, 0, text, -1, NULL, 0);
WCHAR* pUnicode = new WCHAR[wlen];
::MultiByteToWideChar(CP_ACP, 0, text, -1, pUnicode, wlen);
int len = ::WideCharToMultiByte(CP_UTF8, 0, pUnicode, -1, NULL, 0, NULL, NULL);
CHAR* pUTF8 = new CHAR[len];
::WideCharToMultiByte(CP_UTF8, 0, pUnicode, -1, pUTF8, len, NULL, NULL);
delete[] pUnicode;
std::string ret = pUTF8;
delete[] pUTF8;
return ret;
}
int main() int main()
{ {
@ -11,10 +26,14 @@ int main()
//HGPdtToolDb_UploadFile(userMgr, "G100", "D:\\config.json"); //HGPdtToolDb_UploadFile(userMgr, "G100", "D:\\config.json");
//HGPdtToolDb_DownloadFile(userMgr, "G100", "D:\\123.txt"); //HGPdtToolDb_DownloadFile(userMgr, "G100", "D:\\123.txt");
std::string str = AnsiToUtf8("图像质量");
HGPdtToolDb_SetEntryNameCnStr(userMgr, "image_quality", str.c_str());
HGPdtToolDbDevice device = NULL; HGPdtToolDbDevice device = NULL;
HGPdtToolDb_OpenDevice(userMgr, "G654321", &device); HGPdtToolDb_OpenDevice(userMgr, "G654321", &device);
HGPdtToolDb_UploadDeviceEntryImage(device, HGPDTTOOLDB_ENTRYNAME_IMAGE_QUALITY, "192.168.1.70", 21, "D:\\1.jpg"); HGPdtToolDb_SetDeviceEntryStatus(device, "image_quality", 1);
HGPdtToolDb_DownloadDeviceEntryImage(device, HGPDTTOOLDB_ENTRYNAME_IMAGE_QUALITY, "192.168.1.70", 21, "D:\\22.jpg"); HGPdtToolDb_UploadDeviceEntryImage(device, "image_quality", "192.168.1.70", 21, "D:\\1.jpg");
HGPdtToolDb_DownloadDeviceEntryImage(device, "image_quality", "192.168.1.70", 21, 0, "D:\\22.jpg");
//HGPdtToolDb_CloseDevice(device); //HGPdtToolDb_CloseDevice(device);
HGPdtToolDb_Export(userMgr, "D:\\1.xls"); HGPdtToolDb_Export(userMgr, "D:\\1.xls");