From 9a0afe1ccce6fd3a6882b4c19b72cee579a54dd1 Mon Sep 17 00:00:00 2001
From: xuxiuxi <554325746@qq.com>
Date: 星期五, 08 三月 2019 12:57:51 +0800
Subject: [PATCH] find channel list bug

---
 QiaoJiaSystem/DataManagerServer/vss/controller/VssChannelTblController.h | 1250 +++++++++++++++++++++++++++++-----------------------------
 1 files changed, 626 insertions(+), 624 deletions(-)

diff --git a/QiaoJiaSystem/DataManagerServer/vss/controller/VssChannelTblController.h b/QiaoJiaSystem/DataManagerServer/vss/controller/VssChannelTblController.h
index 12aa422..bbaa231 100755
--- a/QiaoJiaSystem/DataManagerServer/vss/controller/VssChannelTblController.h
+++ b/QiaoJiaSystem/DataManagerServer/vss/controller/VssChannelTblController.h
@@ -1,624 +1,626 @@
-#ifndef VSSCHANNELTBL_CONTROLLER_H
-#define VSSCHANNELTBL_CONTROLLER_H
-
-#include <string>
-#include <DataManagerServer/http_configserver.h>
-#include "vss/dao/VssChannelTblDao.h"
-#include "vss/model/VssChannelTblBuilder.h"
-#include "vss/model/VssChannelTbl.h"
-#include "VssBaseController.h"
-#include <mysql++.h>
-
-using namespace std;
-
-/**
- * 鍒涘缓浜岀骇璁惧琛�
- */
-class VssChannelTblController : public VssBaseController {
-private:
-	/** 鍒涘缓浜岀骇璁惧琛ㄦ瀯閫犲嚱鏁� */
-	VssChannelTblController() {}
-public:
-	/** 鍒涘缓浜岀骇璁惧琛ㄥ崟渚嬫ā寮� */
-    static VssChannelTblController* instance() {
-        static VssChannelTblController instance;
-        return &instance;
-    }
-public:
-	/** 娉ㄥ唽{label}http鏈嶅姟 */
-    void registerHttpServices(HttpSrvRetRecieve& _HttpSrvRetRecieve) {
-
-	    _HttpSrvRetRecieve.setInfo("^/addVssChannelTbl$", "POST",
-	                               std::bind(&VssChannelTblController::addVssChannelTbl, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/delVssChannelTbl$", "POST",
-	                               std::bind(&VssChannelTblController::delVssChannelTbl, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/updateVssChannelTbl$", "POST",
-	                               std::bind(&VssChannelTblController::updateVssChannelTbl, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/findVssChannelTbl$", "POST",
-	                               std::bind(&VssChannelTblController::findVssChannelTbl, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-	
-	    _HttpSrvRetRecieve.setInfo("^/findVssChannelTblList$", "POST",
-	                               std::bind(&VssChannelTblController::findVssChannelTblList, this,
-	                                         std::placeholders::_1, std::placeholders::_2,
-	                                         std::placeholders::_3, std::placeholders::_4));
-
-    }
-public:
-	/** 娣诲姞鍒涘缓浜岀骇璁惧琛� */
-    std::string addVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
-        Json::Reader requestJsonReader;
-        Json::Value requestJsonValue;
-        Json::Value responseJsonValue;
-        responseJsonValue["message"] = "娣诲姞澶辫触锛�";
-        responseJsonValue["success"] = "false";
-        if (requestJsonReader.parse(content, requestJsonValue)) {
-            VssChannelTblBuilder vssChannelTblBuilder;
-	    
-	    	Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
-            if (iDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addID(iDJsonValue.asInt());
-            }
-	    
-	    	Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
-            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDevPubID(devPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
-            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addNickname(nicknameJsonValue.asString());
-            }
-	    
-	    	Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
-            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addChanPubID(chanPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
-            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAlive(aliveJsonValue.asInt());
-            }
-	    
-	    	Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
-            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCorpID(corpIDJsonValue.asString());
-            }
-	    
-	    	Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
-            if (modelJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addModel(modelJsonValue.asString());
-            }
-	    
-	    	Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
-            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addOwner(ownerJsonValue.asString());
-            }
-	    
-	    	Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
-            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCivilCode(civilCodeJsonValue.asString());
-            }
-	    
-	    	Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
-            if (addressJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAddress(addressJsonValue.asString());
-            }
-	    
-	    	Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
-            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParental(parentalJsonValue.asInt());
-            }
-	    
-	    	Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
-            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParentId(parentIdJsonValue.asString());
-            }
-	    
-	    	Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
-            if (iPJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addIP(iPJsonValue.asString());
-            }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
-            if (portJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPort(portJsonValue.asInt());
-            }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
-            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLongitude(longitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
-            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLatitude(latitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
-            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAltitude(altitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
-            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPTZType(pTZTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
-            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addRoomType(roomTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
-            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDirectionType(directionTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
-            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addStreamType(streamTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
-            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDMarker(dMarkerJsonValue.asInt());
-            }
-	    
-	    	Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
-            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addUpdateTime(updateTimeJsonValue.asString());
-            }
-	    	auto keyValuesToAdd = vssChannelTblBuilder.buildVssChannelTblMap();
-	    	if (keyValuesToAdd.size() > 0) {
-	            mysqlpp::SimpleResult addVssChannelTblResult = VssChannelTblDao::instance()->addVssChannelTbl(keyValuesToAdd);
-	            if (addVssChannelTblResult.rows() > 0) {
-		        	responseJsonValue["success"] = "true";
-		        	responseJsonValue["message"] = "娣诲姞鎴愬姛锛�";
-	            }
-            }
-        }
-        return responseJsonValue.toStyledString();
-    }
-    
-    /** 鍒犻櫎鍒涘缓浜岀骇璁惧琛� */
-    std::string delVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
-        Json::Reader requestJsonReader;
-        Json::Value requestJsonValue;
-        Json::Value responseJsonValue;
-        responseJsonValue["message"] = "鍒犻櫎澶辫触锛�";
-        responseJsonValue["success"] = "false";
-        if (requestJsonReader.parse(content, requestJsonValue)) {
-        	Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
-        	if (iDJsonValue.type() != Json::ValueType::nullValue) {
-        		string iDValue = iDJsonValue.asString();
-                if (iDValue.size() > 0 && VssChannelTblDao::instance()->deleteByColumn("ID", iDValue)) {
-        			responseJsonValue["success"] = "true";
-	                responseJsonValue["message"] = "鍒犻櫎鎴愬姛!";
-	            }
-            }
-            
-        }
-        return responseJsonValue.toStyledString();
-    }
-    
-    /** 鏇存柊鍒涘缓浜岀骇璁惧琛� */
-    std::string updateVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
-        Json::Reader requestJsonReader;
-        Json::Value requestJsonValue;
-        Json::Value responseJsonValue;
-        responseJsonValue["message"] = "鏇存柊澶辫触锛�";
-        responseJsonValue["success"] = "false";
-        if (requestJsonReader.parse(content, requestJsonValue)) {
-            VssChannelTblBuilder vssChannelTblBuilder;
-	    
-	    	Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
-            if (iDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addID(iDJsonValue.asInt());
-            }
-	    
-	    	Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
-            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDevPubID(devPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
-            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addNickname(nicknameJsonValue.asString());
-            }
-	    
-	    	Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
-            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addChanPubID(chanPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
-            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAlive(aliveJsonValue.asInt());
-            }
-	    
-	    	Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
-            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCorpID(corpIDJsonValue.asString());
-            }
-	    
-	    	Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
-            if (modelJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addModel(modelJsonValue.asString());
-            }
-	    
-	    	Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
-            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addOwner(ownerJsonValue.asString());
-            }
-	    
-	    	Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
-            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCivilCode(civilCodeJsonValue.asString());
-            }
-	    
-	    	Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
-            if (addressJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAddress(addressJsonValue.asString());
-            }
-	    
-	    	Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
-            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParental(parentalJsonValue.asInt());
-            }
-	    
-	    	Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
-            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParentId(parentIdJsonValue.asString());
-            }
-	    
-	    	Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
-            if (iPJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addIP(iPJsonValue.asString());
-            }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
-            if (portJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPort(portJsonValue.asInt());
-            }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
-            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLongitude(longitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
-            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLatitude(latitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
-            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAltitude(altitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
-            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPTZType(pTZTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
-            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addRoomType(roomTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
-            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDirectionType(directionTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
-            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addStreamType(streamTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
-            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDMarker(dMarkerJsonValue.asInt());
-            }
-	    
-	    	Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
-            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addUpdateTime(updateTimeJsonValue.asString());
-            }
-        	if (iDJsonValue.type() != Json::ValueType::nullValue) {
-        		string iDValue = iDJsonValue.asString();
-                if (iDValue.size() > 0 && VssChannelTblDao::instance()->updateVssChannelTbl(vssChannelTblBuilder.buildVssChannelTblMap(), "ID", iDValue)) {
-        			responseJsonValue["success"] = "true";
-        			responseJsonValue["message"] = "鏇存柊鎴愬姛锛�";
-	            }
-            }
-        }
-        return responseJsonValue.toStyledString();
-    }
-    
-    /** 鏌ユ壘鍗曚釜鍒涘缓浜岀骇璁惧琛� */
-    std::string findVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
-        Json::Reader requestJsonReader;
-        Json::Value requestJsonValue;
-        Json::Value responseJsonValue;
-        responseJsonValue["message"] = "鏌ヨ澶辫触锛�";
-        responseJsonValue["success"] = "false";
-        if (requestJsonReader.parse(content, requestJsonValue)) {
-            VssChannelTblBuilder vssChannelTblBuilder;
-	    
-	    	Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
-            if (iDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addID(iDJsonValue.asInt());
-            }
-	    
-	    	Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
-            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDevPubID(devPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
-            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addNickname(nicknameJsonValue.asString());
-            }
-	    
-	    	Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
-            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addChanPubID(chanPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
-            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAlive(aliveJsonValue.asInt());
-            }
-	    
-	    	Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
-            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCorpID(corpIDJsonValue.asString());
-            }
-	    
-	    	Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
-            if (modelJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addModel(modelJsonValue.asString());
-            }
-	    
-	    	Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
-            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addOwner(ownerJsonValue.asString());
-            }
-	    
-	    	Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
-            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCivilCode(civilCodeJsonValue.asString());
-            }
-	    
-	    	Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
-            if (addressJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAddress(addressJsonValue.asString());
-            }
-	    
-	    	Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
-            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParental(parentalJsonValue.asInt());
-            }
-	    
-	    	Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
-            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParentId(parentIdJsonValue.asString());
-            }
-	    
-	    	Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
-            if (iPJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addIP(iPJsonValue.asString());
-            }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
-            if (portJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPort(portJsonValue.asInt());
-            }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
-            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLongitude(longitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
-            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLatitude(latitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
-            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAltitude(altitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
-            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPTZType(pTZTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
-            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addRoomType(roomTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
-            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDirectionType(directionTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
-            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addStreamType(streamTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
-            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDMarker(dMarkerJsonValue.asInt());
-            }
-	    
-	    	Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
-            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addUpdateTime(updateTimeJsonValue.asString());
-            }
-	        responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
-	        responseJsonValue["success"] = "true";
-	    	responseJsonValue["data"] = VssChannelTblDao::instance()->findJsonArray(string("select * from ") + VSSChannelTbl_TABLE_NAME + " where 1 = 1 limit 1");
-        }
-        return responseJsonValue.toStyledString();
-    }
-    
-    /** 鏌ユ壘鍒涘缓浜岀骇璁惧琛ㄥ垪琛� */
-    std::string findVssChannelTblList(std::string ip, unsigned int port, std::string content, PResponse &response) {
-        Json::Reader requestJsonReader;
-        Json::Value requestJsonValue;
-        Json::Value responseJsonValue;
-        responseJsonValue["message"] = "鏌ヨ澶辫触锛�";
-        responseJsonValue["success"] = "false";
-        if (content == "" || requestJsonReader.parse(content, requestJsonValue)) {
-            VssChannelTblBuilder vssChannelTblBuilder;
-	    
-	    	Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
-            if (iDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addID(iDJsonValue.asInt());
-            }
-	    
-	    	Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
-            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDevPubID(devPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
-            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addNickname(nicknameJsonValue.asString());
-            }
-	    
-	    	Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
-            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addChanPubID(chanPubIDJsonValue.asString());
-            }
-	    
-	    	Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
-            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAlive(aliveJsonValue.asInt());
-            }
-	    
-	    	Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
-            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCorpID(corpIDJsonValue.asString());
-            }
-	    
-	    	Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
-            if (modelJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addModel(modelJsonValue.asString());
-            }
-	    
-	    	Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
-            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addOwner(ownerJsonValue.asString());
-            }
-	    
-	    	Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
-            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addCivilCode(civilCodeJsonValue.asString());
-            }
-	    
-	    	Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
-            if (addressJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAddress(addressJsonValue.asString());
-            }
-	    
-	    	Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
-            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParental(parentalJsonValue.asInt());
-            }
-	    
-	    	Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
-            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addParentId(parentIdJsonValue.asString());
-            }
-	    
-	    	Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
-            if (iPJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addIP(iPJsonValue.asString());
-            }
-	    
-	    	Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
-            if (portJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPort(portJsonValue.asInt());
-            }
-	    
-	    	Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
-            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLongitude(longitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
-            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addLatitude(latitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
-            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addAltitude(altitudeJsonValue.asDouble());
-            }
-	    
-	    	Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
-            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addPTZType(pTZTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
-            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addRoomType(roomTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
-            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDirectionType(directionTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
-            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addStreamType(streamTypeJsonValue.asInt());
-            }
-	    
-	    	Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
-            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addDMarker(dMarkerJsonValue.asInt());
-            }
-	    
-	    	Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
-            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
-                vssChannelTblBuilder.addUpdateTime(updateTimeJsonValue.asString());
-            }
-	        responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
-	        responseJsonValue["success"] = "true";
-	    	responseJsonValue["data"] = VssChannelTblDao::instance()->findJsonArray(string("select * from ") + VSSChannelTbl_TABLE_NAME + " where 1 = 1");
-
-        }
-        return responseJsonValue.toStyledString();
-    }
-};
-
-
-
-
-
-
-#endif //VSSCHANNELTBL_CONTROLLER_H
-
-
-
-
-
+#ifndef VSSCHANNELTBL_CONTROLLER_H
+#define VSSCHANNELTBL_CONTROLLER_H
+
+#include <string>
+#include <DataManagerServer/http_configserver.h>
+#include "vss/dao/VssChannelTblDao.h"
+#include "vss/model/VssChannelTblBuilder.h"
+#include "vss/model/VssChannelTbl.h"
+#include "VssBaseController.h"
+#include <mysql++.h>
+
+using namespace std;
+
+/**
+ * 鍒涘缓浜岀骇璁惧琛�
+ */
+class VssChannelTblController : public VssBaseController {
+private:
+    /** 鍒涘缓浜岀骇璁惧琛ㄦ瀯閫犲嚱鏁� */
+    VssChannelTblController() {}
+public:
+    /** 鍒涘缓浜岀骇璁惧琛ㄥ崟渚嬫ā寮� */
+    static VssChannelTblController* instance() {
+        static VssChannelTblController instance;
+        return &instance;
+    }
+public:
+    /** 娉ㄥ唽{label}http鏈嶅姟 */
+    void registerHttpServices(HttpSrvRetRecieve& _HttpSrvRetRecieve) {
+
+        _HttpSrvRetRecieve.setInfo("^/addVssChannelTbl$", "POST",
+                                   std::bind(&VssChannelTblController::addVssChannelTbl, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/delVssChannelTbl$", "POST",
+                                   std::bind(&VssChannelTblController::delVssChannelTbl, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/updateVssChannelTbl$", "POST",
+                                   std::bind(&VssChannelTblController::updateVssChannelTbl, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/findVssChannelTbl$", "POST",
+                                   std::bind(&VssChannelTblController::findVssChannelTbl, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+        _HttpSrvRetRecieve.setInfo("^/findVssChannelTblList$", "POST",
+                                   std::bind(&VssChannelTblController::findVssChannelTblList, this,
+                                             std::placeholders::_1, std::placeholders::_2,
+                                             std::placeholders::_3, std::placeholders::_4));
+
+    }
+public:
+    /** 娣诲姞鍒涘缓浜岀骇璁惧琛� */
+    std::string addVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
+        Json::Reader requestJsonReader;
+        Json::Value requestJsonValue;
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "娣诲姞澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        if (requestJsonReader.parse(content, requestJsonValue)) {
+            VssChannelTblBuilder vssChannelTblBuilder;
+
+            Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
+            if (iDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addID(std::stoi((iDJsonValue.asString())));
+            }
+
+            Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
+            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDevPubID((devPubIDJsonValue.asString()));
+            }
+
+            Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
+            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addNickname((nicknameJsonValue.asString()));
+            }
+
+            Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
+            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addChanPubID((chanPubIDJsonValue.asString()));
+            }
+
+            Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
+            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAlive(std::stoi((aliveJsonValue.asString())));
+            }
+
+            Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
+            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCorpID((corpIDJsonValue.asString()));
+            }
+
+            Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
+            if (modelJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addModel((modelJsonValue.asString()));
+            }
+
+            Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
+            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addOwner((ownerJsonValue.asString()));
+            }
+
+            Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
+            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCivilCode((civilCodeJsonValue.asString()));
+            }
+
+            Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
+            if (addressJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAddress((addressJsonValue.asString()));
+            }
+
+            Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
+            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParental(std::stoi((parentalJsonValue.asString())));
+            }
+
+            Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
+            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParentId((parentIdJsonValue.asString()));
+            }
+
+            Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
+            if (iPJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addIP((iPJsonValue.asString()));
+            }
+
+            Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
+            if (portJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPort(std::stoi((portJsonValue.asString())));
+            }
+
+            Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
+            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLongitude(std::stod((longitudeJsonValue.asString())));
+            }
+
+            Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
+            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLatitude(std::stod((latitudeJsonValue.asString())));
+            }
+
+            Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
+            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAltitude(std::stod((altitudeJsonValue.asString())));
+            }
+
+            Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
+            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPTZType(std::stoi((pTZTypeJsonValue.asString())));
+            }
+
+            Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
+            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addRoomType(std::stoi((roomTypeJsonValue.asString())));
+            }
+
+            Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
+            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDirectionType(std::stoi((directionTypeJsonValue.asString())));
+            }
+
+            Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
+            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addStreamType(std::stoi((streamTypeJsonValue.asString())));
+            }
+
+            Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
+            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDMarker(std::stoi((dMarkerJsonValue.asString())));
+            }
+
+            Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
+            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addUpdateTime((updateTimeJsonValue.asString()));
+            }
+            auto keyValuesToAdd = vssChannelTblBuilder.buildVssChannelTblMap();
+            if (keyValuesToAdd.size() > 0) {
+                mysqlpp::SimpleResult addVssChannelTblResult = VssChannelTblDao::instance()->addVssChannelTbl(keyValuesToAdd);
+                if (addVssChannelTblResult.rows() > 0) {
+                    responseJsonValue["success"] = "true";
+                    responseJsonValue["message"] = "娣诲姞鎴愬姛锛�";
+                }
+            }
+        }
+        return responseJsonValue.toStyledString();
+    }
+
+    /** 鍒犻櫎鍒涘缓浜岀骇璁惧琛� */
+    std::string delVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
+        Json::Reader requestJsonReader;
+        Json::Value requestJsonValue;
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "鍒犻櫎澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        if (requestJsonReader.parse(content, requestJsonValue)) {
+            Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
+            if (iDJsonValue.type() != Json::ValueType::nullValue) {
+                string iDValue = iDJsonValue.asString();
+                if (iDValue.size() > 0 && VssChannelTblDao::instance()->deleteByColumn("ID", iDValue)) {
+                    responseJsonValue["success"] = "true";
+                    responseJsonValue["message"] = "鍒犻櫎鎴愬姛!";
+                }
+            }
+
+        }
+        return responseJsonValue.toStyledString();
+    }
+
+    /** 鏇存柊鍒涘缓浜岀骇璁惧琛� */
+    std::string updateVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
+        Json::Reader requestJsonReader;
+        Json::Value requestJsonValue;
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "鏇存柊澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        if (requestJsonReader.parse(content, requestJsonValue)) {
+            VssChannelTblBuilder vssChannelTblBuilder;
+
+            Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
+            if (iDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addID(std::stoi((iDJsonValue.asString())));
+            }
+
+            Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
+            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDevPubID((devPubIDJsonValue.asString()));
+            }
+
+            Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
+            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addNickname((nicknameJsonValue.asString()));
+            }
+
+            Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
+            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addChanPubID((chanPubIDJsonValue.asString()));
+            }
+
+            Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
+            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAlive(std::stoi((aliveJsonValue.asString())));
+            }
+
+            Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
+            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCorpID((corpIDJsonValue.asString()));
+            }
+
+            Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
+            if (modelJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addModel((modelJsonValue.asString()));
+            }
+
+            Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
+            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addOwner((ownerJsonValue.asString()));
+            }
+
+            Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
+            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCivilCode((civilCodeJsonValue.asString()));
+            }
+
+            Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
+            if (addressJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAddress((addressJsonValue.asString()));
+            }
+
+            Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
+            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParental(std::stoi((parentalJsonValue.asString())));
+            }
+
+            Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
+            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParentId((parentIdJsonValue.asString()));
+            }
+
+            Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
+            if (iPJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addIP((iPJsonValue.asString()));
+            }
+
+            Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
+            if (portJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPort(std::stoi((portJsonValue.asString())));
+            }
+
+            Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
+            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLongitude(std::stod((longitudeJsonValue.asString())));
+            }
+
+            Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
+            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLatitude(std::stod((latitudeJsonValue.asString())));
+            }
+
+            Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
+            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAltitude(std::stod((altitudeJsonValue.asString())));
+            }
+
+            Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
+            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPTZType(std::stoi((pTZTypeJsonValue.asString())));
+            }
+
+            Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
+            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addRoomType(std::stoi((roomTypeJsonValue.asString())));
+            }
+
+            Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
+            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDirectionType(std::stoi((directionTypeJsonValue.asString())));
+            }
+
+            Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
+            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addStreamType(std::stoi((streamTypeJsonValue.asString())));
+            }
+
+            Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
+            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDMarker(std::stoi((dMarkerJsonValue.asString())));
+            }
+
+            Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
+            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addUpdateTime((updateTimeJsonValue.asString()));
+            }
+            if (iDJsonValue.type() != Json::ValueType::nullValue) {
+                string iDValue = iDJsonValue.asString();
+                if (iDValue.size() > 0 && VssChannelTblDao::instance()->updateVssChannelTbl(vssChannelTblBuilder.buildVssChannelTblMap(), "ID", iDValue)) {
+                    responseJsonValue["success"] = "true";
+                    responseJsonValue["message"] = "鏇存柊鎴愬姛锛�";
+                }
+            }
+        }
+        return responseJsonValue.toStyledString();
+    }
+
+    /** 鏌ユ壘鍗曚釜鍒涘缓浜岀骇璁惧琛� */
+    std::string findVssChannelTbl(std::string ip, unsigned int port, std::string content, PResponse &response) {
+        Json::Reader requestJsonReader;
+        Json::Value requestJsonValue;
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "鏌ヨ澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        if (requestJsonReader.parse(content, requestJsonValue)) {
+            VssChannelTblBuilder vssChannelTblBuilder;
+
+            Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
+            if (iDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addID(std::stoi((iDJsonValue.asString())));
+            }
+
+            Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
+            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDevPubID((devPubIDJsonValue.asString()));
+            }
+
+            Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
+            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addNickname((nicknameJsonValue.asString()));
+            }
+
+            Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
+            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addChanPubID((chanPubIDJsonValue.asString()));
+            }
+
+            Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
+            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAlive(std::stoi((aliveJsonValue.asString())));
+            }
+
+            Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
+            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCorpID((corpIDJsonValue.asString()));
+            }
+
+            Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
+            if (modelJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addModel((modelJsonValue.asString()));
+            }
+
+            Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
+            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addOwner((ownerJsonValue.asString()));
+            }
+
+            Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
+            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCivilCode((civilCodeJsonValue.asString()));
+            }
+
+            Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
+            if (addressJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAddress((addressJsonValue.asString()));
+            }
+
+            Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
+            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParental(std::stoi((parentalJsonValue.asString())));
+            }
+
+            Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
+            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParentId((parentIdJsonValue.asString()));
+            }
+
+            Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
+            if (iPJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addIP((iPJsonValue.asString()));
+            }
+
+            Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
+            if (portJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPort(std::stoi((portJsonValue.asString())));
+            }
+
+            Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
+            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLongitude(std::stod((longitudeJsonValue.asString())));
+            }
+
+            Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
+            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLatitude(std::stod((latitudeJsonValue.asString())));
+            }
+
+            Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
+            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAltitude(std::stod((altitudeJsonValue.asString())));
+            }
+
+            Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
+            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPTZType(std::stoi((pTZTypeJsonValue.asString())));
+            }
+
+            Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
+            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addRoomType(std::stoi((roomTypeJsonValue.asString())));
+            }
+
+            Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
+            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDirectionType(std::stoi((directionTypeJsonValue.asString())));
+            }
+
+            Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
+            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addStreamType(std::stoi((streamTypeJsonValue.asString())));
+            }
+
+            Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
+            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDMarker(std::stoi((dMarkerJsonValue.asString())));
+            }
+
+            Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
+            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addUpdateTime((updateTimeJsonValue.asString()));
+            }
+            responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
+            responseJsonValue["success"] = "true";
+            responseJsonValue["data"] = VssChannelTblDao::instance()->findJsonArray(string("select * from ") + VSSChannelTbl_TABLE_NAME + " where 1 = 1 limit 1", vssChannelTblBuilder.buildVssChannelTblMap());
+        }
+        return responseJsonValue.toStyledString();
+    }
+
+    /** 鏌ユ壘鍒涘缓浜岀骇璁惧琛ㄥ垪琛� */
+    std::string findVssChannelTblList(std::string ip, unsigned int port, std::string content, PResponse &response) {
+        Json::Reader requestJsonReader;
+        Json::Value requestJsonValue;
+        Json::Value responseJsonValue;
+        responseJsonValue["message"] = "鏌ヨ澶辫触锛�";
+        responseJsonValue["success"] = "false";
+        if (content == "" || requestJsonReader.parse(content, requestJsonValue)) {
+            VssChannelTblBuilder vssChannelTblBuilder;
+
+            Json::Value iDJsonValue = requestJsonValue[VssChannelTbl_ID];
+            if (iDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addID(std::stoi((iDJsonValue.asString())));
+            }
+
+            Json::Value devPubIDJsonValue = requestJsonValue[VssChannelTbl_DevPubID];
+            if (devPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDevPubID((devPubIDJsonValue.asString()));
+            }
+
+            Json::Value nicknameJsonValue = requestJsonValue[VssChannelTbl_Nickname];
+            if (nicknameJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addNickname((nicknameJsonValue.asString()));
+            }
+
+            Json::Value chanPubIDJsonValue = requestJsonValue[VssChannelTbl_ChanPubID];
+            if (chanPubIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addChanPubID((chanPubIDJsonValue.asString()));
+            }
+
+            Json::Value aliveJsonValue = requestJsonValue[VssChannelTbl_Alive];
+            if (aliveJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAlive(std::stoi((aliveJsonValue.asString())));
+            }
+
+            Json::Value corpIDJsonValue = requestJsonValue[VssChannelTbl_CorpID];
+            if (corpIDJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCorpID((corpIDJsonValue.asString()));
+            }
+
+            Json::Value modelJsonValue = requestJsonValue[VssChannelTbl_Model];
+            if (modelJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addModel((modelJsonValue.asString()));
+            }
+
+            Json::Value ownerJsonValue = requestJsonValue[VssChannelTbl_Owner];
+            if (ownerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addOwner((ownerJsonValue.asString()));
+            }
+
+            Json::Value civilCodeJsonValue = requestJsonValue[VssChannelTbl_CivilCode];
+            if (civilCodeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addCivilCode((civilCodeJsonValue.asString()));
+            }
+
+            Json::Value addressJsonValue = requestJsonValue[VssChannelTbl_Address];
+            if (addressJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAddress((addressJsonValue.asString()));
+            }
+
+            Json::Value parentalJsonValue = requestJsonValue[VssChannelTbl_Parental];
+            if (parentalJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParental(std::stoi((parentalJsonValue.asString())));
+            }
+
+            Json::Value parentIdJsonValue = requestJsonValue[VssChannelTbl_ParentId];
+            if (parentIdJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addParentId((parentIdJsonValue.asString()));
+            }
+
+            Json::Value iPJsonValue = requestJsonValue[VssChannelTbl_IP];
+            if (iPJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addIP((iPJsonValue.asString()));
+            }
+
+            Json::Value portJsonValue = requestJsonValue[VssChannelTbl_Port];
+            if (portJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPort(std::stoi((portJsonValue.asString())));
+            }
+
+            Json::Value longitudeJsonValue = requestJsonValue[VssChannelTbl_Longitude];
+            if (longitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLongitude(std::stod((longitudeJsonValue.asString())));
+            }
+
+            Json::Value latitudeJsonValue = requestJsonValue[VssChannelTbl_Latitude];
+            if (latitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addLatitude(std::stod((latitudeJsonValue.asString())));
+            }
+
+            Json::Value altitudeJsonValue = requestJsonValue[VssChannelTbl_Altitude];
+            if (altitudeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addAltitude(std::stod((altitudeJsonValue.asString())));
+            }
+
+            Json::Value pTZTypeJsonValue = requestJsonValue[VssChannelTbl_PTZType];
+            if (pTZTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addPTZType(std::stoi((pTZTypeJsonValue.asString())));
+            }
+
+            Json::Value roomTypeJsonValue = requestJsonValue[VssChannelTbl_RoomType];
+            if (roomTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addRoomType(std::stoi((roomTypeJsonValue.asString())));
+            }
+
+            Json::Value directionTypeJsonValue = requestJsonValue[VssChannelTbl_DirectionType];
+            if (directionTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDirectionType(std::stoi((directionTypeJsonValue.asString())));
+            }
+
+            Json::Value streamTypeJsonValue = requestJsonValue[VssChannelTbl_StreamType];
+            if (streamTypeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addStreamType(std::stoi((streamTypeJsonValue.asString())));
+            }
+
+            Json::Value dMarkerJsonValue = requestJsonValue[VssChannelTbl_DMarker];
+            if (dMarkerJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addDMarker(std::stoi((dMarkerJsonValue.asString())));
+            }
+
+            Json::Value updateTimeJsonValue = requestJsonValue[VssChannelTbl_UpdateTime];
+            if (updateTimeJsonValue.type() != Json::ValueType::nullValue) {
+                vssChannelTblBuilder.addUpdateTime((updateTimeJsonValue.asString()));
+            }
+            responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�";
+            responseJsonValue["success"] = "true";
+            responseJsonValue["data"] = VssChannelTblDao::instance()->findJsonArray(string("select * from ") +
+                                                                                    VSSChannelTbl_TABLE_NAME + " where 1 = 1"
+                                                                                    , vssChannelTblBuilder.buildVssChannelTblMap());
+
+        }
+        return responseJsonValue.toStyledString();
+    }
+};
+
+
+
+
+
+
+#endif //VSSCHANNELTBL_CONTROLLER_H
+
+
+
+
+

--
Gitblit v1.8.0