From e634f49a3b619017a3d040d1bdf68aebad07ae4f Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期二, 05 三月 2019 09:26:54 +0800 Subject: [PATCH] Merge branch 'yw.1.2.fixbug' of ssh://192.168.1.226:29418/development/c++ into yw.1.2 --- QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h | 412 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 412 insertions(+), 0 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h b/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h new file mode 100755 index 0000000..a8675c4 --- /dev/null +++ b/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h @@ -0,0 +1,412 @@ +#ifndef CAMDEV_CONTROLLER_H +#define CAMDEV_CONTROLLER_H + +#include <string> +#include <DataManagerServer/http_configserver.h> +#include "vss/dao/CamDevSqliteDao.h" +#include "vss/model/CamDevBuilder.h" +#include "vss/model/CamDev.h" +#include "VssBaseController.h" +#include <mysql++.h> + +using namespace std; + +/** + * 鎽勫儚澶磋澶� + */ +class CamDevController : public VssBaseController { +private: + /** 鎽勫儚澶磋澶囨瀯閫犲嚱鏁� */ + CamDevController() {} +public: + /** 鎽勫儚澶磋澶囧崟渚嬫ā寮� */ + static CamDevController* instance() { + static CamDevController instance; + return &instance; + } +public: + /** 娉ㄥ唽{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)); + + } +public: + /** 娣诲姞鎽勫儚澶磋澶� */ + std::string addCamDev(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)) { + CamDevBuilder camDevBuilder; + + 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]; + if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString())); + } + + Json::Value nameJsonValue = requestJsonValue[CamDev_name]; + if (nameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addname((nameJsonValue.asString())); + } + + Json::Value addrJsonValue = requestJsonValue[CamDev_addr]; + if (addrJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addaddr((addrJsonValue.asString())); + } + + Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude]; + if (longitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlongitude((longitudeJsonValue.asString())); + } + + Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude]; + if (latitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlatitude((latitudeJsonValue.asString())); + } + + Json::Value ipJsonValue = requestJsonValue[CamDev_ip]; + if (ipJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addip((ipJsonValue.asString())); + } + + Json::Value portJsonValue = requestJsonValue[CamDev_port]; + if (portJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addport(std::stoi((portJsonValue.asString()))); + } + + Json::Value usernameJsonValue = requestJsonValue[CamDev_username]; + if (usernameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addusername((usernameJsonValue.asString())); + } + + Json::Value passwordJsonValue = requestJsonValue[CamDev_password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addpassword((passwordJsonValue.asString())); + } + + Json::Value brandJsonValue = requestJsonValue[CamDev_brand]; + if (brandJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addbrand((brandJsonValue.asString())); + } + + Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved]; + if (reservedJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addreserved((reservedJsonValue.asString())); + } + + Json::Value typeJsonValue = requestJsonValue[CamDev_type]; + if (typeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addtype((typeJsonValue.asString())); + } + 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; + Json::Value requestJsonValue; + Json::Value responseJsonValue; + responseJsonValue["message"] = "鍒犻櫎澶辫触锛�"; + responseJsonValue["success"] = "false"; + if (requestJsonReader.parse(content, requestJsonValue)) { + 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; + Json::Value requestJsonValue; + Json::Value responseJsonValue; + responseJsonValue["message"] = "鏇存柊澶辫触锛�"; + responseJsonValue["success"] = "false"; + if (requestJsonReader.parse(content, requestJsonValue)) { + CamDevBuilder camDevBuilder; + + 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]; + if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString())); + } + + Json::Value nameJsonValue = requestJsonValue[CamDev_name]; + if (nameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addname((nameJsonValue.asString())); + } + + Json::Value addrJsonValue = requestJsonValue[CamDev_addr]; + if (addrJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addaddr((addrJsonValue.asString())); + } + + Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude]; + if (longitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlongitude((longitudeJsonValue.asString())); + } + + Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude]; + if (latitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlatitude((latitudeJsonValue.asString())); + } + + Json::Value ipJsonValue = requestJsonValue[CamDev_ip]; + if (ipJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addip((ipJsonValue.asString())); + } + + Json::Value portJsonValue = requestJsonValue[CamDev_port]; + if (portJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addport(std::stoi((portJsonValue.asString()))); + } + + Json::Value usernameJsonValue = requestJsonValue[CamDev_username]; + if (usernameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addusername((usernameJsonValue.asString())); + } + + Json::Value passwordJsonValue = requestJsonValue[CamDev_password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addpassword((passwordJsonValue.asString())); + } + + Json::Value brandJsonValue = requestJsonValue[CamDev_brand]; + if (brandJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addbrand((brandJsonValue.asString())); + } + + Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved]; + if (reservedJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addreserved((reservedJsonValue.asString())); + } + + Json::Value typeJsonValue = requestJsonValue[CamDev_type]; + if (typeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addtype((typeJsonValue.asString())); + } + 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; + Json::Value requestJsonValue; + Json::Value responseJsonValue; + responseJsonValue["message"] = "鏌ヨ澶辫触锛�"; + responseJsonValue["success"] = "false"; + if (requestJsonReader.parse(content, requestJsonValue)) { + CamDevBuilder camDevBuilder; + + 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]; + if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString())); + } + + Json::Value nameJsonValue = requestJsonValue[CamDev_name]; + if (nameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addname((nameJsonValue.asString())); + } + + Json::Value addrJsonValue = requestJsonValue[CamDev_addr]; + if (addrJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addaddr((addrJsonValue.asString())); + } + + Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude]; + if (longitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlongitude((longitudeJsonValue.asString())); + } + + Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude]; + if (latitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlatitude((latitudeJsonValue.asString())); + } + + Json::Value ipJsonValue = requestJsonValue[CamDev_ip]; + if (ipJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addip((ipJsonValue.asString())); + } + + Json::Value portJsonValue = requestJsonValue[CamDev_port]; + if (portJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addport(std::stoi((portJsonValue.asString()))); + } + + Json::Value usernameJsonValue = requestJsonValue[CamDev_username]; + if (usernameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addusername((usernameJsonValue.asString())); + } + + Json::Value passwordJsonValue = requestJsonValue[CamDev_password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addpassword((passwordJsonValue.asString())); + } + + Json::Value brandJsonValue = requestJsonValue[CamDev_brand]; + if (brandJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addbrand((brandJsonValue.asString())); + } + + Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved]; + if (reservedJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addreserved((reservedJsonValue.asString())); + } + + Json::Value typeJsonValue = requestJsonValue[CamDev_type]; + if (typeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addtype((typeJsonValue.asString())); + } + 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; + Json::Value requestJsonValue; + Json::Value responseJsonValue; + responseJsonValue["message"] = "鏌ヨ澶辫触锛�"; + responseJsonValue["success"] = "false"; + if (content == "" || requestJsonReader.parse(content, requestJsonValue)) { + CamDevBuilder camDevBuilder; + + 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]; + if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString())); + } + + Json::Value nameJsonValue = requestJsonValue[CamDev_name]; + if (nameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addname((nameJsonValue.asString())); + } + + Json::Value addrJsonValue = requestJsonValue[CamDev_addr]; + if (addrJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addaddr((addrJsonValue.asString())); + } + + Json::Value longitudeJsonValue = requestJsonValue[CamDev_longitude]; + if (longitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlongitude((longitudeJsonValue.asString())); + } + + Json::Value latitudeJsonValue = requestJsonValue[CamDev_latitude]; + if (latitudeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addlatitude((latitudeJsonValue.asString())); + } + + Json::Value ipJsonValue = requestJsonValue[CamDev_ip]; + if (ipJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addip((ipJsonValue.asString())); + } + + Json::Value portJsonValue = requestJsonValue[CamDev_port]; + if (portJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addport(std::stoi((portJsonValue.asString()))); + } + + Json::Value usernameJsonValue = requestJsonValue[CamDev_username]; + if (usernameJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addusername((usernameJsonValue.asString())); + } + + Json::Value passwordJsonValue = requestJsonValue[CamDev_password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addpassword((passwordJsonValue.asString())); + } + + Json::Value brandJsonValue = requestJsonValue[CamDev_brand]; + if (brandJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addbrand((brandJsonValue.asString())); + } + + Json::Value reservedJsonValue = requestJsonValue[CamDev_reserved]; + if (reservedJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addreserved((reservedJsonValue.asString())); + } + + Json::Value typeJsonValue = requestJsonValue[CamDev_type]; + if (typeJsonValue.type() != Json::ValueType::nullValue) { + camDevBuilder.addtype((typeJsonValue.asString())); + } + responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�"; + responseJsonValue["success"] = "true"; + responseJsonValue = CamDevSqliteDao::instance()->findCamDevList(camDevBuilder.buildCamDevMap()); + + } + return responseJsonValue.toStyledString(); + } +}; + + + + + + +#endif //CAMDEV_CONTROLLER_H + + + + -- Gitblit v1.8.0