From 93fcc2eb2db5038ca1944acde9f4c8b751aca930 Mon Sep 17 00:00:00 2001
From: xuxiuxi <554325746@qq.com>
Date: 星期一, 04 三月 2019 16:27:14 +0800
Subject: [PATCH] add models, daos and controllers for tables.

---
 QiaoJiaSystem/DataManagerServer/http_configserver.cpp             |    5 
 QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h         |  282 +++++++++++++++----------
 QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h |  321 ++++++++++++++---------------
 3 files changed, 332 insertions(+), 276 deletions(-)

diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
index 4c2e5ef..aa68798 100644
--- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
+++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
@@ -28,6 +28,7 @@
 #include "vss/controller/VssDomainUnitTblController.h"
 #include "vss/controller/VssLocalSettingTblController.h"
 #include "vss/controller/VssUpperSvrTblController.h"
+#include "vss/controller/CamDevController.h"
 
 using namespace std;
 
@@ -250,13 +251,15 @@
 
 
     BaseDao::initConnection();
-    VssLocalSettingTblSqliteDao::instance()->setLDBTool(&db_c);
+    BaseSqliteDao::setLDBTool(&db_c);
     VssDevTblController::instance()->registerHttpServices(_HttpSrvRetRecieve);
     VssChannelTblController::instance()->registerHttpServices(_HttpSrvRetRecieve);
     VssDomainUnitTblController::instance()->registerHttpServices(_HttpSrvRetRecieve);
     VssLocalSettingTblController::instance()->registerHttpServices(_HttpSrvRetRecieve);
+    CamDevController::instance()->registerHttpServices(_HttpSrvRetRecieve);
     VssUpperSvrTblController::instance()->registerHttpServices(_HttpSrvRetRecieve);
 
+
     _HttpSrvRetRecieve.start();
     _HttpSrvRetRecieve.waitForShutDown();
 }
