|
|
|
|
|
#ifndef CHECKDATA_H
|
|
|
|
|
|
#define CHECKDATA_H
|
|
|
|
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
|
#include "QStandardItemModel.h"
|
|
|
|
|
|
#include "QIcon"
|
|
|
|
|
|
#include "QPixmap"
|
|
|
|
|
|
#include "QByteArray"
|
|
|
|
|
|
#include "databasesql.h"
|
|
|
|
|
|
#include "QJsonObject"
|
|
|
|
|
|
#include <QVariantMap>
|
|
|
|
|
|
#pragma execution_character_set("utf-8")//使用utf-8编码 可以使用中文,解决乱码
|
|
|
|
|
|
|
|
|
|
|
|
class CheckData : public QObject
|
|
|
|
|
|
{
|
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
CheckData(QObject *parent=0){ m_pDb = NULL; };
|
|
|
|
|
|
~CheckData(){};
|
|
|
|
|
|
void setDB(DataBaseSql* pDB){ m_pDb = pDB; };
|
|
|
|
|
|
public slots:
|
|
|
|
|
|
void doWork(QVariantMap m_map)
|
|
|
|
|
|
{
|
|
|
|
|
|
QVariantMap m_proMap;
|
|
|
|
|
|
m_proMap.insert("Type", "start");
|
|
|
|
|
|
emit sgShowProgress(m_proMap);
|
|
|
|
|
|
|
|
|
|
|
|
QVariantMap Mapstr;
|
|
|
|
|
|
QString strSql_Count = m_map.value("SqlCount").toString();
|
|
|
|
|
|
QString strSql_Check = m_map.value("SqlCheck").toString();
|
|
|
|
|
|
int nLimit = m_map.value("limit").toInt();
|
|
|
|
|
|
int nSum = 0;
|
|
|
|
|
|
int nIndex = 0;
|
|
|
|
|
|
QSqlQuery sql_Check;
|
|
|
|
|
|
if (m_pDb){
|
|
|
|
|
|
QSqlQuery sql_Count;
|
|
|
|
|
|
m_proMap.insert("msg", "正在获取数量");
|
|
|
|
|
|
emit sgShowProgress(m_proMap);
|
|
|
|
|
|
m_pDb->checkoutData(strSql_Count, sql_Count);
|
|
|
|
|
|
while (sql_Count.next()){
|
|
|
|
|
|
nSum = sql_Count.value(0).toInt();
|
|
|
|
|
|
}
|
|
|
|
|
|
//加入
|
|
|
|
|
|
//emit something
|
|
|
|
|
|
m_proMap.remove("msg");
|
|
|
|
|
|
m_proMap.insert("msg", "正在获取数据");
|
|
|
|
|
|
emit sgShowProgress(m_proMap);
|
|
|
|
|
|
m_pDb->checkoutData(strSql_Check, sql_Check);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
Mapstr.insert("sum", nSum);
|
|
|
|
|
|
Mapstr.insert("nIndex", nIndex);
|
|
|
|
|
|
Mapstr.insert("limit", nLimit);
|
|
|
|
|
|
m_proMap.remove("Type");
|
|
|
|
|
|
m_proMap.insert("Type", "stop");
|
|
|
|
|
|
emit sgShowProgress(m_proMap);
|
|
|
|
|
|
|
|
|
|
|
|
emit resultReady(Mapstr, sql_Check);
|
|
|
|
|
|
//emit something
|
|
|
|
|
|
};
|
|
|
|
|
|
private:
|
|
|
|
|
|
class DataBaseSql *m_pDb;
|
|
|
|
|
|
signals:
|
|
|
|
|
|
void resultReady(QVariantMap Mapstr,QSqlQuery sql);
|
|
|
|
|
|
void sgShowMsg(QString str);
|
|
|
|
|
|
void sgShowProgress(QVariantMap m_Map);
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif // CHECKDATA_H
|