Browse Source

update

master
zhaohe 1 year ago
parent
commit
a7896c8a95
  1. 16
      service/data_export_service.cpp
  2. 4
      service/disinfection_logs_manager.cpp

16
service/data_export_service.cpp

@ -57,6 +57,8 @@ static string getTime() {
if (!x) { \
return err::ksys_copy_file_error; \
}
#define EXPORT_PATH "/mnt/exportdata/Transmit/"
err::error_t DataExportService::exportDisinfectionData(vector<string> files) {
lock_guard<mutex> lock(lock_);
@ -74,11 +76,18 @@ err::error_t DataExportService::exportDisinfectionData(vector<string> files) {
IF_ERROR_RETURN(dosystem(fmt::format("mount {} /mnt/exportdata", diskpath)));
// 拷贝文件
// IF_ERROR_RETURN(dosystem(fmt::format("cp -rf /app/disinfection_logs /mnt/exportdata/disinfection_logs{}", getTime())));
IF_ERROR_RETURN(dosystem(fmt::format("mkdir -p /mnt/exportdata/disinfection_logs/")));
IF_ERROR_RETURN(dosystem(fmt::format("mkdir -p {}", EXPORT_PATH)));
for (auto& file : files) {
logger->info("copy file: {}", file);
IF_ERROR_RETURN(dosystem(fmt::format("cp -rf /app/disinfection_logs/{} /mnt/exportdata/disinfection_logs/", file)));
// 拷贝文件到TMP目录
IF_ERROR_RETURN(dosystem(fmt::format("cp -rf /app/disinfection_logs/{}.csv /tmp/{}.csv", file, file)));
// 编码转换
IF_ERROR_RETURN(dosystem(fmt::format("iconv -f UTF-8 -tgb18030 /tmp/{}.csv -o /tmp/{}.csv.1", file, file)));
// 移动文件
IF_ERROR_RETURN(dosystem(fmt::format("mv /tmp/{}.csv.1 /tmp/{}.csv", file, file)));
// 拷贝文件到U盘
IF_ERROR_RETURN(dosystem(fmt::format("cp -rf /tmp/{}.csv {}", file, EXPORT_PATH)));
}
// 卸载目录
@ -130,7 +139,8 @@ err::error_t DataExportService::exportAuditData() {
// 挂载目录
IF_ERROR_RETURN(dosystem(fmt::format("mount {} /mnt/exportdata", diskpath)));
// 拷贝文件
IF_ERROR_RETURN(dosystem(fmt::format("cp -rf {} /mnt/exportdata", filename)));
IF_ERROR_RETURN(dosystem(fmt::format("mkdir -p /mnt/exportdata/Transmit/")));
IF_ERROR_RETURN(dosystem(fmt::format("cp -rf {} /mnt/exportdata/Transmit/", filename)));
// 卸载目录
IF_ERROR_RETURN(dosystem(fmt::format("umount /mnt/exportdata")));
// 删除目录

4
service/disinfection_logs_manager.cpp

@ -108,6 +108,10 @@ void DisinfectionLogsManager::list_dir_csvfile(string path, vector<string>& sv)
sort(files.begin(), files.end(), [](string a, string b) { return a > b; });
for (auto& file : files) {
sv.push_back(file);
}
return;
}

Loading…
Cancel
Save