From bcf8d8c62fdf61c4c3091bbf0db32383cbd5ea9e Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期四, 28 二月 2019 14:24:09 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/yw.1.2.fixbug' into yw.1.2 --- QiaoJiaSystem/DataManagerServer/vss/controller/VssLocalSettingTblController.h | 298 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 298 insertions(+), 0 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/vss/controller/VssLocalSettingTblController.h b/QiaoJiaSystem/DataManagerServer/vss/controller/VssLocalSettingTblController.h new file mode 100755 index 0000000..589e536 --- /dev/null +++ b/QiaoJiaSystem/DataManagerServer/vss/controller/VssLocalSettingTblController.h @@ -0,0 +1,298 @@ +#ifndef VSSLOCALSETTINGTBL_CONTROLLER_H +#define VSSLOCALSETTINGTBL_CONTROLLER_H + +#include <string> +#include <DataManagerServer/http_configserver.h> +#include "vss/dao/VssLocalSettingTblDao.h" +#include "vss/dao/VssLocalSettingTblSqliteDao.h" +#include "vss/model/VssLocalSettingTblBuilder.h" +#include "vss/model/VssLocalSettingTbl.h" +#include "VssBaseController.h" +#include <mysql++.h> + +using namespace std; + +/** + * 鏈湴鍥芥爣閰嶇疆 + */ +class VssLocalSettingTblController : public VssBaseController { +private: + /** 鏈湴鍥芥爣閰嶇疆鏋勯�犲嚱鏁� */ + VssLocalSettingTblController() {} +public: + /** 鏈湴鍥芥爣閰嶇疆鍗曚緥妯″紡 */ + static VssLocalSettingTblController* instance() { + static VssLocalSettingTblController instance; + return &instance; + } +public: + /** 娉ㄥ唽{label}http鏈嶅姟 */ + void registerHttpServices(HttpSrvRetRecieve& _HttpSrvRetRecieve) { + + _HttpSrvRetRecieve.setInfo("^/addVssLocalSettingTbl$", "POST", + std::bind(&VssLocalSettingTblController::addVssLocalSettingTbl, this, + std::placeholders::_1, std::placeholders::_2, + std::placeholders::_3, std::placeholders::_4)); + + _HttpSrvRetRecieve.setInfo("^/delVssLocalSettingTbl$", "POST", + std::bind(&VssLocalSettingTblController::delVssLocalSettingTbl, this, + std::placeholders::_1, std::placeholders::_2, + std::placeholders::_3, std::placeholders::_4)); + + _HttpSrvRetRecieve.setInfo("^/updateVssLocalSettingTbl$", "POST", + std::bind(&VssLocalSettingTblController::updateVssLocalSettingTbl, this, + std::placeholders::_1, std::placeholders::_2, + std::placeholders::_3, std::placeholders::_4)); + + _HttpSrvRetRecieve.setInfo("^/findVssLocalSettingTbl$", "POST", + std::bind(&VssLocalSettingTblController::findVssLocalSettingTbl, this, + std::placeholders::_1, std::placeholders::_2, + std::placeholders::_3, std::placeholders::_4)); + + _HttpSrvRetRecieve.setInfo("^/findVssLocalSettingTblList$", "POST", + std::bind(&VssLocalSettingTblController::findVssLocalSettingTblList, this, + std::placeholders::_1, std::placeholders::_2, + std::placeholders::_3, std::placeholders::_4)); + + } +public: + /** 娣诲姞鏈湴鍥芥爣閰嶇疆 */ + std::string addVssLocalSettingTbl(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)) { + VssLocalSettingTblBuilder vssLocalSettingTblBuilder; + + Json::Value iDJsonValue = requestJsonValue[VssLocalSettingTbl_ID]; + if (iDJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addID(std::stoi(iDJsonValue.asString())); + } + + Json::Value serverIpJsonValue = requestJsonValue[VssLocalSettingTbl_ServerIp]; + if (serverIpJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerIp(serverIpJsonValue.asString()); + } + + Json::Value serverPortJsonValue = requestJsonValue[VssLocalSettingTbl_ServerPort]; + if (serverPortJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerPort(serverPortJsonValue.asString()); + } + + Json::Value serverIdJsonValue = requestJsonValue[VssLocalSettingTbl_ServerId]; + if (serverIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerId(serverIdJsonValue.asString()); + } + + Json::Value userAuthIdJsonValue = requestJsonValue[VssLocalSettingTbl_UserAuthId]; + if (userAuthIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUserAuthId(userAuthIdJsonValue.asString()); + } + + Json::Value passwordJsonValue = requestJsonValue[VssLocalSettingTbl_Password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addPassword(passwordJsonValue.asString()); + } + + Json::Value updateTimeJsonValue = requestJsonValue[VssLocalSettingTbl_UpdateTime]; + if (updateTimeJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUpdateTime(updateTimeJsonValue.asString()); + } + auto keyValuesToAdd = vssLocalSettingTblBuilder.buildVssLocalSettingTblMap(); + if (keyValuesToAdd.size() > 0) { + responseJsonValue = VssLocalSettingTblSqliteDao::instance()->addVssLocalSettingTbl(keyValuesToAdd); + } + } + return responseJsonValue.toStyledString(); + } + + /** 鍒犻櫎鏈湴鍥芥爣閰嶇疆 */ + std::string delVssLocalSettingTbl(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[VssLocalSettingTbl_ID]; + if (iDJsonValue.type() != Json::ValueType::nullValue) { + string iDValue = iDJsonValue.asString(); + responseJsonValue = VssLocalSettingTblSqliteDao::instance()->deleteByColumn("ID", iDValue); + } + + } + return responseJsonValue.toStyledString(); + } + + /** 鏇存柊鏈湴鍥芥爣閰嶇疆 */ + std::string updateVssLocalSettingTbl(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)) { + VssLocalSettingTblBuilder vssLocalSettingTblBuilder; + + Json::Value iDJsonValue = requestJsonValue[VssLocalSettingTbl_ID]; + if (iDJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addID(std::stoi(iDJsonValue.asString())); + } + + Json::Value serverIpJsonValue = requestJsonValue[VssLocalSettingTbl_ServerIp]; + if (serverIpJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerIp(serverIpJsonValue.asString()); + } + + Json::Value serverPortJsonValue = requestJsonValue[VssLocalSettingTbl_ServerPort]; + if (serverPortJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerPort(serverPortJsonValue.asString()); + } + + Json::Value serverIdJsonValue = requestJsonValue[VssLocalSettingTbl_ServerId]; + if (serverIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerId(serverIdJsonValue.asString()); + } + + Json::Value userAuthIdJsonValue = requestJsonValue[VssLocalSettingTbl_UserAuthId]; + if (userAuthIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUserAuthId(userAuthIdJsonValue.asString()); + } + + Json::Value passwordJsonValue = requestJsonValue[VssLocalSettingTbl_Password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addPassword(passwordJsonValue.asString()); + } + + Json::Value updateTimeJsonValue = requestJsonValue[VssLocalSettingTbl_UpdateTime]; + if (updateTimeJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUpdateTime(updateTimeJsonValue.asString()); + } + if (iDJsonValue.type() != Json::ValueType::nullValue) { + string iDValue = iDJsonValue.asString(); + if (iDValue.size() > 0 && VssLocalSettingTblSqliteDao::instance()->updateVssLocalSettingTbl(vssLocalSettingTblBuilder.buildVssLocalSettingTblMap(), "ID", iDValue)) { + responseJsonValue["success"] = "true"; + responseJsonValue["message"] = "鏇存柊鎴愬姛锛�"; + } + } + } + return responseJsonValue.toStyledString(); + } + + /** 鏌ユ壘鍗曚釜鏈湴鍥芥爣閰嶇疆 */ + std::string findVssLocalSettingTbl(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)) { + VssLocalSettingTblBuilder vssLocalSettingTblBuilder; + + Json::Value iDJsonValue = requestJsonValue[VssLocalSettingTbl_ID]; + if (iDJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addID(std::stoi(iDJsonValue.asString())); + } + + Json::Value serverIpJsonValue = requestJsonValue[VssLocalSettingTbl_ServerIp]; + if (serverIpJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerIp(serverIpJsonValue.asString()); + } + + Json::Value serverPortJsonValue = requestJsonValue[VssLocalSettingTbl_ServerPort]; + if (serverPortJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerPort(serverPortJsonValue.asString()); + } + + Json::Value serverIdJsonValue = requestJsonValue[VssLocalSettingTbl_ServerId]; + if (serverIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerId(serverIdJsonValue.asString()); + } + + Json::Value userAuthIdJsonValue = requestJsonValue[VssLocalSettingTbl_UserAuthId]; + if (userAuthIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUserAuthId(userAuthIdJsonValue.asString()); + } + + Json::Value passwordJsonValue = requestJsonValue[VssLocalSettingTbl_Password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addPassword(passwordJsonValue.asString()); + } + + Json::Value updateTimeJsonValue = requestJsonValue[VssLocalSettingTbl_UpdateTime]; + if (updateTimeJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUpdateTime(updateTimeJsonValue.asString()); + } + responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�"; + responseJsonValue["success"] = "true"; + responseJsonValue["data"] = VssLocalSettingTblSqliteDao::instance()->findJsonArray(string("select * from ") + VSSLocalSettingTbl_TABLE_NAME + " where 1 = 1 limit 1"); + } + return responseJsonValue.toStyledString(); + } + + /** 鏌ユ壘鏈湴鍥芥爣閰嶇疆鍒楄〃 */ + std::string findVssLocalSettingTblList(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)) { + VssLocalSettingTblBuilder vssLocalSettingTblBuilder; + + Json::Value iDJsonValue = requestJsonValue[VssLocalSettingTbl_ID]; + if (iDJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addID(std::stoi(iDJsonValue.asString())); + } + + Json::Value serverIpJsonValue = requestJsonValue[VssLocalSettingTbl_ServerIp]; + if (serverIpJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerIp(serverIpJsonValue.asString()); + } + + Json::Value serverPortJsonValue = requestJsonValue[VssLocalSettingTbl_ServerPort]; + if (serverPortJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerPort(serverPortJsonValue.asString()); + } + + Json::Value serverIdJsonValue = requestJsonValue[VssLocalSettingTbl_ServerId]; + if (serverIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addServerId(serverIdJsonValue.asString()); + } + + Json::Value userAuthIdJsonValue = requestJsonValue[VssLocalSettingTbl_UserAuthId]; + if (userAuthIdJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUserAuthId(userAuthIdJsonValue.asString()); + } + + Json::Value passwordJsonValue = requestJsonValue[VssLocalSettingTbl_Password]; + if (passwordJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addPassword(passwordJsonValue.asString()); + } + + Json::Value updateTimeJsonValue = requestJsonValue[VssLocalSettingTbl_UpdateTime]; + if (updateTimeJsonValue.type() != Json::ValueType::nullValue) { + vssLocalSettingTblBuilder.addUpdateTime(updateTimeJsonValue.asString()); + } + responseJsonValue["message"] = "鏌ヨ鎴愬姛锛�"; + responseJsonValue["success"] = "true"; + responseJsonValue = VssLocalSettingTblSqliteDao::instance()->findVssLocalSettingTblList(vssLocalSettingTblBuilder.buildVssLocalSettingTblMap()); + + } + return responseJsonValue.toStyledString(); + } +}; + + + + + + +#endif //VSSLOCALSETTINGTBL_CONTROLLER_H + + + + + -- Gitblit v1.8.0