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