#include "historydata.h"
|
#include "ui_historydata.h"
|
|
#include <QMessageBox>
|
#include <QDebug>
|
#include <QDateTime>
|
|
HistoryData::HistoryData(QWidget *parent) :
|
QMainWindow(parent),
|
ui(new Ui::HistoryData)
|
{
|
ui->setupUi(this);
|
|
initMySQL(); // 初始化MySQL
|
}
|
|
HistoryData::~HistoryData()
|
{
|
delete ui;
|
}
|
|
void HistoryData::initMySQL()
|
{
|
//添加一个数据库
|
db=QSqlDatabase::addDatabase("QMYSQL"); //括号内要写出数据库的类型
|
//设置数据库
|
db.setHostName("127.0.0.1"); //设置数据库的主机ip
|
//设置数据库的用户名
|
db.setUserName("root");
|
//设置数据库的密码
|
db.setPassword("root"); //这个就是安装MySQL时设置的密码
|
//设置数据库的名字
|
db.setDatabaseName("stock_plan");
|
//打开数据库(已经安装过mysql驱动了)
|
if(db.open()==false){
|
QMessageBox::warning(this,"waring",db.lastError().text());
|
}else{
|
qDebug()<<"mysql conn ok";
|
}
|
}
|
|
void HistoryData::on_pushButton_clicked()
|
{
|
|
QSqlQuery que(db);
|
QString sql = "select * from stock_day_info";
|
if(que.exec(sql)){
|
qDebug()<<"select ok";
|
}else{
|
qDebug()<<"select fail"<<que.lastError().text();
|
}
|
}
|
|
void HistoryData::on_pushButton_update_clicked()
|
{
|
// 把5000支股票挨个获取到,然后进行数据保存,存到表格中
|
// 更新的时候,默认支持10年的数据查询
|
|
QString time_tar=QString::number(QDateTime::currentMSecsSinceEpoch());
|
QString dayCnt=QString::number(3000);
|
QString type = "day"; // day week month
|
for(auto code:m_codeNames.keys()){
|
QString url = QString("https://stock.xueqiu.com/v5/stock/chart/kline.json?symbol=%1&begin=%2&period=%3&type=before&count=-%4&indicator=kline,pe,market_capital,ma").arg(code)
|
.arg(time_tar).arg(type).arg(dayCnt);
|
qDebug()<<"url:"<<url;
|
|
}
|
|
}
|
|
void HistoryData::putCodeNames(QMap<QString, QString> &codeNames)
|
{
|
m_codeNames = codeNames;
|
qDebug()<<"size:"<<m_codeNames.size();
|
}
|