#ifndef HISTORYDATA_H
|
#define HISTORYDATA_H
|
|
#include <QMainWindow>
|
#include <QMap>
|
#include <QNetworkAccessManager>
|
#include <QNetworkRequest>
|
#include <QSqlDatabase>
|
#include <QSqlError>
|
#include <QSqlQuery>
|
#include <QStandardItemModel>
|
#include "customsortproxymodel.h"
|
#include <QTimer>
|
|
namespace Ui {
|
class HistoryData;
|
}
|
|
class HistoryData : public QMainWindow
|
{
|
Q_OBJECT
|
|
public:
|
explicit HistoryData(QWidget *parent = 0);
|
~HistoryData();
|
|
void initMySQL();
|
|
void getPoolStock(QByteArray &buffer);
|
signals:
|
void sendHistoryModel(QVector<QVector<QString>> &); // 将模型发给信息展示
|
void sendHistoryModel(QStandardItemModel *); // 将模型发给信息展示
|
|
private slots:
|
void on_pushButton_clicked();
|
|
void on_pushButton_update_clicked();
|
|
void putCodeNames(QMap<QString,QString> &codeNames);
|
|
void showAplyData(QNetworkReply* reply);
|
void getOneStock(QByteArray &buffer);
|
|
void on_pushButton_search_clicked();
|
|
void on_pushButton_2_clicked();
|
|
void on_pushButton_addStock_clicked();
|
|
void poolTimerSlot(); // 股票池刷新的定时器槽
|
|
void on_checkBox_clicked();
|
|
void getLastCloseSlot();
|
|
void on_checkBox_updatePoolClose_clicked();
|
|
private:
|
Ui::HistoryData *ui;
|
|
QSqlDatabase db;
|
|
QMap<QString,QString> m_codeNames; // 股票代号和名字
|
|
QNetworkRequest m_request; // 用于管理请求头的
|
QString m_cookie; // 缓存
|
QNetworkAccessManager m_manager; // 用于管理http请求及响应的
|
|
QStandardItemModel *m_model;
|
CustomSortProxyModel *m_customModel; // 用于排序的自定义模型
|
QStandardItemModel *m_poolModel; // 股票池模型
|
|
QVector<QVector<QString>> m_modelDatas; // 行列存储
|
|
QTimer *m_poolTimer; // 刷新股票池的定时器
|
QTimer *m_getPoolCloseTimer; // 获取股票池最新价格的定时器
|
|
int m_days=0; // 上次更新到现在经过的天数
|
};
|
|
#endif // HISTORYDATA_H
|