From 1f16245b4b4fc36c519e7afc9fd9cf828f25199d Mon Sep 17 00:00:00 2001 From: chenshijun <csj_sky@126.com> Date: 星期四, 28 二月 2019 20:06:35 +0800 Subject: [PATCH] 修改新增摄像机获取底图问题 解码两次问题 --- QiaoJiaSystem/DataManagerServer/http_configserver.cpp | 92 +++++++++++++++++++++++++++++++++++++--------- 1 files changed, 74 insertions(+), 18 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp index 4c2e5ef..260c97a 100644 --- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp +++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp @@ -1060,6 +1060,7 @@ rec.str_username = QString::fromStdString(value["str_username"].asString()); rec.str_password = QString::fromStdString(value["str_password"].asString()); rec.str_brand = QString::fromStdString(value["str_brand"].asString()); + rec.str_reserved = QString::fromStdString(value["str_reserved"].asString()); type = value["n_type"].asInt(); // rec_sdk_old = db_c.searchCamSdkTableByCamId(rec.str_cam_dev_id); @@ -1859,8 +1860,7 @@ } std::string devHttpServer_c::createDatabase(std::string ip, unsigned int port, std::string content, - PResponse &response) { - DBG("ip:" << ip << "; port:" << port); + PResponse &response) { DBG("ip:" << ip << "; port:" << port); DBG("content: " << content); if (erlangDbTool == nullptr) { response->write(SimpleWeb::StatusCode::server_error_not_implemented, "{\"error\":\"鑺傜偣涓嶅瓨鍦� \"}"); @@ -1873,31 +1873,87 @@ // bool ret = false; if (reader.parse(content, value)) { + std::string Uuid = value["uuid"].asString(); std::string TableType = value["TableType"].asString(); std::string TableName = value["TableName"].asString(); int SyncType = atoi(value["SyncType"].asCString()); std::string BwType = value["BwType"].asString(); std::string StartTime = value["StartTime"].asString(); std::string EndTime = value["EndTime"].asString(); + + std::string UploadFlag = value["IsSync"].asString(); + UploadFlag = UploadFlag.empty() ? "0" : UploadFlag; + std::string CmpThreshold = value["threshold"].asString(); + CmpThreshold = CmpThreshold.empty() ? "60" : CmpThreshold; + std::string Enabled = value["enabled"].asString(); + Enabled = Enabled.empty() ? "1" : Enabled; + + std::string createBy = value["createBy"].asString(); + + string str_uuid; + uuid_t t_uuid; + char str[36]; + uuid_generate(t_uuid); + uuid_unparse(t_uuid, str); + str_uuid = str; + Uuid = Uuid.empty() ? str_uuid : Uuid; +// if (createBy == "analyDev") { +// Uuid = Uuid.empty() ? str_uuid : Uuid; +// } else if (createBy == "conCemter") { +// if (Uuid.empty()) { +// response->write(SimpleWeb::StatusCode::client_error_bad_request, "{\"error\":\"鍙傛暟閿欒锛� \"}"); +// return ""; +// } +// } + + bool ret = false; - if (SyncType == 1) { - //鍚屾搴� - ret = erlangDbTool->createDatabase(TableType, TableName, SyncType, BwType, StartTime, EndTime); - } else if (SyncType == 0) { - TableName.insert(0, "lt_"); - //鏈湴搴� - FieldValues fieldValues; - fieldValues.insert(std::make_pair("uuid", GetUUId::getUUID())); - fieldValues.insert(std::make_pair("tableName", TableName)); - fieldValues.insert(std::make_pair("tableDesc", "ceshi")); - fieldValues.insert(std::make_pair("tableType", TableType)); - fieldValues.insert(std::make_pair("bwType", BwType)); - fieldValues.insert(std::make_pair("startTime", StartTime)); - fieldValues.insert(std::make_pair("endTime", EndTime)); - fieldValues.insert(std::make_pair("create_by", "who")); - ret = m_SqliteFaceEncap.createTable(TableName, fieldValues); + FieldValues fieldValues; + fieldValues.insert(std::make_pair("uuid", Uuid)); + fieldValues.insert(std::make_pair("tableName", TableName)); + fieldValues.insert(std::make_pair("tableDesc", "ceshi")); + fieldValues.insert(std::make_pair("tableType", TableType)); + fieldValues.insert(std::make_pair("bwType", BwType)); + fieldValues.insert(std::make_pair("startTime", StartTime)); + fieldValues.insert(std::make_pair("endTime", EndTime)); +// #todo + fieldValues.insert(std::make_pair("create_by", createBy)); + + fieldValues.insert(std::make_pair("uploadFlag", UploadFlag)); + fieldValues.insert(std::make_pair("cmpThreshold", CmpThreshold)); + fieldValues.insert(std::make_pair("enabled", Enabled)); + + + if (TableType == "person") { + if (SyncType == 1) { + //鍚屾搴� + ret = erlangDbTool->createDatabase(Uuid, fieldValues); + } else if (SyncType == 0) { + TableName.insert(0, "lt_"); + //鏈湴搴� + ret = m_SqliteFaceEncap.createTable(TableName, fieldValues); + } + } else if (TableType == "car") { + ERR(" not not_implemented"); + response->write(SimpleWeb::StatusCode::server_error_not_implemented, "{\"error\":\"绫诲瀷閿欒锛屾湭瀹炵幇锛� \"}"); + return ""; + } else { + response->write(SimpleWeb::StatusCode::server_error_not_implemented, "{\"error\":\"绫诲瀷閿欒锛屾湭璇嗗埆锛� \"}"); + return ""; } + +//// #todo 涓婁紶銆備粎榛戝悕鍗曘�� +//// #TODO 鏍规嵁createBy鍒ゆ柇鏄惁闇�瑕佷笂浼� +// if (createBy == "analyDev" && BwType == "1") { +//// string &Uuid, string &TableName, string &SyncType, string &StartTime,string &EndTime, +//// string &UploadFlag, string &CmpThreshold, string &Enabled +// string str_SyncType(to_string(SyncType)); +// UploadTaskToMonitorCenter(Uuid, TableName, str_SyncType, StartTime, EndTime, UploadFlag, CmpThreshold, +// Enabled); +// } + + erlangDbTool->sendMessage(); std::string str_result = std::string("{\"result\":").append("\"" + std::to_string(ret) + "\"}"); return str_result; -- Gitblit v1.8.0