From c56015c5c73861b5f794cac48064d0394f8fd37d Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期二, 02 四月 2019 15:48:39 +0800 Subject: [PATCH] 对抓拍记录的picMaxUrl字段赋值(大图路径) --- QiaoJiaSystem/DataManagerServer/vss/dao/BaseDao.h | 65 +++++++++++++++----------------- 1 files changed, 30 insertions(+), 35 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/vss/dao/BaseDao.h b/QiaoJiaSystem/DataManagerServer/vss/dao/BaseDao.h index 3bb9da3..bfffec3 100644 --- a/QiaoJiaSystem/DataManagerServer/vss/dao/BaseDao.h +++ b/QiaoJiaSystem/DataManagerServer/vss/dao/BaseDao.h @@ -8,14 +8,17 @@ #include <iostream> #include <mysql++.h> #include <AppConfig.h> +#include <QtCore/QMutex> using namespace std; -static mysqlpp::Connection *conn; - class BaseDao { public: - static mysqlpp::SimpleResult add(std::map<std::string, std::string> &columns, string tableName) { + static QMutex m_mutexVisit; +private: + static mysqlpp::Connection* conn; +public: + static mysqlpp::SimpleResult add(std::map<std::string, std::string>& columns, string tableName) { initConnection(); mysqlpp::SimpleResult simpleResult; try { @@ -29,20 +32,17 @@ } return simpleResult; } - - static bool del(string tableName, std::map<std::string, std::string> &whereColumns) { + static bool del(string tableName, std::map<std::string, std::string>& whereColumns) { initConnection(); string sql = "DELETE FROM " + tableName + " where 1=1 " + getWhereColumnNameValuePair(whereColumns); mysqlpp::Query query = conn->query(sql); bool ret = query.exec(); if (!ret) { - cout << "error " << query.error() << endl; + cout << "error " <<query.error() << endl; } return ret; } - - static bool update(std::map<std::string, std::string> &columns, string tableName, - std::map<std::string, std::string> &whereColumns) { + static bool update(std::map<std::string, std::string>& columns, string tableName, std::map<std::string, std::string>& whereColumns) { string updateSql = getUpdateSql(columns, tableName, whereColumns); initConnection(); mysqlpp::Query query = conn->query(updateSql); @@ -62,7 +62,7 @@ map<string, string> rowData; mysqlpp::Row row = *it; auto field_list = row.field_list(); - const mysqlpp::FieldNames *fieldNames = field_list.list; + const mysqlpp::FieldNames* fieldNames = field_list.list; for (int i = 0; i < fieldNames->size(); i++) { string columnValue; row[i].to_string(columnValue); @@ -77,14 +77,15 @@ return rowDataList; } - static Json::Value findJsonArray(string sql) { + static Json::Value findJsonArray(string sql, std::map<std::string, std::string>& whereColumns) { + sql = sql + getWhereColumnNameValuePair(whereColumns); initConnection(); mysqlpp::Query query = conn->query(sql); Json::Value rowList; if (auto res = query.store()) { for (auto it = res.begin(); it != res.end(); ++it) { Json::Value row; - const mysqlpp::FieldNames *fieldNames = it->field_list().list; + const mysqlpp::FieldNames* fieldNames = it->field_list().list; for (int i = 0; i < fieldNames->size(); i++) { string columnValue; (*it)[i].to_string(columnValue); @@ -97,6 +98,7 @@ rowList.append(row); } } else { + cout << "error " <<query.error() << endl; cout << "query failed" << endl; } return rowList; @@ -107,13 +109,12 @@ mysqlpp::Query query = conn->query(sql); bool ret = query.exec(); if (!ret) { - cout << "error " << query.error() << endl; + cout << "error " <<query.error() << endl; } return ret; } - - static string getInsertSql(std::map<std::string, std::string> &columns, string tableName) { - string insertSql = "INSERT INTO " + tableName + " (" + static string getInsertSql(std::map<std::string, std::string>& columns, string tableName) { + string insertSql = "INSERT INTO "+tableName+" (" + getColumnNames(columns) + " ) values ( " + getColumnValues(columns) + @@ -121,18 +122,17 @@ cout << "insertSql " << insertSql << endl; return insertSql; } - - static string getUpdateSql(std::map<std::string, std::string> &columns, string tableName, - std::map<std::string, std::string> &whereColumns) { - string updateSql = "update " + tableName + " set " + static string getUpdateSql(std::map<std::string, std::string>& columns, string tableName, std::map<std::string, std::string>& whereColumns) { + string updateSql = "update "+tableName+" set " + getColumnNameValuePair(columns) + - " where 1=1 " + - getWhereColumnNameValuePair(whereColumns); + " where 1=1 "+ + getWhereColumnNameValuePair(whereColumns) + ; cout << "updateSql " << updateSql << endl; return updateSql; } - static void doConnect() { + cout << "db_host=" << appConfig.getStringProperty("db_host").c_str() << endl; if (conn->connect( appConfig.getStringProperty("database").c_str(), appConfig.getStringProperty("db_host").c_str(), @@ -152,7 +152,6 @@ cout << "connect failed" << endl; } } - static void initConnection() { static bool inited = false; if (!inited) { @@ -164,8 +163,7 @@ doConnect(); } } - - static string getColumnNames(std::map<std::string, std::string> &columns) { + static string getColumnNames(std::map<std::string, std::string>& columns) { string columnNames; auto size = columns.size(); int i = 0; @@ -178,13 +176,12 @@ } return columnNames; } - - static string getColumnValues(std::map<std::string, std::string> &columns) { + static string getColumnValues(std::map<std::string, std::string>& columns) { string columnValues; auto size = columns.size(); int i = 0; for (auto column : columns) { - columnValues.append("'" + column.second + "'"); + columnValues.append("'"+column.second+"'"); if (i != columns.size() - 1) { columnValues.append(","); } @@ -192,15 +189,14 @@ } return columnValues; } - - static string getColumnNameValuePair(std::map<std::string, std::string> &columns) { + static string getColumnNameValuePair(std::map<std::string, std::string>& columns) { string columnNameValuePair; auto size = columns.size(); int i = 0; for (auto column : columns) { columnNameValuePair.append(column.first); columnNameValuePair.append("="); - columnNameValuePair.append("'" + column.second + "'"); + columnNameValuePair.append("'"+column.second+"'"); if (i != size - 1) { columnNameValuePair.append(","); @@ -209,8 +205,7 @@ } return columnNameValuePair; } - - static string getWhereColumnNameValuePair(std::map<std::string, std::string> &columns) { + static string getWhereColumnNameValuePair(std::map<std::string, std::string>& columns) { string columnNameValuePair; auto size = columns.size(); int i = 0; @@ -218,7 +213,7 @@ columnNameValuePair.append(" and "); columnNameValuePair.append(column.first); columnNameValuePair.append("="); - columnNameValuePair.append("'" + column.second + "' "); + columnNameValuePair.append("'"+column.second+"' "); i++; } -- Gitblit v1.8.0