From 1f16245b4b4fc36c519e7afc9fd9cf828f25199d Mon Sep 17 00:00:00 2001 From: chenshijun <csj_sky@126.com> Date: 星期四, 28 二月 2019 20:06:35 +0800 Subject: [PATCH] 修改新增摄像机获取底图问题 解码两次问题 --- QiaoJiaSystem/DataManagerServer/vss/dao/VssLocalSettingTblSqliteDao.h | 54 ++++++++++++++++++------------------------------------ 1 files changed, 18 insertions(+), 36 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/vss/dao/VssLocalSettingTblSqliteDao.h b/QiaoJiaSystem/DataManagerServer/vss/dao/VssLocalSettingTblSqliteDao.h index dd74143..7592a5a 100755 --- a/QiaoJiaSystem/DataManagerServer/vss/dao/VssLocalSettingTblSqliteDao.h +++ b/QiaoJiaSystem/DataManagerServer/vss/dao/VssLocalSettingTblSqliteDao.h @@ -7,6 +7,7 @@ #define VSSLocalSettingTbl_Sqlite_TABLE_NAME "VSSLocalSettingTbl" +#include <qsqlfield.h> /** * 鏈湴鍥芥爣閰嶇疆绠$悊绫� */ @@ -174,67 +175,48 @@ } /** 鏌ヨ鏈湴鍥芥爣閰嶇疆鍒楄〃 querySql 瑕佹煡璇㈢殑sql璇彞 */ - Json::Value findVssLocalSettingTblList(string querySql) { + Json::Value findVssLocalSettingTblList(std::map<std::string, std::string>& whereKeyValues) { Json::Value responseJsonValue; - responseJsonValue["message"] = "鍒犻櫎澶辫触锛�"; + responseJsonValue["message"] = "鏌ヨ澶辫触锛�"; responseJsonValue["success"] = "false"; - responseJsonValue["data"] = "[]"; + responseJsonValue["data"] = Json::arrayValue; QMutexLocker mutexLocker(m_mutexVisit);//TODO std::list<Record_Cut_Video_info> lst; QSqlTableModel pModel(NULL, *m_db); - pModel.setTable(VSSLocalSettingTbl_Sqlite_TABLE_NAME); + pModel.setTable(VSSLocalSettingTbl_Sqlite_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::Value rowDataList = Json::arrayValue; for (int i = 0; i < rowCount; ++i) { - Json::Value rowData; + Json::Value rowData = Json::objectValue; Record_Cut_Video_info lRec; QSqlRecord rec = pModel.record(i); -// if (!rec.value("finish_flag").toBool()) { -// lRec.n_id = rec.value("id").toInt(); -// lRec.str_storage_dev_id = rec.value("storage_dev_id").toString(); -// lRec.n_chn = rec.value("chn").toInt(); -// lRec.str_src_path = rec.value("src_path").toString(); -// lRec.str_dst_path = rec.value("dst_path").toString(); -// lRec.n_total = rec.value("total").toInt(); -// lRec.b_finish_flag = rec.value("finish_flag").toBool(); -// lRec.tim_update_time = QDateTime::fromString(rec.value("update_time").toString(), -// "yyyy-MM-dd hh:mm:ss"); -// lRec.str_reserved = rec.value("reserved").toString(); -// lst.push_back(lRec); -// } + 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<VssLocalSettingTbl> vssLocalSettingTblVec; -// vector<map<string, string>> rowDatList = findList(querySql); -// vssLocalSettingTblVec.reserve(rowDatList.size()); -// for (auto rowData : rowDatList) { -// vssLocalSettingTblVec.emplace_back(mapToModel(rowData)); -// } -// return vssLocalSettingTblVec; } - - /**鏌ヨ鏈湴鍥芥爣閰嶇疆鍒楄〃 whereKeyValues 鍒楀悕鍜屽垪鍊煎鏉′欢 */ - Json::Value findVssLocalSettingTblList(std::map<std::string, std::string>& whereKeyValues) { - return findVssLocalSettingTblList(string("select * from ") + VSSLocalSettingTbl_TABLE_NAME + " where 1=1 " + getWhereColumnNameValuePair(whereKeyValues)); - } /**鏌ヨ鎵�鏈夋湰鍦板浗鏍囬厤缃垪琛� */ Json::Value findAllVssLocalSettingTblList() { - return findVssLocalSettingTblList(string("select * from ") + VSSLocalSettingTbl_TABLE_NAME + " where 1=1 "); + std::map<std::string, std::string> whereKeyValues; + return findVssLocalSettingTblList(whereKeyValues); } /** 鏌ヨmap鍒楄〃 querySql 瑕佹煡璇㈢殑sql璇彞 */ -- Gitblit v1.8.0