pansen
2019-01-28 8bfd4cc90f25f1800eb5e61d50d4fa74854e0f2a
QiaoJiaSystem/DataManagerServer/http_configserver.cpp
@@ -1873,6 +1873,8 @@
        std::string Enabled = value["enabled"].asString();
        Enabled = Enabled.empty() ? "1" : Enabled;
        std::string createBy = value["createBy"].asString();
        bool ret = false;
        FieldValues fieldValues;
        fieldValues.insert(std::make_pair("uuid", Uuid));
@@ -1908,6 +1910,10 @@
            return "";
        }
        {
//            #todo 上传。仅黑名单。
//            #TODO 根据createBy判断是否需要上传
        }
        erlangDbTool->sendMessage();
        std::string str_result = std::string("{\"result\":").append("\"" + std::to_string(ret) + "\"}");
@@ -1941,6 +1947,8 @@
        std::string TableName = value["TableName"].asString();
        int SyncType = atoi(value["SyncType"].asCString());
        std::string createBy = value["createBy"].asString();
        bool ret = false;
        if (TableType == "person") {
            if (SyncType == 1) {
@@ -1962,6 +1970,10 @@
            return "";
        }
        {
//            #todo 上传。仅黑名单。
//            #TODO 根据createBy判断是否需要上传
        }
        erlangDbTool->sendMessage();
        std::string str_result = std::string("{\"result\":").append("\"" + std::to_string(ret) + "\"}");
        return str_result;
@@ -2051,7 +2063,7 @@
            subJson.append("\"IsSync\":\"" + item.uploadFlag + "\",");
            subJson.append("\"threshold\":\"" + item.cmpThreshold + "\",");
            subJson.append("\"create_by\":\"" + item.createBy + "\",");
            subJson.append("\"enabled\":\"" + item.enabled + "\",");
            subJson.append("\"enabled\":\"" + item.enabled + "\"");
            subJson.append("},");
            json.append(subJson);
        }
