调试绑定文件夹的功能,可以调整输出文件的命名方式
This commit is contained in:
parent
ba76ed3c09
commit
a8bed1c462
Binary file not shown.
|
@ -147,6 +147,8 @@ namespace ver_2
|
||||||
|
|
||||||
m_bindFolder.clear();
|
m_bindFolder.clear();
|
||||||
m_bindNameMode.clear();
|
m_bindNameMode.clear();
|
||||||
|
m_bindNameWidth = 0;
|
||||||
|
m_bindNameBase = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ManagerV2::~ManagerV2()
|
ManagerV2::~ManagerV2()
|
||||||
|
@ -1131,7 +1133,7 @@ namespace ver_2
|
||||||
m_currBatchId = batchId;
|
m_currBatchId = batchId;
|
||||||
if (!m_bindFolder.empty())
|
if (!m_bindFolder.empty())
|
||||||
{
|
{
|
||||||
ClearBindFolderImageList();
|
ClearBindFolder();
|
||||||
UpdateBindFolder();
|
UpdateBindFolder();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1190,7 +1192,7 @@ namespace ver_2
|
||||||
m_currBatchId = batchId;
|
m_currBatchId = batchId;
|
||||||
if (!m_bindFolder.empty())
|
if (!m_bindFolder.empty())
|
||||||
{
|
{
|
||||||
ClearBindFolderImageList();
|
ClearBindFolder();
|
||||||
UpdateBindFolder();
|
UpdateBindFolder();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1236,12 +1238,12 @@ namespace ver_2
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int ManagerV2::BindFolder(const std::string& folder, const std::string& nameMode, std::string& errInfo)
|
int ManagerV2::BindFolder(const std::string& folder, const std::string& nameMode, int nameWidth, int nameBase, std::string& errInfo)
|
||||||
{
|
{
|
||||||
errInfo = "错误";
|
errInfo = "错误";
|
||||||
if (folder.empty())
|
if (folder.empty())
|
||||||
return -1;
|
return -1;
|
||||||
if ("index" != nameMode)
|
if ("order" != nameMode || nameWidth <= 0 || nameBase < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
// 需要保证文件夹为空??
|
// 需要保证文件夹为空??
|
||||||
|
@ -1255,8 +1257,10 @@ namespace ver_2
|
||||||
HGBase_StandardiseFileName(m_bindFolder.c_str(), stdBindFolder, 256);
|
HGBase_StandardiseFileName(m_bindFolder.c_str(), stdBindFolder, 256);
|
||||||
m_bindFolder = stdBindFolder;
|
m_bindFolder = stdBindFolder;
|
||||||
m_bindNameMode = nameMode;
|
m_bindNameMode = nameMode;
|
||||||
|
m_bindNameWidth = nameWidth;
|
||||||
|
m_bindNameBase = nameBase;
|
||||||
|
|
||||||
ClearBindFolderImageList();
|
ClearBindFolder();
|
||||||
UpdateBindFolder();
|
UpdateBindFolder();
|
||||||
|
|
||||||
errInfo.clear();
|
errInfo.clear();
|
||||||
|
@ -1272,6 +1276,8 @@ namespace ver_2
|
||||||
|
|
||||||
m_bindFolder.clear();
|
m_bindFolder.clear();
|
||||||
m_bindNameMode.clear();
|
m_bindNameMode.clear();
|
||||||
|
m_bindNameWidth = 0;
|
||||||
|
m_bindNameBase = 0;
|
||||||
errInfo.clear();
|
errInfo.clear();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1779,6 +1785,9 @@ namespace ver_2
|
||||||
if (NULL == m_sqlite)
|
if (NULL == m_sqlite)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
std::vector<BatchTableInfo> tables;
|
||||||
|
GetBatchTableInfo(tables);
|
||||||
|
|
||||||
char sql[256];
|
char sql[256];
|
||||||
sprintf(sql, "delete from 'table_%s'", m_currBatchId.c_str());
|
sprintf(sql, "delete from 'table_%s'", m_currBatchId.c_str());
|
||||||
int ret = sqlite3_exec(m_sqlite, sql, NULL, NULL, NULL);
|
int ret = sqlite3_exec(m_sqlite, sql, NULL, NULL, NULL);
|
||||||
|
@ -1786,7 +1795,7 @@ namespace ver_2
|
||||||
|
|
||||||
if (!m_bindFolder.empty())
|
if (!m_bindFolder.empty())
|
||||||
{
|
{
|
||||||
ClearBindFolderImageList();
|
ClearBindFolderImageList(tables);
|
||||||
}
|
}
|
||||||
|
|
||||||
errInfo.clear();
|
errInfo.clear();
|
||||||
|
@ -2055,13 +2064,7 @@ namespace ver_2
|
||||||
|
|
||||||
if (!m_bindFolder.empty())
|
if (!m_bindFolder.empty())
|
||||||
{
|
{
|
||||||
for (int i = 0; i < (int)tables.size(); ++i)
|
ClearBindFolderImageList(tables);
|
||||||
{
|
|
||||||
char fileName[256];
|
|
||||||
sprintf(fileName, "%s%d.%s", m_bindFolder.c_str(), tables[i].idx, tables[i].format.c_str());
|
|
||||||
HGBase_DeleteFile(fileName);
|
|
||||||
}
|
|
||||||
|
|
||||||
UpdateBindFolder();
|
UpdateBindFolder();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2157,13 +2160,7 @@ namespace ver_2
|
||||||
|
|
||||||
if (!m_bindFolder.empty())
|
if (!m_bindFolder.empty())
|
||||||
{
|
{
|
||||||
for (int i = 0; i < (int)tables.size(); ++i)
|
ClearBindFolderImageList(tables);
|
||||||
{
|
|
||||||
char fileName[256];
|
|
||||||
sprintf(fileName, "%s%d.%s", m_bindFolder.c_str(), tables[i].idx, tables[i].format.c_str());
|
|
||||||
HGBase_DeleteFile(fileName);
|
|
||||||
}
|
|
||||||
|
|
||||||
UpdateBindFolder();
|
UpdateBindFolder();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3424,6 +3421,32 @@ namespace ver_2
|
||||||
std::sort(tables.begin(), tables.end(), BatchTableSort);
|
std::sort(tables.begin(), tables.end(), BatchTableSort);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ManagerV2::ClearBindFolder()
|
||||||
|
{
|
||||||
|
assert(!m_bindFolder.empty());
|
||||||
|
|
||||||
|
char szFind[MAX_PATH];
|
||||||
|
sprintf(szFind, "%s*.*", m_bindFolder.c_str());
|
||||||
|
|
||||||
|
WIN32_FIND_DATAA FindFileData;
|
||||||
|
HANDLE hFind = FindFirstFileA(szFind, &FindFileData);
|
||||||
|
if (INVALID_HANDLE_VALUE == hFind)
|
||||||
|
return;
|
||||||
|
|
||||||
|
do
|
||||||
|
{
|
||||||
|
if (0 == (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
|
||||||
|
{
|
||||||
|
char fileName[MAX_PATH];
|
||||||
|
sprintf(fileName, "%s%s", m_bindFolder.c_str(), FindFileData.cFileName);
|
||||||
|
HGBase_DeleteFile(fileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
} while (FindNextFileA(hFind, &FindFileData));
|
||||||
|
|
||||||
|
FindClose(hFind);
|
||||||
|
}
|
||||||
|
|
||||||
void ManagerV2::UpdateBindFolder()
|
void ManagerV2::UpdateBindFolder()
|
||||||
{
|
{
|
||||||
assert(!m_bindFolder.empty());
|
assert(!m_bindFolder.empty());
|
||||||
|
@ -3445,8 +3468,10 @@ namespace ver_2
|
||||||
const void* imgData = sqlite3_column_blob(stmt, 4);
|
const void* imgData = sqlite3_column_blob(stmt, 4);
|
||||||
int imgSize = sqlite3_column_bytes(stmt, 4);
|
int imgSize = sqlite3_column_bytes(stmt, 4);
|
||||||
|
|
||||||
|
char fmt[24];
|
||||||
|
sprintf(fmt, "%%s%%0%dd.%%s", m_bindNameWidth);
|
||||||
char imagePath[256];
|
char imagePath[256];
|
||||||
sprintf(imagePath, "%s%d.%s", m_bindFolder.c_str(), idx, imgFmt.c_str());
|
sprintf(imagePath, fmt, m_bindFolder.c_str(), m_bindNameBase + idx, imgFmt.c_str());
|
||||||
HGBase_CreateDir(m_bindFolder.c_str());
|
HGBase_CreateDir(m_bindFolder.c_str());
|
||||||
SaveToFile((const HGByte*)imgData, imgSize, imagePath);
|
SaveToFile((const HGByte*)imgData, imgSize, imagePath);
|
||||||
|
|
||||||
|
@ -3462,20 +3487,23 @@ namespace ver_2
|
||||||
{
|
{
|
||||||
assert(!m_bindFolder.empty());
|
assert(!m_bindFolder.empty());
|
||||||
|
|
||||||
|
char fmt[24];
|
||||||
|
sprintf(fmt, "%%s%%0%dd.%%s", m_bindNameWidth);
|
||||||
|
|
||||||
for (int i = (int)tables.size() - 1; i >= 0; --i)
|
for (int i = (int)tables.size() - 1; i >= 0; --i)
|
||||||
{
|
{
|
||||||
if (tables[i].idx >= insertPos)
|
if (tables[i].idx >= insertPos)
|
||||||
{
|
{
|
||||||
char fileName[256];
|
char fileName[256];
|
||||||
sprintf(fileName, "%s%d.%s", m_bindFolder.c_str(), tables[i].idx, tables[i].format.c_str());
|
sprintf(fileName, fmt, m_bindFolder.c_str(), m_bindNameBase + tables[i].idx, tables[i].format.c_str());
|
||||||
char destName[256];
|
char destName[256];
|
||||||
sprintf(destName, "%s%d.%s", m_bindFolder.c_str(), tables[i].idx + 1, tables[i].format.c_str());
|
sprintf(destName, fmt, m_bindFolder.c_str(), m_bindNameBase + tables[i].idx + 1, tables[i].format.c_str());
|
||||||
MoveFileA(fileName, destName);
|
MoveFileA(fileName, destName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
char fileName[256];
|
char fileName[256];
|
||||||
sprintf(fileName, "%s%d.%s", m_bindFolder.c_str(), insertPos, imgFmt.c_str());
|
sprintf(fileName, fmt, m_bindFolder.c_str(), m_bindNameBase + insertPos, imgFmt.c_str());
|
||||||
SaveToFile(imgData, imgSize, fileName);
|
SaveToFile(imgData, imgSize, fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3484,6 +3512,9 @@ namespace ver_2
|
||||||
{
|
{
|
||||||
assert(!m_bindFolder.empty());
|
assert(!m_bindFolder.empty());
|
||||||
|
|
||||||
|
char fmt[24];
|
||||||
|
sprintf(fmt, "%%s%%0%dd.%%s", m_bindNameWidth);
|
||||||
|
|
||||||
std::string oldFormat;
|
std::string oldFormat;
|
||||||
for (int i = 0; i < (int)tables.size(); ++i)
|
for (int i = 0; i < (int)tables.size(); ++i)
|
||||||
{
|
{
|
||||||
|
@ -3495,11 +3526,11 @@ namespace ver_2
|
||||||
}
|
}
|
||||||
|
|
||||||
char oldFileName[256];
|
char oldFileName[256];
|
||||||
sprintf(oldFileName, "%s%d.%s", m_bindFolder.c_str(), imageIndex, oldFormat.c_str());
|
sprintf(oldFileName, fmt, m_bindFolder.c_str(), m_bindNameBase + imageIndex, oldFormat.c_str());
|
||||||
HGBase_DeleteFile(oldFileName);
|
HGBase_DeleteFile(oldFileName);
|
||||||
|
|
||||||
char fileName[256];
|
char fileName[256];
|
||||||
sprintf(fileName, "%s%d.%s", m_bindFolder.c_str(), imageIndex, imgFmt.c_str());
|
sprintf(fileName, fmt, m_bindFolder.c_str(), m_bindNameBase + imageIndex, imgFmt.c_str());
|
||||||
SaveToFile(imgData, imgSize, fileName);
|
SaveToFile(imgData, imgSize, fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3507,6 +3538,9 @@ namespace ver_2
|
||||||
{
|
{
|
||||||
assert(!m_bindFolder.empty());
|
assert(!m_bindFolder.empty());
|
||||||
|
|
||||||
|
char fmt[24];
|
||||||
|
sprintf(fmt, "%%s%%0%dd.%%s", m_bindNameWidth);
|
||||||
|
|
||||||
for (int i = 0; i < (int)imageIndexList.size(); ++i)
|
for (int i = 0; i < (int)imageIndexList.size(); ++i)
|
||||||
{
|
{
|
||||||
for (int j = 0; j < (int)tables.size(); ++j)
|
for (int j = 0; j < (int)tables.size(); ++j)
|
||||||
|
@ -3514,7 +3548,7 @@ namespace ver_2
|
||||||
if (tables[j].idx == imageIndexList[i])
|
if (tables[j].idx == imageIndexList[i])
|
||||||
{
|
{
|
||||||
char fileName[256];
|
char fileName[256];
|
||||||
sprintf(fileName, "%s%d.%s", m_bindFolder.c_str(), tables[j].idx, tables[j].format.c_str());
|
sprintf(fileName, fmt, m_bindFolder.c_str(), m_bindNameBase + tables[j].idx, tables[j].format.c_str());
|
||||||
HGBase_DeleteFile(fileName);
|
HGBase_DeleteFile(fileName);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3543,9 +3577,9 @@ namespace ver_2
|
||||||
if (value > 0)
|
if (value > 0)
|
||||||
{
|
{
|
||||||
char fileName[256];
|
char fileName[256];
|
||||||
sprintf(fileName, "%s%d.%s", m_bindFolder.c_str(), tables[i].idx, tables[i].format.c_str());
|
sprintf(fileName, fmt, m_bindFolder.c_str(), m_bindNameBase + tables[i].idx, tables[i].format.c_str());
|
||||||
char destName[256];
|
char destName[256];
|
||||||
sprintf(destName, "%s%d.%s", m_bindFolder.c_str(), tables[i].idx - value, tables[i].format.c_str());
|
sprintf(destName, fmt, m_bindFolder.c_str(), m_bindNameBase + tables[i].idx - value, tables[i].format.c_str());
|
||||||
MoveFileA(fileName, destName);
|
MoveFileA(fileName, destName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3556,6 +3590,9 @@ namespace ver_2
|
||||||
{
|
{
|
||||||
assert(!m_bindFolder.empty());
|
assert(!m_bindFolder.empty());
|
||||||
|
|
||||||
|
char fmt[24];
|
||||||
|
sprintf(fmt, "%%s%%0%dd.%%s", m_bindNameWidth);
|
||||||
|
|
||||||
std::string format1, format2;
|
std::string format1, format2;
|
||||||
|
|
||||||
for (int i = 0; i < (int)tables.size(); ++i)
|
for (int i = 0; i < (int)tables.size(); ++i)
|
||||||
|
@ -3567,46 +3604,35 @@ namespace ver_2
|
||||||
}
|
}
|
||||||
|
|
||||||
char fileName1[256];
|
char fileName1[256];
|
||||||
sprintf(fileName1, "%s%d.%s", m_bindFolder.c_str(), imageIndex1, format1.c_str());
|
sprintf(fileName1, fmt, m_bindFolder.c_str(), m_bindNameBase + imageIndex1, format1.c_str());
|
||||||
char TmpFileName[256];
|
char TmpFileName[256];
|
||||||
sprintf(TmpFileName, "%sTemp", m_bindFolder.c_str());
|
sprintf(TmpFileName, "%sTemp", m_bindFolder.c_str());
|
||||||
MoveFileA(fileName1, TmpFileName);
|
MoveFileA(fileName1, TmpFileName);
|
||||||
|
|
||||||
char fileName2[256];
|
char fileName2[256];
|
||||||
sprintf(fileName2, "%s%d.%s", m_bindFolder.c_str(), imageIndex2, format2.c_str());
|
sprintf(fileName2, fmt, m_bindFolder.c_str(), m_bindNameBase + imageIndex2, format2.c_str());
|
||||||
char fileName2Dest[256];
|
char fileName2Dest[256];
|
||||||
sprintf(fileName2Dest, "%s%d.%s", m_bindFolder.c_str(), imageIndex1, format2.c_str());
|
sprintf(fileName2Dest, fmt, m_bindFolder.c_str(), m_bindNameBase + imageIndex1, format2.c_str());
|
||||||
MoveFileA(fileName2, fileName2Dest);
|
MoveFileA(fileName2, fileName2Dest);
|
||||||
|
|
||||||
char fileName1Dest[256];
|
char fileName1Dest[256];
|
||||||
sprintf(fileName1Dest, "%s%d.%s", m_bindFolder.c_str(), imageIndex2, format1.c_str());
|
sprintf(fileName1Dest, fmt, m_bindFolder.c_str(), m_bindNameBase + imageIndex2, format1.c_str());
|
||||||
MoveFileA(TmpFileName, fileName1Dest);
|
MoveFileA(TmpFileName, fileName1Dest);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ManagerV2::ClearBindFolderImageList()
|
void ManagerV2::ClearBindFolderImageList(const std::vector<BatchTableInfo>& tables)
|
||||||
{
|
{
|
||||||
assert(!m_bindFolder.empty());
|
assert(!m_bindFolder.empty());
|
||||||
|
|
||||||
char szFind[MAX_PATH];
|
char fmt[24];
|
||||||
sprintf(szFind, "%s*.*", m_bindFolder.c_str());
|
sprintf(fmt, "%%s%%0%dd.%%s", m_bindNameWidth);
|
||||||
|
|
||||||
WIN32_FIND_DATAA FindFileData;
|
for (int i = 0; i < (int)tables.size(); ++i)
|
||||||
HANDLE hFind = FindFirstFileA(szFind, &FindFileData);
|
|
||||||
if (INVALID_HANDLE_VALUE == hFind)
|
|
||||||
return;
|
|
||||||
|
|
||||||
do
|
|
||||||
{
|
{
|
||||||
if (0 == (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
|
char fileName[256];
|
||||||
{
|
sprintf(fileName, fmt, m_bindFolder.c_str(), m_bindNameBase + tables[i].idx, tables[i].format.c_str());
|
||||||
char fileName[MAX_PATH];
|
HGBase_DeleteFile(fileName);
|
||||||
sprintf(fileName, "%s%s", m_bindFolder.c_str(), FindFileData.cFileName);
|
}
|
||||||
HGBase_DeleteFile(fileName);
|
|
||||||
}
|
|
||||||
|
|
||||||
} while (FindNextFileA(hFind, &FindFileData));
|
|
||||||
|
|
||||||
FindClose(hFind);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int ManagerV2::sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param)
|
int ManagerV2::sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param)
|
||||||
|
|
|
@ -270,7 +270,7 @@ namespace ver_2
|
||||||
// 修改批次号
|
// 修改批次号
|
||||||
int ModifyBatchId(const std::string& batchId, const std::string& newBatchId, std::string& errInfo);
|
int ModifyBatchId(const std::string& batchId, const std::string& newBatchId, std::string& errInfo);
|
||||||
// 绑定文件夹
|
// 绑定文件夹
|
||||||
int BindFolder(const std::string &folder, const std::string &nameMode, std::string& errInfo);
|
int BindFolder(const std::string &folder, const std::string &nameMode, int nameWidth, int nameBase, std::string& errInfo);
|
||||||
// 停止绑定文件夹
|
// 停止绑定文件夹
|
||||||
int StopBindFolder(std::string& errInfo);
|
int StopBindFolder(std::string& errInfo);
|
||||||
// 加载图像缩略图列表
|
// 加载图像缩略图列表
|
||||||
|
@ -350,6 +350,7 @@ namespace ver_2
|
||||||
static bool SaveToBase64(const HGByte* data, HGUInt size, std::string& base64);
|
static bool SaveToBase64(const HGByte* data, HGUInt size, std::string& base64);
|
||||||
static bool SaveToFile(const HGByte* data, HGUInt size, const std::string &filePath);
|
static bool SaveToFile(const HGByte* data, HGUInt size, const std::string &filePath);
|
||||||
void GetBatchTableInfo(std::vector<BatchTableInfo>& tables);
|
void GetBatchTableInfo(std::vector<BatchTableInfo>& tables);
|
||||||
|
void ClearBindFolder();
|
||||||
void UpdateBindFolder();
|
void UpdateBindFolder();
|
||||||
void InsertBindFolderImage(const std::vector<BatchTableInfo>& tables, int insertPos, const std::string imgFmt,
|
void InsertBindFolderImage(const std::vector<BatchTableInfo>& tables, int insertPos, const std::string imgFmt,
|
||||||
const HGByte *imgData, HGUInt imgSize);
|
const HGByte *imgData, HGUInt imgSize);
|
||||||
|
@ -357,7 +358,7 @@ namespace ver_2
|
||||||
const HGByte* imgData, HGUInt imgSize);
|
const HGByte* imgData, HGUInt imgSize);
|
||||||
void DeleteBindFolderImage(const std::vector<BatchTableInfo>& tables, const std::vector<int>& imageIndexList);
|
void DeleteBindFolderImage(const std::vector<BatchTableInfo>& tables, const std::vector<int>& imageIndexList);
|
||||||
void ExchangeBindFolderImage(const std::vector<BatchTableInfo>& tables, int imageIndex1, int imageIndex2);
|
void ExchangeBindFolderImage(const std::vector<BatchTableInfo>& tables, int imageIndex1, int imageIndex2);
|
||||||
void ClearBindFolderImageList();
|
void ClearBindFolderImageList(const std::vector<BatchTableInfo>& tables);
|
||||||
|
|
||||||
static int sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param);
|
static int sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param);
|
||||||
|
|
||||||
|
@ -384,5 +385,7 @@ namespace ver_2
|
||||||
std::string m_currBatchId;
|
std::string m_currBatchId;
|
||||||
std::string m_bindFolder;
|
std::string m_bindFolder;
|
||||||
std::string m_bindNameMode;
|
std::string m_bindNameMode;
|
||||||
|
int m_bindNameWidth;
|
||||||
|
int m_bindNameBase;
|
||||||
};
|
};
|
||||||
}
|
}
|
|
@ -1693,7 +1693,7 @@ namespace ver_2
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
char resp[1024] = { 0 };
|
char* resp = new char[1024 + outZipBase64.size()];
|
||||||
if (0 != ret)
|
if (0 != ret)
|
||||||
{
|
{
|
||||||
if (findIden)
|
if (findIden)
|
||||||
|
@ -1722,6 +1722,7 @@ namespace ver_2
|
||||||
}
|
}
|
||||||
|
|
||||||
SendResponse((const HGByte*)resp, (HGUInt)strlen(resp), HGTRUE);
|
SendResponse((const HGByte*)resp, (HGUInt)strlen(resp), HGTRUE);
|
||||||
|
delete[] resp;
|
||||||
}
|
}
|
||||||
|
|
||||||
void WSUser::LocalImageDeskew(cJSON* json)
|
void WSUser::LocalImageDeskew(cJSON* json)
|
||||||
|
@ -2829,10 +2830,18 @@ namespace ver_2
|
||||||
bool find = false;
|
bool find = false;
|
||||||
std::string nameMode = GetJsonStringValue(json, "name_mode");
|
std::string nameMode = GetJsonStringValue(json, "name_mode");
|
||||||
if (!find)
|
if (!find)
|
||||||
nameMode = "index";
|
nameMode = "order";
|
||||||
|
|
||||||
|
int nameWidth = GetJsonIntValue(json, "name_width", &find);
|
||||||
|
if (!find)
|
||||||
|
nameWidth = 1;
|
||||||
|
|
||||||
|
int nameBase = GetJsonIntValue(json, "name_base", &find);
|
||||||
|
if (!find)
|
||||||
|
nameBase = 0;
|
||||||
|
|
||||||
std::string errInfo;
|
std::string errInfo;
|
||||||
int ret = GetManager()->BindFolder(folder, nameMode, errInfo);
|
int ret = GetManager()->BindFolder(folder, nameMode, nameWidth, nameBase, errInfo);
|
||||||
|
|
||||||
bool findIden = false;
|
bool findIden = false;
|
||||||
std::string iden = GetJsonStringValue(json, "iden", &findIden);
|
std::string iden = GetJsonStringValue(json, "iden", &findIden);
|
||||||
|
@ -3917,7 +3926,7 @@ namespace ver_2
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
char resp[1024] = { 0 };
|
char* resp = new char[1024 + outZipBase64.size()];
|
||||||
if (0 != ret)
|
if (0 != ret)
|
||||||
{
|
{
|
||||||
if (findIden)
|
if (findIden)
|
||||||
|
@ -3946,6 +3955,7 @@ namespace ver_2
|
||||||
}
|
}
|
||||||
|
|
||||||
SendResponse((const HGByte*)resp, (HGUInt)strlen(resp), HGTRUE);
|
SendResponse((const HGByte*)resp, (HGUInt)strlen(resp), HGTRUE);
|
||||||
|
delete[] resp;
|
||||||
}
|
}
|
||||||
|
|
||||||
void WSUser::ImageDeskew(cJSON* json)
|
void WSUser::ImageDeskew(cJSON* json)
|
||||||
|
|
|
@ -340,7 +340,8 @@
|
||||||
{
|
{
|
||||||
socket.send(JSON.stringify({
|
socket.send(JSON.stringify({
|
||||||
'func':'local_make_zip_file',
|
'func':'local_make_zip_file',
|
||||||
'file_path_list':['D:\\1.jpg','D:\\2.jpg']
|
'file_path_list':['D:\\1.jpg','D:\\2.jpg'],
|
||||||
|
'get_base64':true
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -485,7 +486,9 @@
|
||||||
{
|
{
|
||||||
socket.send(JSON.stringify({
|
socket.send(JSON.stringify({
|
||||||
'func':'bind_folder',
|
'func':'bind_folder',
|
||||||
'folder':'D:\\111'
|
'folder':'D:\\111',
|
||||||
|
'name_width':1,
|
||||||
|
'name_base':20
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -596,7 +599,7 @@
|
||||||
{
|
{
|
||||||
socket.send(JSON.stringify({
|
socket.send(JSON.stringify({
|
||||||
'func':'merge_image',
|
'func':'merge_image',
|
||||||
'image_index_list':[0, 1, 2],
|
'image_index_list':[0, 1],
|
||||||
'mode':'horz',
|
'mode':'horz',
|
||||||
'align':'center',
|
'align':'center',
|
||||||
'interval':20,
|
'interval':20,
|
||||||
|
@ -608,7 +611,7 @@
|
||||||
{
|
{
|
||||||
socket.send(JSON.stringify({
|
socket.send(JSON.stringify({
|
||||||
'func':'make_multi_image',
|
'func':'make_multi_image',
|
||||||
'image_index_list':[0, 1, 2],
|
'image_index_list':[0, 1],
|
||||||
'format':'tif',
|
'format':'tif',
|
||||||
'tiff_compression':'jpeg',
|
'tiff_compression':'jpeg',
|
||||||
'tiff_jpeg_quality':60,
|
'tiff_jpeg_quality':60,
|
||||||
|
@ -631,7 +634,8 @@
|
||||||
{
|
{
|
||||||
socket.send(JSON.stringify({
|
socket.send(JSON.stringify({
|
||||||
'func':'make_zip_file',
|
'func':'make_zip_file',
|
||||||
'image_index_list':[0, 1, 2]
|
'image_index_list':[0, 1],
|
||||||
|
'get_base64':true
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue