From c64a4f19a0a41b62917eb1dc8b0789c9ddf6baab Mon Sep 17 00:00:00 2001
From: pansen <pansen626@sina.com>
Date: 星期五, 15 三月 2019 11:03:50 +0800
Subject: [PATCH] Merge branch 'yw.1.2.fixbug' of ssh://192.168.1.226:29418/development/c++ into yw.1.2

---
 QiaoJiaSystem/DataManagerServer/http_configserver.cpp |   72 ++++++++++++++++++++++++------------
 1 files changed, 48 insertions(+), 24 deletions(-)

diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
index 35bb566..07d6de6 100644
--- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
+++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
@@ -1003,11 +1003,24 @@
         elem["str_latitude"] = iter->str_latitude.toStdString();
         elem["str_ip"] = iter->str_ip.toStdString();
         elem["n_port"] = iter->n_port;
+        elem["type"] = iter->type;
         elem["str_username"] = iter->str_username.toStdString();
         elem["str_password"] = iter->str_password.toStdString();
         elem["str_brand"] = iter->str_brand.toStdString();
         elem["str_reserved"] = iter->str_reserved.toStdString();
 
+        SdkRuleMap ruleMap = db_c.searchSdkRuleByCamId(iter->str_cam_dev_id);
+
+        int count = ruleMap.size();
+        elem["nSdkTypes"] = Json::arrayValue;
+
+        if (count > 0) {
+            for (auto rule:ruleMap) {
+                if (rule.second.nIsRun == 1) {
+                    elem["nSdkTypes"].append(rule.second.nSdkType);
+                }
+            }
+        }
 //        Record_Cam_Sdk rec_sdk = db_c.searchCamSdkTableByCamId(iter->str_cam_dev_id);
 //        elem["str_sdks"] = rec_sdk.str_sdks.toStdString();
 //        elem["str_det_thr"] = rec_sdk.str_det_thr.toStdString();
@@ -1272,26 +1285,35 @@
 
     Json::Reader reader;
     Json::Value value_reader;
-
+    std::string out;
     if (!reader.parse(content, value_reader)) {
         return "{\"ret_status\": \"浼犺緭閿欒锛岃妫�鏌ワ紒\"}";
     }
+    Json::Value value;
+    if (value_reader.isMember("id")) {
+        if (value_reader["id"].isNull()) return "{\"ret_status\": \"id鍐呭鏈夎锛岃妫�鏌ワ紒\"}";
+        value["connect_status"] = "True";
+        std::string rtmp_url = appConfig.getStringProperty("srsAddr");
+        rtmp_url.append("cam").append(value_reader["id"].asCString());
+        value["video_url"] = rtmp_url;
+        out = value.toStyledString();
 
-    //TODO
-    //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream
+    } else {
+        //TODO
+        //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream
 //    std::string rtsp_url = "rtsp://" + username + ":" + passwd + "@" + ip + ":"  + std::to_string(port) + "/h264/ch1/main/av_stream";
-    bool ret = cam_connect_video_start(value_reader["str_ip"].asString(), value_reader["n_port"].asInt(), \
+        bool ret = cam_connect_video_start(value_reader["str_ip"].asString(), value_reader["n_port"].asInt(), \
                             value_reader["str_username"].asString(), value_reader["str_password"].asString(), \
                             value_reader["str_brand"].asString());
-    if (!ret) {
-        return "{\"ret_status\": \"鍐呭鏈夎锛岃妫�鏌ワ紒\"}";
-    }
+        if (!ret) {
+            return "{\"ret_status\": \"鍐呭鏈夎锛岃妫�鏌ワ紒\"}";
+        }
 
-    std::string rtmp_url = m_rtmp[value_reader["str_ip"].asCString()].appPC->getRtmp();
-    Json::Value value;
-    value["connect_status"] = "True";
-    value["video_url"] = rtmp_url;
-    std::string out = value.toStyledString();
+        std::string rtmp_url = m_rtmp[value_reader["str_ip"].asCString()].appPC->getRtmp();
+        value["connect_status"] = "True";
+        value["video_url"] = rtmp_url;
+        out = value.toStyledString();
+    }
 
     return out;
 }
@@ -1934,6 +1956,7 @@
                 ret = erlangDbTool->createDatabase(Uuid, fieldValues);
             } else if (SyncType == 0) {
                 TableName.insert(0, "lt_");
+                fieldValues["tableName"] = TableName;
                 //鏈湴搴�
                 ret = m_SqliteFaceEncap.createTable(TableName, fieldValues);
             }
@@ -2408,26 +2431,27 @@
         std::string BwType = value["BwType"].asString();
         std::string StartTime = value["StartTime"].asString();
         std::string EndTime = value["EndTime"].asString();
-
+        //#鏇存柊搴曞簱绠$悊琛�
+        FieldValues fieldValues;
+        fieldValues.insert(std::make_pair("uuid", Uuid));
+        fieldValues.insert(std::make_pair("tableName", TableName));
+//            fieldValues.insert(std::make_pair("tableDesc", "ceshi2"));
+        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"));
         bool ret = false;
         if (SyncType == 1) {
             //鍚屾搴�
-            ret = erlangDbTool->updateDatabase(Uuid, TableType, TableName, SyncType, BwType, StartTime, EndTime);
+            ret = erlangDbTool->updateDatabase("sys_o_tables", fieldValues);
         } else if (SyncType == 0) {
             //鏈湴搴�
-            //#鏇存柊搴曞簱绠$悊琛�
-            FieldValues fieldValues;
-            fieldValues.insert(std::make_pair("uuid", Uuid));
             if (TableName.find("lt_") != 0) {
                 TableName.insert(0, "lt_");
             }
-            fieldValues.insert(std::make_pair("tableName", TableName));
-//            fieldValues.insert(std::make_pair("tableDesc", "ceshi2"));
-            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"));
+            fieldValues["tableName"] = TableName;
+
             ret = m_SqliteFaceEncap.updateTable("sys_o_tables", fieldValues);
         }
 

--
Gitblit v1.8.0