@@ -2092,6 +2104,7 @@
        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 UploadFlag = "-1";
        if (SyncType == "1") {
@@ -2108,12 +2121,12 @@
        DBG("content: " << TableName << "," << img_url << "," << idcard << "," << strUUID << "," << UploadFlag << ","
                        << Enabled << "," << TableType << "," << SyncType << "," << TableId);
        cv::Mat image;
        getMat(img_url, img_base64, image);
        if (image.empty()) {
            response->write(SimpleWeb::StatusCode::server_error_not_implemented, "{\"error\":\"not found img\"}");
            return "";
//            return "{\"error\":\"not found img\"}";
        }
        thread::id pid = std::this_thread::get_id();
@@ -2181,15 +2194,15 @@
//            usleep(100);
            erlangDbTool->sendMessage();
            if (UploadFlag == "1") {
            if (createBy == "analyDev" && UploadFlag == "1") {
//                #todo db queue upload to server
                if (BwType == "0") {
                    UploadPersonToUserCenter(img_url, idcard, strUUID, feature_base64);
                } else {
                    //todo send person to backServer
//#TODO 黑名单上传
                } else if (BwType == "1") {
                    UploadPersonToMonitorCenter(img_url, idcard, strUUID, feature_base64, TableId, Enabled);
                }
            } else {
//                不上传
            }
            return str_result;
        } else {
@@ -2338,6 +2351,10 @@
//                } else {
//                    //todo send person to backServer
////#TODO 黑名单上传
            {
//            #todo 上传。仅黑名单。
//            #TODO 根据createBy判断是否需要上传
            }
//                }
//            }
            return str_result;
@@ -2417,10 +2434,11 @@
devHttpServer_c::UploadPersonToUserCenter(string &img_url, string &idcard, string &strUUID, string &feature_base64) {
    string str_serIp = GET_STR_CONFIG("mainServerIp");
    string str_serPort = GET_STR_CONFIG("mainServerPort");
    string str_serUrl = GET_STR_CONFIG("mainServerrUrl");
//  string sendUrl = "192.168.1.203:3697/addPerson/uploadToTemporary";
    string sendUrl = str_serIp;
    sendUrl.append(":").append(str_serPort).append("/addPerson/uploadToTemporary");
    sendUrl.append(":").append(str_serPort).append(str_serUrl);
    Json::Value perInfos;
    Json::Value perInfo;
@@ -2434,6 +2452,39 @@
    perInfo["photos"] = img_url;
    perInfo["featureBase64"] = feature_base64;
    perInfo["cardId"] = idcard;//图片描述
    perInfos.append(perInfo);
    thread sendPerson(uploadServer, this, sendUrl, perInfos.toStyledString());
    sendPerson.detach();
}
void
devHttpServer_c::UploadPersonToMonitorCenter(string &img_url, string &idcard, string &strUUID, string &feature_base64,
                                             string &strTableId, string &strControl) {
//  string sendUrl = "192.168.1.203:3697/addPerson/uploadToTemporary";
    string sendUrl = GET_STR_CONFIG("addFromAnalyUrl");
    if (sendUrl.empty()) {
        ERR("");
        return;
    }
    Json::Value perInfos;
    Json::Value perInfo;
//                #todo get string from config.json file
    perInfo["id"] = strUUID;
    perInfo["distributionIds"] = m_cluster_id;
    perInfo["distributionNames"] = m_cluster_name;
    auto rec = db_c.searchConfigTableWithinServerInfo();
    perInfo["deviceId"] = rec.dev_id.toStdString();
    perInfo["photos"] = img_url;
    perInfo["featureBase64"] = feature_base64;
    perInfo["cardId"] = idcard; // 图片描述
    perInfo["taskId"] = strTableId; // 底库id
    perInfo["isControl"] = strControl; // 布控状态(0为未布控,1为已布控)
    perInfos.append(perInfo);
    thread sendPerson(uploadServer, this, sendUrl, perInfos.toStyledString());
@@ -2469,6 +2520,7 @@
                    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("\"imgUrl\":\"" + item.second.faceurl + "\"");
//                subJson.append("\"feature\":\"" + item.second.feature + "\",");
                    //#todo modifysvn upda  svn comm
@@ -2490,6 +2542,7 @@
                    subJson.append("\"uuid\":\"" + item.second.id + "\",");
                    subJson.append("\"tableName\":\"" + TableName + "\",");
                    subJson.append("\"idcard\":\"" + item.second.idcard + "\",");
                    subJson.append("\"enable\":\"" + item.second.enable + "\",");
                    subJson.append("\"imgUrl\":\"" + item.second.img + "\"");
//                subJson.append("\"feature\":\"" + item.second.feature + "\",");
                    //#todo modifysvn upda  svn comm
@@ -2541,6 +2594,8 @@
        std::string UploadFlag = value["IsSync"].asString();
        std::string CmpThreshold = value["threshold"].asString();
        std::string Enabled = value["enabled"].asString();
        Enabled = Enabled.empty() ? "1" : Enabled;
        std::string createBy = value["createBy"].asString();
        bool ret = false;
        //#更新底库管理表
@@ -2580,6 +2635,10 @@
            return "";
        }
        {
//            #todo 上传。仅黑名单。
//            #TODO 根据createBy判断是否需要上传
        }
        erlangDbTool->sendMessage();
        std::string str_result = std::string("{\"result\":").append("\"" + std::to_string(ret) + "\"}");
@@ -2607,6 +2666,7 @@
    if (reader.parse(content, value)) {
        std::string TableName = value["TableName"].asString();
        std::string strUUID = value["uuid"].asString();
        std::string createBy = value["createBy"].asString();
        bool ret = false;
        if (TableName.find("lt_") == 0) {
@@ -2614,7 +2674,10 @@
        } else {
            ret = erlangDbTool->delPerson(strUUID, TableName);
        }
        {
//            #todo 上传。仅黑名单。
//            #TODO 根据createBy判断是否需要上传
        }
        erlangDbTool->sendMessage();
        std::string str_result = std::string("{\"result\":").append("\"" + std::to_string(ret) + "\"}");
        return str_result;