From edb7c9ae9cd72601bcb58d3e1a3d9bf9250f0100 Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期二, 29 一月 2019 09:44:54 +0800 Subject: [PATCH] 添加布控等级。对比暂未添加本字段。 --- QiaoJiaSystem/DataManagerServer/http_configserver.cpp | 63 ++++++++++++++++++++----------- 1 files changed, 40 insertions(+), 23 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp index 5fc72f5..eb2ff5f 100644 --- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp +++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp @@ -2123,11 +2123,13 @@ std::string strUUID = value["uuid"].asString(); std::string Enabled = value["enabled"].asString(); + Enabled = Enabled.empty() ? "1" : Enabled; std::string TableType = value["TableType"].asString(); std::string SyncType = value["SyncType"].asString(); std::string TableId = value["TableId"].asString(); std::string BwType = value["BwType"].asString(); std::string createBy = value["createBy"].asString(); + std::string monLevel = value["monLevel"].asString(); std::string UploadFlag = "-1"; if (SyncType == "1") { @@ -2209,7 +2211,8 @@ // std::string uuid = ""; bool ret_addPerson = false; - addPersonMToDB(TableName, img_url, SyncType, feature_base64, faceResults, idcard, strUUID, ret_addPerson); + addPersonMToDB(TableName, img_url, SyncType, feature_base64, faceResults, idcard, strUUID, monLevel, Enabled, + ret_addPerson); if (ret_addPerson && strUUID.size() > 0) { std::string str_result = std::string("{\"uuid\":").append( @@ -2266,6 +2269,7 @@ std::string TableId = value["TableId"].asString(); std::string BwType = value["BwType"].asString(); std::string CreateBy = value["createBy"].asString(); + std::string monLevel = value["monLevel"].asString(); // std::string BwType = value["BwType"].asString(); std::string UploadFlag = "-1"; if (SyncType == "1") { @@ -2363,12 +2367,14 @@ fieldValues.insert(make_pair("uuid", strUUID)); fieldValues.insert(make_pair("idCard", idcard)); fieldValues.insert(make_pair("enabled", Enabled)); + fieldValues.insert(make_pair("monitorLevel", monLevel)); ret_addPerson = m_SqliteFaceEncap.updateFace(TableName, addFaceData, fieldValues); } } else { fieldValues.insert(make_pair("uuid", strUUID)); fieldValues.insert(make_pair("idCard", idcard)); fieldValues.insert(make_pair("enabled", Enabled)); + fieldValues.insert(make_pair("monitorLevel", monLevel)); ret_addPerson = erlangDbTool->updatePerson(strUUID, addFaceData, fieldValues); } @@ -2424,41 +2430,48 @@ void devHttpServer_c::addPersonMToDB(const string &TableName, const string &img_url, const string &SyncType, const string &feature_base64, const Features &faceResults, string &idcard, - string &strUUID, bool &ret_addPerson) { + string &strUUID, string &monLevel, string &Enabled, bool &ret_addPerson) { + FieldValues fieldValues; + AddFaceData addFaceData; + + addFaceData.uuid = strUUID; + addFaceData.faceUrl = img_url; + + fieldValues.insert(make_pair("monitorLevel", monLevel)); + fieldValues.insert(make_pair("enabled", Enabled)); + fieldValues.insert(make_pair("idCard", idcard)); + if (SyncType == "0") { - FieldValues fieldValues; - AddFaceData addFaceData; addFaceData.feature.resize(faceResults[0].feature.size()); memcpy(addFaceData.feature.data(), faceResults[0].feature.data(), faceResults[0].feature.size()); //#todo uuid have value is update if (strUUID.size() <= 0) { // get Person id - strUUID = AppUtil::getPersonId(m_batch, m_SerialNumber); - addFaceData.uuid = strUUID; - addFaceData.faceUrl = img_url; - fieldValues.insert(make_pair("uuid", strUUID)); - fieldValues.insert(make_pair("idCard", idcard)); auto t_id = m_SqliteFaceEncap.addFace(TableName, addFaceData, fieldValues); ret_addPerson = t_id.size() > 0 ? true : false; } else { //#todo update table - addFaceData.uuid = strUUID; - addFaceData.faceUrl = img_url; - fieldValues.insert(make_pair("uuid", strUUID)); - fieldValues.insert(make_pair("idCard", idcard)); ret_addPerson = m_SqliteFaceEncap.updateFace(TableName, addFaceData, fieldValues); } - } else { - //#todo update data - // get Person id - strUUID = strUUID.size() > 0 ? strUUID : AppUtil::getPersonId(m_batch, m_SerialNumber); - ret_addPerson = ret_addPerson = erlangDbTool->addPerson(strUUID, TableName, feature_base64, img_url, - idcard); + if (strUUID.size() <= 0) { +// insert + strUUID = AppUtil::getPersonId(m_batch, m_SerialNumber); +// ret_addPerson = ret_addPerson = erlangDbTool->addPerson(strUUID, TableName, feature_base64, img_url, +// idcard); + fieldValues.insert(make_pair("uuid", strUUID)); + addFaceData.feature_base64 = feature_base64; + ret_addPerson = erlangDbTool->addPerson(TableName, addFaceData, fieldValues); + } else { +// update + fieldValues.insert(make_pair("uuid", strUUID)); + addFaceData.feature_base64 = feature_base64; + ret_addPerson = erlangDbTool->updatePerson(strUUID, addFaceData, fieldValues); + } } } @@ -2619,7 +2632,8 @@ subJson.append("\"uuid\":\"" + item.second.uuid + "\","); subJson.append("\"tableName\":\"" + TableName + "\","); subJson.append("\"idcard\":\"" + t_faceInfoCache[item.second.uuid].idCard + "\","); - subJson.append("\"enable\":\"" + item.second.enable + "\","); + subJson.append("\"enable\":\"" + t_faceInfoCache[item.second.uuid].enable + "\","); + subJson.append("\"monLevel\":\"" + t_faceInfoCache[item.second.uuid].monLevel + "\","); subJson.append("\"imgUrl\":\"" + item.second.faceurl + "\""); // subJson.append("\"feature\":\"" + item.second.feature + "\","); //#todo modifysvn upda svn comm @@ -2642,6 +2656,7 @@ subJson.append("\"tableName\":\"" + TableName + "\","); subJson.append("\"idcard\":\"" + item.second.idcard + "\","); subJson.append("\"enable\":\"" + item.second.enable + "\","); + subJson.append("\"monLevel\":\"" + item.second.monLevel + "\","); subJson.append("\"imgUrl\":\"" + item.second.img + "\""); // subJson.append("\"feature\":\"" + item.second.feature + "\","); //#todo modifysvn upda svn comm @@ -2693,7 +2708,7 @@ std::string UploadFlag = value["IsSync"].asString(); std::string CmpThreshold = value["threshold"].asString(); std::string Enabled = value["enabled"].asString(); - Enabled = Enabled.empty() ? "1" : Enabled; +// Enabled = Enabled.empty() ? "1" : Enabled; std::string createBy = value["createBy"].asString(); bool ret = false; @@ -3461,7 +3476,8 @@ str_imgName += "-"; str_imgName += "snapshot.jpg"; //admin:a1234567@192.168.1.201:554/h264/ch1/main/av_stream -r 1/25 -f image2 -s 1920*1080 /home/basic/work_src/a.jpg - std::string cmd("ffmpeg -i " + rtsp_url + " -r 1/25 -f image2 -s 1920*1080 -y " + str_imgName); + std::string cmd("ffmpeg -i " + rtsp_url + " -vf select='eq(pict_type\\,I)',setpts='N/(25*TB)' -f image2 -s 1920*1080 -y " + str_imgName); +// std::string cmd("ffmpeg -i " + rtsp_url + " -r 1/25 -f image2 -s 1920*1080 -y " + str_imgName); DBG(cmd); system(cmd.c_str()); @@ -3478,13 +3494,14 @@ CvUtil::cvMat2Buffer(img, buffer); std::string strImgUrlTmp = ""; fdfsClient.fastFds->uploadFile(buffer, strImgUrlTmp, "jpg"); - strImgUrl.append(fdfsClient.fastFds->getIp() + "/" + strImgUrlTmp); + // strImgUrl.append(fdfsClient.fastFds->getIp() + "/" + strImgUrlTmp); strImgUrl.clear(); strImgUrl = strImgUrlTmp; } fdfsClient.rwLock.unlock(); Json::Value result; result["imgUrl"] = strImgUrl; + db_c.updateCamDevSnapshot(QString::fromStdString(ip),QString::fromStdString(strImgUrl)); return result.toStyledString(); -- Gitblit v1.8.0