diff --git a/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h b/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h
index f268df2..77462e1 100755
--- a/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h
+++ b/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h
@@ -16,46 +16,46 @@
  */
 class CamDevController : public VssBaseController {
 private:
-	/** 鎽勫儚澶磋澶囨瀯閫犲嚱鏁� */
-	CamDevController() {}
+    /** 鎽勫儚澶磋澶囨瀯閫犲嚱鏁� */
+    CamDevController() {}
 public:
-	/** 鎽勫儚澶磋澶囧崟渚嬫ā寮� */
+    /** 鎽勫儚澶磋澶囧崟渚嬫ā寮� */
     static CamDevController* instance() {
         static CamDevController instance;
         return &instance;
     }
 public:
-	/** 娉ㄥ唽{label}http鏈嶅姟 */
+    /** 娉ㄥ唽{label}http鏈嶅姟 */
     void registerHttpServices(HttpSrvRetRecieve& _HttpSrvRetRecieve) {
 
-	    _HttpSrvRetRecieve.setInfo("^/addCamDev$", "POST",
-	                               std::bind(&CamDevController::addCamDev, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/delCamDev$", "POST",
-	                               std::bind(&CamDevController::delCamDev, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/updateCamDev$", "POST",
-	                               std::bind(&CamDevController::updateCamDev, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/findCamDev$", "POST",
-	                               std::bind(&CamDevController::findCamDev, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/findCamDevList$", "POST",
-	                               std::bind(&CamDevController::findCamDevList, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
+        _HttpSrvRetRecieve.setInfo("^/addCamDev$", "POST",
+                                   std::bind(&CamDevController::addCamDev, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/delCamDev$", "POST",
+                                   std::bind(&CamDevController::delCamDev, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/updateCamDev$", "POST",
+                                   std::bind(&CamDevController::updateCamDev, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/findCamDev$", "POST",
+                                   std::bind(&CamDevController::findCamDev, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/findCamDevList$", "POST",
+                                   std::bind(&CamDevController::findCamDevList, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
 
     }
 public:
-	/** 娣诲姞鎽勫儚澶磋澶� */
+    /** 娣诲姞鎽勫儚澶磋澶� */
     std::string addCamDev(std::string ip, unsigned int port, std::string content, PResponse &response) {
         Json::Reader requestJsonReader;
         Json::Value requestJsonValue;
@@ -64,83 +64,82 @@
         responseJsonValue["success"] = "false";
         if (requestJsonReader.parse(content, requestJsonValue)) {
             CamDevBuilder camDevBuilder;
-	    
-	    	Json::Value idJsonValue = requestJsonValue[CamDev_id];
+
+            Json::Value idJsonValue = requestJsonValue[CamDev_id];
             if (idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addid(std::stoi((idJsonValue.asString())));
             }
-	    
-	    	Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
+
+            Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
             if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString()));
             }
-	    
-	    	Json::Value nameJsonValue = requestJsonValue[CamDev_name];
+
+            Json::Value nameJsonValue = requestJsonValue[CamDev_name];
             if (nameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addname((nameJsonValue.asString()));
             }
-	    
-	    	Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
+
+            Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
             if (addrJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addaddr((addrJsonValue.asString()));
             }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
+
+            Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
             if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlongitude((longitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
+
+            Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
             if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlatitude((latitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
+
+            Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
             if (ipJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addip((ipJsonValue.asString()));
             }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[CamDev_port];
+
+            Json::Value portJsonValue = requestJsonValue[CamDev_port];
             if (portJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addport(std::stoi((portJsonValue.asString())));
             }
-	    
-	    	Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
+
+            Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
             if (usernameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addusername((usernameJsonValue.asString()));
             }
-	    
-	    	Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
+
+            Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
             if (passwordJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addpassword((passwordJsonValue.asString()));
             }
-	    
-	    	Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
+
+            Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
             if (brandJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addbrand((brandJsonValue.asString()));
             }
-	    
-	    	Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
+
+            Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
             if (reservedJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addreserved((reservedJsonValue.asString()));
             }
-	    
-	    	Json::Value typeJsonValue = requestJsonValue[CamDev_type];
+
+            Json::Value typeJsonValue = requestJsonValue[CamDev_type];
             if (typeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addtype((typeJsonValue.asString()));
             }
-	    	auto keyValuesToAdd = camDevBuilder.buildCamDevMap();
-	    	if (keyValuesToAdd.size() > 0) {
-	            mysqlpp::SimpleResult addCamDevResult = CamDevSqliteDao::instance()->addCamDev(keyValuesToAdd);
-	            if (addCamDevResult.rows() > 0) {
-		        	responseJsonValue["success"] = "true";
-		        	responseJsonValue["message"] = "娣诲姞鎴愬姛锛�";
-	            }
+            auto keyValuesToAdd = camDevBuilder.buildCamDevMap();
+            if (keyValuesToAdd.size() > 0) {
+                auto keyValuesToAdd = camDevBuilder.buildCamDevMap();
+                if (keyValuesToAdd.size() > 0) {
+                    responseJsonValue = CamDevSqliteDao::instance()->addCamDev(keyValuesToAdd);
+                }
             }
         }
         return responseJsonValue.toStyledString();
     }
-    
+
     /** 鍒犻櫎鎽勫儚澶磋澶� */
     std::string delCamDev(std::string ip, unsigned int port, std::string content, PResponse &response) {
         Json::Reader requestJsonReader;
@@ -149,19 +148,16 @@
         responseJsonValue["message"] = "鍒犻櫎澶辫触锛�";
         responseJsonValue["success"] = "false";
         if (requestJsonReader.parse(content, requestJsonValue)) {
-        	Json::Value iDJsonValue = requestJsonValue[CamDev_ID];
-        	if (iDJsonValue.type() != Json::ValueType::nullValue) {
-        		string iDValue = iDJsonValue.asString();
-                if (iDValue.size() > 0 && CamDevSqliteDao::instance()->deleteByColumn("ID", iDValue)) {
-        			responseJsonValue["success"] = "true";
-	                responseJsonValue["message"] = "鍒犻櫎鎴愬姛!";
-	            }
+            Json::Value iDJsonValue = requestJsonValue["id"];
+            if (iDJsonValue.type() != Json::ValueType::nullValue) {
+                string iDValue = iDJsonValue.asString();
+                responseJsonValue = CamDevSqliteDao::instance()->deleteByColumn("id", iDValue);
             }
-            
+
         }
         return responseJsonValue.toStyledString();
     }
-    
+
     /** 鏇存柊鎽勫儚澶磋澶� */
     std::string updateCamDev(std::string ip, unsigned int port, std::string content, PResponse &response) {
         Json::Reader requestJsonReader;
@@ -171,82 +167,78 @@
         responseJsonValue["success"] = "false";
         if (requestJsonReader.parse(content, requestJsonValue)) {
             CamDevBuilder camDevBuilder;
-	    
-	    	Json::Value idJsonValue = requestJsonValue[CamDev_id];
+
+            Json::Value idJsonValue = requestJsonValue[CamDev_id];
             if (idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addid(std::stoi((idJsonValue.asString())));
             }
-	    
-	    	Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
+
+            Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
             if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString()));
             }
-	    
-	    	Json::Value nameJsonValue = requestJsonValue[CamDev_name];
+
+            Json::Value nameJsonValue = requestJsonValue[CamDev_name];
             if (nameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addname((nameJsonValue.asString()));
             }
-	    
-	    	Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
+
+            Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
             if (addrJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addaddr((addrJsonValue.asString()));
             }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
+
+            Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
             if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlongitude((longitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
+
+            Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
             if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlatitude((latitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
+
+            Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
             if (ipJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addip((ipJsonValue.asString()));
             }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[CamDev_port];
+
+            Json::Value portJsonValue = requestJsonValue[CamDev_port];
             if (portJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addport(std::stoi((portJsonValue.asString())));
             }
-	    
-	    	Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
+
+            Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
             if (usernameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addusername((usernameJsonValue.asString()));
             }
-	    
-	    	Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
+
+            Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
             if (passwordJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addpassword((passwordJsonValue.asString()));
             }
-	    
-	    	Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
+
+            Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
             if (brandJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addbrand((brandJsonValue.asString()));
             }
-	    
-	    	Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
+
+            Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
             if (reservedJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addreserved((reservedJsonValue.asString()));
             }
-	    
-	    	Json::Value typeJsonValue = requestJsonValue[CamDev_type];
+
+            Json::Value typeJsonValue = requestJsonValue[CamDev_type];
             if (typeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addtype((typeJsonValue.asString()));
             }
-        	if (iDJsonValue.type() != Json::ValueType::nullValue) {
-        		string iDValue = iDJsonValue.asString();
-                if (iDValue.size() > 0 && CamDevSqliteDao::instance()->updateCamDev(camDevBuilder.buildCamDevMap(), "ID", iDValue)) {
-        			responseJsonValue["success"] = "true";
-        			responseJsonValue["message"] = "鏇存柊鎴愬姛锛�";
-	            }
+            if (idJsonValue.type() != Json::ValueType::nullValue) {
+                responseJsonValue = CamDevSqliteDao::instance()->updateCamDev(camDevBuilder.buildCamDevMap(), "id", idJsonValue.asString());
             }
         }
         return responseJsonValue.toStyledString();
     }
-    
+
     /** 鏌ユ壘鍗曚釜鎽勫儚澶磋澶� */
     std::string findCamDev(std::string ip, unsigned int port, std::string content, PResponse &response) {
         Json::Reader requestJsonReader;
@@ -256,78 +248,78 @@
         responseJsonValue["success"] = "false";
         if (requestJsonReader.parse(content, requestJsonValue)) {
             CamDevBuilder camDevBuilder;
-	    
-	    	Json::Value idJsonValue = requestJsonValue[CamDev_id];
+
+            Json::Value idJsonValue = requestJsonValue[CamDev_id];
             if (idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addid(std::stoi((idJsonValue.asString())));
             }
-	    
-	    	Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
+
+            Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
             if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString()));
             }
-	    
-	    	Json::Value nameJsonValue = requestJsonValue[CamDev_name];
+
+            Json::Value nameJsonValue = requestJsonValue[CamDev_name];
             if (nameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addname((nameJsonValue.asString()));
             }
-	    
-	    	Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
+
+            Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
             if (addrJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addaddr((addrJsonValue.asString()));
             }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
+
+            Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
             if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlongitude((longitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
+
+            Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
             if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlatitude((latitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
+
+            Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
             if (ipJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addip((ipJsonValue.asString()));
             }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[CamDev_port];
+
+            Json::Value portJsonValue = requestJsonValue[CamDev_port];
             if (portJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addport(std::stoi((portJsonValue.asString())));
             }
-	    
-	    	Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
+
+            Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
             if (usernameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addusername((usernameJsonValue.asString()));
             }
-	    
-	    	Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
+
+            Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
             if (passwordJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addpassword((passwordJsonValue.asString()));
             }
-	    
-	    	Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
+
+            Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
             if (brandJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addbrand((brandJsonValue.asString()));
             }
-	    
-	    	Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
+
+            Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
             if (reservedJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addreserved((reservedJsonValue.asString()));
             }
-	    
-	    	Json::Value typeJsonValue = requestJsonValue[CamDev_type];
+
+            Json::Value typeJsonValue = requestJsonValue[CamDev_type];
             if (typeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addtype((typeJsonValue.asString()));
             }
-	        responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
-	        responseJsonValue["success"] = "true";
-	    	responseJsonValue["data"] = CamDevSqliteDao::instance()->findJsonArray(string("select * from ") + CamDev_TABLE_NAME + " where 1 = 1 limit 1");
+            responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
+            responseJsonValue["success"] = "true";
+            responseJsonValue = CamDevSqliteDao::instance()->findCamDevList(camDevBuilder.buildCamDevMap());
         }
         return responseJsonValue.toStyledString();
     }
-    
+
     /** 鏌ユ壘鎽勫儚澶磋澶囧垪琛� */
     std::string findCamDevList(std::string ip, unsigned int port, std::string content, PResponse &response) {
         Json::Reader requestJsonReader;
@@ -337,74 +329,74 @@
         responseJsonValue["success"] = "false";
         if (content == "" || requestJsonReader.parse(content, requestJsonValue)) {
             CamDevBuilder camDevBuilder;
-	    
-	    	Json::Value idJsonValue = requestJsonValue[CamDev_id];
+
+            Json::Value idJsonValue = requestJsonValue[CamDev_id];
             if (idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addid(std::stoi((idJsonValue.asString())));
             }
-	    
-	    	Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
+
+            Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id];
             if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString()));
             }
-	    
-	    	Json::Value nameJsonValue = requestJsonValue[CamDev_name];
+
+            Json::Value nameJsonValue = requestJsonValue[CamDev_name];
             if (nameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addname((nameJsonValue.asString()));
             }
-	    
-	    	Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
+
+            Json::Value addrJsonValue = requestJsonValue[CamDev_addr];
             if (addrJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addaddr((addrJsonValue.asString()));
             }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
+
+            Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude];
             if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlongitude((longitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
+
+            Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude];
             if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addlatitude((latitudeJsonValue.asString()));
             }
-	    
-	    	Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
+
+            Json::Value ipJsonValue = requestJsonValue[CamDev_ip];
             if (ipJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addip((ipJsonValue.asString()));
             }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[CamDev_port];
+
+            Json::Value portJsonValue = requestJsonValue[CamDev_port];
             if (portJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addport(std::stoi((portJsonValue.asString())));
             }
-	    
-	    	Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
+
+            Json::Value usernameJsonValue = requestJsonValue[CamDev_username];
             if (usernameJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addusername((usernameJsonValue.asString()));
             }
-	    
-	    	Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
+
+            Json::Value passwordJsonValue = requestJsonValue[CamDev_password];
             if (passwordJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addpassword((passwordJsonValue.asString()));
             }
-	    
-	    	Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
+
+            Json::Value brandJsonValue = requestJsonValue[CamDev_brand];
             if (brandJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addbrand((brandJsonValue.asString()));
             }
-	    
-	    	Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
+
+            Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved];
             if (reservedJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addreserved((reservedJsonValue.asString()));
             }
-	    
-	    	Json::Value typeJsonValue = requestJsonValue[CamDev_type];
+
+            Json::Value typeJsonValue = requestJsonValue[CamDev_type];
             if (typeJsonValue.type() != Json::ValueType::nullValue) {
                 camDevBuilder.addtype((typeJsonValue.asString()));
             }
-	        responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
-	        responseJsonValue["success"] = "true";
-	    	responseJsonValue["data"] = CamDevSqliteDao::instance()->findJsonArray(string("select * from ") + CamDev_TABLE_NAME + " where 1 = 1");
+            responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
+            responseJsonValue["success"] = "true";
+            responseJsonValue = CamDevSqliteDao::instance()->findCamDevList(camDevBuilder.buildCamDevMap());
 
         }
         return responseJsonValue.toStyledString();
@@ -417,7 +409,6 @@
 
 
 #endif //CAMDEV_CONTROLLER_H
-
 
 
 
diff --git a/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h b/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h
index 8657c45..6898134 100755
--- a/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h
+++ b/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h
@@ -5,146 +5,208 @@
 #include "../model/CamDev.h"
 #include "BaseSqliteDao.h"
 
-#define CamDev_TABLE_NAME "CamDev"
+#define CamDev_TABLE_NAME "cam_dev"
 
 /**
  * 鎽勫儚澶磋澶囩鐞嗙被
  */
 class CamDevSqliteDao : public BaseSqliteDao {
 private:
-	/** 鎽勫儚澶磋澶囨瀯閫犲嚱鏁� */
-	CamDevSqliteDao() {}
+    /** 鎽勫儚澶磋澶囨瀯閫犲嚱鏁� */
+    CamDevSqliteDao() {}
 public:
-	/** 鎽勫儚澶磋澶囧崟渚嬫ā寮� */
+    /** 鎽勫儚澶磋澶囧崟渚嬫ā寮� */
     static CamDevSqliteDao* instance() {
         static CamDevSqliteDao instance;
         return &instance;
     }
-    
+
     /** 娣诲姞鎽勫儚澶磋澶� keyValuesToAdd 闇�瑕佹坊鍔犵殑鍒楀悕鍜屽垪鍊煎map*/
-    mysqlpp::SimpleResult addCamDev(std::map<std::string, std::string>& keyValuesToAdd) {
-        return add(keyValuesToAdd, CamDev_TABLE_NAME);
+    Json::Value addCamDev(std::map<std::string, std::string>& keyValuesToAdd) {
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "娣诲姞澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        QMutexLocker mutexLocker(m_mutexVisit);//TODO
+        QSqlTableModel pModel(NULL, *m_db);
+
+        pModel.setTable(CamDev_TABLE_NAME);
+        pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);
+
+        QSqlRecord rec = pModel.record();
+        for (auto keyValueToAdd : keyValuesToAdd) {
+            rec.setValue(QString::fromUtf8(keyValueToAdd.first.c_str()), QString::fromUtf8(keyValueToAdd.second.c_str()));
+        }
+        rec.setGenerated("ID", false);
+
+        pModel.insertRecord(-1, rec);//TODO
+
+        m_db->transaction();//寮�濮嬩簨鍔℃搷浣�
+
+        if (pModel.submitAll()) {
+            m_db->commit();//鎻愪氦
+            responseJsonValue["success"] = "true";
+            responseJsonValue["message"] = "娣诲姞鎴愬姛锛�";
+        } else {
+            m_db->rollback();//鍥炴粴
+            ERR("addCamDev err ,Database Error: " << pModel.lastError().text().toStdString());
+        }
+        return responseJsonValue;
     }
-    
-    /** 鍒犻櫎鎽勫儚澶磋澶� whereKey 鍒楀悕锛泈hereValue 鍒楀�� */
-    bool deleteByColumn(string whereKey, string whereValue) {
+
+    /** 鍒犻櫎鏈湴鍥芥爣閰嶇疆 whereKey 鍒楀悕锛泈hereValue 鍒楀�� */
+    Json::Value deleteByColumn(string whereKey, string whereValue) {
+
+
         std::map<std::string, std::string> whereKeyValues;
         whereKeyValues[whereKey] = whereValue;
         return deleteCamDev(whereKeyValues);
     }
 
-    /** 鍒犻櫎鎽勫儚澶磋澶� whereColumnNameValues 鍒楀悕鍜屽垪鍊煎鏉′欢 */
-    bool deleteCamDev(std::map<std::string, std::string>& whereKeyValues) {
-        return del(CamDev_TABLE_NAME, whereKeyValues);
+    /** 鍒犻櫎鎽勫儚澶磋澶� whereKey 鍒楀悕锛泈hereValue 鍒楀�� */
+    Json::Value deleteCamDev(std::map<std::string, std::string>& whereKeyValues) {
+
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "鍒犻櫎澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        QMutexLocker mutexLocker(m_mutexVisit);//TODO
+        QSqlTableModel pModel(NULL, *m_db);
+        pModel.setTable(CamDev_TABLE_NAME);
+        for (auto whereKeyValue : whereKeyValues ) {
+            pModel.setFilter(QObject::tr((string(whereKeyValue.first)+" = '%1'").c_str()).arg(QString::fromUtf8(whereKeyValue.second.c_str())));
+        }
+        pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange
+        pModel.select();
+
+        int rowCount = pModel.rowCount();
+
+        if (rowCount >= 1) {
+            for (int i = 0; i < rowCount; i++) {
+                pModel.removeRow(i);//TODO
+            }
+        } else {
+            return responseJsonValue;
+        }
+
+        m_db->transaction();//寮�濮嬩簨鍔℃搷浣�
+
+        if (pModel.submitAll()) {
+            m_db->commit();//鎻愪氦
+            responseJsonValue["success"] = "true";
+            responseJsonValue["message"] = "鍒犻櫎鎴愬姛锛�";
+        } else {
+            m_db->rollback();//鍥炴粴
+            ERR("deleteLDeviceTable ,pModel_load Error: " << pModel.lastError().text().toStdString());
+        }
+
+        return responseJsonValue;
     }
-    
+
+    /** 鏇存柊鏈湴鍥芥爣閰嶇疆 keyValuesToUpdate 闇�瑕佹洿鏂扮殑鍒楀悕鍜屽垪鍊煎锛� whereKeyValues 鍒楀悕鍜屽垪鍊兼潯浠� */
+    Json::Value updateCamDev(std::map<std::string, std::string>& keyValuesToUpdate,
+                             std::map<std::string, std::string>& whereKeyValues) {
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "鏇存柊澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        QMutexLocker mutexLocker(m_mutexVisit);//TODO
+        QSqlTableModel pModel(NULL, *m_db);
+        pModel.setTable(CamDev_TABLE_NAME);
+        for (auto whereKeyValue : whereKeyValues) {
+            pModel.setFilter(QObject::tr((whereKeyValue.first + " = '%1'").c_str()).arg(QString::fromStdString(whereKeyValue.second)));
+        }
+        pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange
+        pModel.select();
+
+        /*QSqlRecord rec =  pModel.record();
+        rec.setValue("dst_path",QString::fromStdString(dst_path));
+        rec.setValue("total",total);
+        rec.setValue("finish_flag",1);
+        rec.setValue("update_time",QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"));*/
+
+        int rowCount = pModel.rowCount();
+        if (rowCount > 0) {
+            QSqlRecord rec = pModel.record(0);
+            for (auto keyValueToUpdate : keyValuesToUpdate) {
+                rec.setValue(keyValueToUpdate.first.c_str(), keyValueToUpdate.second.c_str());
+            }
+//            rec.setValue("dst_path", QString::fromStdString(dst_path));
+//            rec.setValue("total", total);
+//            rec.setValue("finish_flag", 1);
+            rec.setValue("UpdateTime", QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"));
+
+            pModel.setRecord(0, rec);
+        } else {
+            return responseJsonValue;
+        }
+
+        m_db->transaction();//寮�濮嬩簨鍔℃搷浣�
+
+        if (pModel.submitAll()) {
+            m_db->commit();//鎻愪氦
+            responseJsonValue["success"] = "true";
+            responseJsonValue["message"] = "鏇存柊鎴愬姛锛�";
+        } else {
+            m_db->rollback();//鍥炴粴
+            ERR("updateLDeviceTable ,pModel_load Error: " << pModel.lastError().text().toStdString());
+        }
+        return responseJsonValue;
+    }
+
     /** 鏇存柊鎽勫儚澶磋澶� keyValuesToUpdate 闇�瑕佹洿鏂扮殑鍒楀悕鍜屽垪鍊煎锛� whereKeyValues 鍒楀悕鍜屽垪鍊兼潯浠� */
-	bool updateCamDev(std::map<std::string, std::string>& keyValuesToUpdate, 
-									std::map<std::string, std::string>& whereKeyValues) {
-		return update(keyValuesToUpdate, CamDev_TABLE_NAME, whereKeyValues);
-	}
-	
-    /** 鏇存柊鍒涘缓浜岀骇璁惧琛� keyValuesToUpdate 闇�瑕佹洿鏂扮殑鍒楀悕鍜屽垪鍊煎锛� whereKeyValues 鍒楀悕鍜屽垪鍊兼潯浠� */
-    bool updateCamDev(std::map<std::string, std::string>& keyValuesToUpdate,
+    Json::Value updateCamDev(std::map<std::string, std::string>& keyValuesToUpdate,
                              string whereKey,
                              string whereValue) {
         std::map<std::string, std::string> whereKeyValues;
         whereKeyValues[whereKey] = whereValue;
-        return update(keyValuesToUpdate, CamDev_TABLE_NAME, whereKeyValues);
+        return updateCamDev(keyValuesToUpdate, whereKeyValues);
     }
-	
-	/** 鏌ヨ鎽勫儚澶磋澶囧垪琛�  querySql 瑕佹煡璇㈢殑sql璇彞 */
-	vector<CamDev> findCamDevList(string querySql) {
-        vector<CamDev> camDevVec;
-        vector<map<string, string>> rowDatList = findList(querySql);
-        camDevVec.reserve(rowDatList.size());
-        for (auto rowData : rowDatList) {
-            camDevVec.emplace_back(mapToModel(rowData));
-        }
-        return camDevVec;
-	}
-	
+
     /**鏌ヨ鎽勫儚澶磋澶囧垪琛� whereKeyValues 鍒楀悕鍜屽垪鍊煎鏉′欢 */
-    vector<CamDev> findCamDevList(std::map<std::string, std::string>& whereKeyValues) {
-        return findCamDevList(string("select * from ") + CamDev_TABLE_NAME + " where 1=1 " + getWhereColumnNameValuePair(whereKeyValues));
+    Json::Value findCamDevList(std::map<std::string, std::string>& whereKeyValues) {
+
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "鏌ヨ澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        responseJsonValue["data"] = Json::arrayValue;
+
+        QMutexLocker mutexLocker(m_mutexVisit);//TODO
+        std::list<Record_Cut_Video_info> lst;
+        QSqlTableModel pModel(NULL, *m_db);
+        pModel.setTable(CamDev_TABLE_NAME);;
+        for (auto whereKeyValue : whereKeyValues ) {
+            pModel.setFilter(QObject::tr((string(whereKeyValue.first)+" = '%1'").c_str()).arg(QString::fromUtf8(whereKeyValue.second.c_str())));
+        }
+        pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange
+        pModel.select();
+
+        int rowCount = pModel.rowCount();
+        if (rowCount > 0) {
+            Json::Value rowDataList = Json::arrayValue;
+            for (int i = 0; i < rowCount; ++i) {
+                Json::Value rowData = Json::objectValue;
+                Record_Cut_Video_info lRec;
+                QSqlRecord rec = pModel.record(i);
+                for (int i = 0; i < rec.count(); i++) {
+                    QSqlField field = rec.field(i);
+                    rowData[field.name().toStdString()] = field.value().toString().toStdString();
+                }
+                rowDataList.append(rowData);
+            }
+            responseJsonValue["data"] = rowDataList;
+        }
+
+        responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
+        responseJsonValue["success"] = "true";
+        return responseJsonValue;
     }
-    
-    /**鏌ヨ鎵�鏈夋憚鍍忓ご璁惧鍒楄〃 */
-    vector<CamDev> findAllCamDevList() {
-        return findCamDevList(string("select * from ") + CamDev_TABLE_NAME + " where 1=1 ");
+
+    /**鏌ヨ鎵�鏈夋湰鍦板浗鏍囬厤缃垪琛� */
+    Json::Value findAllCamDevList() {
+        std::map<std::string, std::string> whereKeyValues;
+        return findCamDevList(whereKeyValues);
     }
-	
-	/** 鏌ヨmap鍒楄〃 querySql 瑕佹煡璇㈢殑sql璇彞 */
-	vector<map<string, string>> findMapList(string querySql) {
-		return findList(querySql);
-	}
-    
-    /** 鎵цsql璇彞 */
-    bool execute(string sql) {
-        return exec(move(sql));
-    }
-    
-    /** map杞琺odel绫� */
-    CamDev mapToModel(map<string, string>& rowData) {
-        CamDev camDev;
-        string idValue = rowData[CamDev_id];
-        if (idValue.length() != 0 && idValue != "NULL") {
-            camDev.id = std::stoi(idValue);
-        }
-        string cam_dev_idValue = rowData[CamDev_cam_dev_id];
-        if (cam_dev_idValue.length() != 0 && cam_dev_idValue != "NULL") {
-            camDev.cam_dev_id = cam_dev_idValue;
-        }
-        string nameValue = rowData[CamDev_name];
-        if (nameValue.length() != 0 && nameValue != "NULL") {
-            camDev.name = nameValue;
-        }
-        string addrValue = rowData[CamDev_addr];
-        if (addrValue.length() != 0 && addrValue != "NULL") {
-            camDev.addr = addrValue;
-        }
-        string longitudeValue = rowData[CamDev_longitude];
-        if (longitudeValue.length() != 0 && longitudeValue != "NULL") {
-            camDev.longitude = longitudeValue;
-        }
-        string latitudeValue = rowData[CamDev_latitude];
-        if (latitudeValue.length() != 0 && latitudeValue != "NULL") {
-            camDev.latitude = latitudeValue;
-        }
-        string ipValue = rowData[CamDev_ip];
-        if (ipValue.length() != 0 && ipValue != "NULL") {
-            camDev.ip = ipValue;
-        }
-        string portValue = rowData[CamDev_port];
-        if (portValue.length() != 0 && portValue != "NULL") {
-            camDev.port = std::stoi(portValue);
-        }
-        string usernameValue = rowData[CamDev_username];
-        if (usernameValue.length() != 0 && usernameValue != "NULL") {
-            camDev.username = usernameValue;
-        }
-        string passwordValue = rowData[CamDev_password];
-        if (passwordValue.length() != 0 && passwordValue != "NULL") {
-            camDev.password = passwordValue;
-        }
-        string brandValue = rowData[CamDev_brand];
-        if (brandValue.length() != 0 && brandValue != "NULL") {
-            camDev.brand = brandValue;
-        }
-        string reservedValue = rowData[CamDev_reserved];
-        if (reservedValue.length() != 0 && reservedValue != "NULL") {
-            camDev.reserved = reservedValue;
-        }
-        string typeValue = rowData[CamDev_type];
-        if (typeValue.length() != 0 && typeValue != "NULL") {
-            camDev.type = typeValue;
-        }
-        return camDev;
-    }
-   
+
 };
 
 
 #endif //CAMDEV_MANAGER_H
-
 

--
Gitblit v1.8.0