From 9eebd36d36b1c680f9673f3057c0639a99a7400b Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期六, 09 三月 2019 18:43:21 +0800 Subject: [PATCH] ???? --- QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h b/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h index 89df109..93aba70 100755 --- a/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h +++ b/QiaoJiaSystem/DataManagerServer/vss/dao/CamDevSqliteDao.h @@ -4,6 +4,7 @@ #include "../model/CamDev.h" #include "BaseSqliteDao.h" +#include <qsqlfield.h> #define CamDev_TABLE_NAME "cam_dev" @@ -79,8 +80,9 @@ 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()))); + if (whereKeyValues.size() > 0) { + auto filter = QObject::tr((string(" 1=1 ")+getWhereColumnNameValuePair(whereKeyValues)).c_str()); + pModel.setFilter(filter); } pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange pModel.select(); @@ -118,8 +120,9 @@ 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))); + if (whereKeyValues.size() > 0) { + auto filter = QObject::tr((string(" 1=1 ")+getWhereColumnNameValuePair(whereKeyValues)).c_str()); + pModel.setFilter(filter); } pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange pModel.select(); @@ -180,8 +183,9 @@ 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()))); + if (whereKeyValues.size() > 0) { + auto filter = QObject::tr((string(" 1=1 ")+getWhereColumnNameValuePair(whereKeyValues)).c_str()); + pModel.setFilter(filter); } pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange pModel.select(); -- Gitblit v1.8.0