39 lines
1.2 KiB
C
39 lines
1.2 KiB
C
|
|
#ifndef SQLQUERYEXECUTOR_H
|
|||
|
|
#define SQLQUERYEXECUTOR_H
|
|||
|
|
|
|||
|
|
#include <QObject>
|
|||
|
|
#include <QSqlQuery>
|
|||
|
|
#include <QMap>
|
|||
|
|
#include "global.h"
|
|||
|
|
|
|||
|
|
class SqlQueryExecutor : public QObject
|
|||
|
|
{
|
|||
|
|
Q_OBJECT
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
static SqlQueryExecutor& instance();
|
|||
|
|
//基础SQL语句执行接口
|
|||
|
|
QSqlQuery executeSQL(const QString& strConnectionName, const QString& strSQL, const QVariantHash& params = {});
|
|||
|
|
//基于具体业务的查询接口-对外调用
|
|||
|
|
const QVector<Model> getModels(const QString&);
|
|||
|
|
const QVector<AttributeGroup> getAttributeGroup(const QString&);
|
|||
|
|
const QString getArributeGropuName(const QString&, int);
|
|||
|
|
bool addModel(const QString&, Model&);
|
|||
|
|
bool modelNameExistsInDB(const QString&, const QString&);
|
|||
|
|
bool modelTypeExistsInDB(const QString&, const QString&);
|
|||
|
|
|
|||
|
|
signals:
|
|||
|
|
void errorOccurred(const QString& error);
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
explicit SqlQueryExecutor();
|
|||
|
|
~SqlQueryExecutor();
|
|||
|
|
// 禁止拷贝
|
|||
|
|
SqlQueryExecutor(const SqlQueryExecutor&) = delete; //delete关键字表示该函数不可用,包括编译器自动生成的函数
|
|||
|
|
SqlQueryExecutor& operator=(const SqlQueryExecutor&) = delete;
|
|||
|
|
//基于具体业务的查询接口-内部调用
|
|||
|
|
QVector<int> getModelGroups(const QString&, int);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
#endif //SQLQUERYEXECUTOR_H
|