Files
clients/Filter/widget.cpp

805 lines
28 KiB
C++

#include "widget.h"
#include <QVBoxLayout>
#include <QLabel>
#include <QSqlDatabase>
#include <QSqlError>
#include <QSqlQuery>
#include <QDebug>
#include <QPushButton>
#include <QThread>
#include <QTime>
#define D_NONE -1
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
QVBoxLayout *vMainLayout = new QVBoxLayout;
{
{
QHBoxLayout *hLayout = new QHBoxLayout;
QStringList strList;
strList << "Data" << "Filter" << "Company" << "Catalog";
m_plw = new QListWidget[E_LIST_MAX];
int i = 0;
foreach(QString str , strList)
{
QVBoxLayout *vLayout = new QVBoxLayout;
vLayout->addWidget(new QLabel(str));
vLayout->addWidget(&m_plw[i++]);
hLayout->addLayout(vLayout);
}
connect(&m_plw[E_LIST_COMPANY],SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)),this,SLOT(CompanyItemChanged(QListWidgetItem*,QListWidgetItem*)));
vMainLayout->addLayout(hLayout);
}
{
QHBoxLayout *hLayout = new QHBoxLayout;
{
QVBoxLayout *vLayout = new QVBoxLayout;
vLayout->addWidget(new QLabel("Filter Process"));
m_plwFilterProcess = new QListWidget;
vLayout->addWidget(m_plwFilterProcess);
{
QHBoxLayout *hLayoutEdit = new QHBoxLayout;
hLayoutEdit->addWidget(new QLabel("Cycle : "));
m_pleCycle = new QLineEdit;
hLayoutEdit->addWidget(m_pleCycle);
m_pleCycle->setText("172800");
m_pleCycle->setEnabled(false);
QPushButton *ppbInsert = new QPushButton("Insert");
connect(ppbInsert, SIGNAL(released()),this, SLOT(on_insert()));
hLayoutEdit->addWidget(ppbInsert);
QPushButton *ppbDelete = new QPushButton("Delete");
connect(ppbDelete, SIGNAL(released()),this, SLOT(on_delete()));
hLayoutEdit->addWidget(ppbDelete);
vLayout->addLayout(hLayoutEdit);
}
hLayout->addLayout(vLayout);
}
{
QVBoxLayout *vLayout = new QVBoxLayout;
vLayout->addWidget(new QLabel("Log"));
m_plwLog = new QListWidget;
vLayout->addWidget(m_plwLog);
hLayout->addLayout(vLayout);
}
vMainLayout->addLayout(hLayout);
}
QPushButton *ppbRefresh = new QPushButton("Refresh");
connect(ppbRefresh, SIGNAL(released()),this, SLOT(on_refresh()));
vMainLayout->addWidget(ppbRefresh);
}
/*
QPushButton *ppbSend = new QPushButton("Send");
vMainLayout->addWidget(ppbSend);
connect(ppbSend, SIGNAL(released()),this, SLOT(on_send()));
*/
connect(&m_timer, SIGNAL(timeout()), this, SLOT(Update()));
//m_pThread = new SGetThread;
setLayout(vMainLayout);
//m_pPutThread = new SPutThread[QThread::idealThreadCount()];
m_nMode = 0;
db = QSqlDatabase::addDatabase("QMYSQL");
m_timer.start(100);
Refresh();
FilterProcssRefresh();
}
Widget::~Widget()
{
}
void Widget::InsertLog(QString str)
{
QTime time = QTime::currentTime();
QString strOut = time.toString("[hh:mm:ss] ") + str;
m_plwLog->addItem(strOut);
if (m_plwLog->count() > 1024)
{
m_plwLog->removeItemWidget(m_plwLog->item(0));
QListWidgetItem* item = m_plwLog->takeItem(0);
delete item;
}
m_plwLog->setCurrentRow( m_plwLog->count() - 1 );
m_plwLog->repaint();
}
void Widget::Refresh()
{
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
for (int i = 0; i < E_LIST_MAX ; i++)
m_plw[i].clear();
{
QSqlQuery query("select id,name from filtergroup");
while (query.next())
{
QListWidgetItem *pItem = new QListWidgetItem(query.value(1).toString(),&m_plw[E_LIST_FILTER]);
pItem->setData(Qt::UserRole, QVariant(query.value(0)));
}
}
{
QSqlQuery query("select id,name FROM datagroup");
while(query.next())
{
QListWidgetItem *pItem = new QListWidgetItem(query.value(1).toString(),&m_plw[E_LIST_DATA]);
pItem->setData(Qt::UserRole, QVariant(query.value(0)));
}
}
db.close();
db.setHostName("db.big-bird.co.kr");
db.setUserName("concepters");
db.setPassword("con97996655");
db.setDatabaseName("dbconcepters");
if (db.open() == false)
{
qDebug() << db.lastError().text();
return;
}
{
QSqlQuery query("select num,name FROM company");
while(query.next())
{
QListWidgetItem *pItem = new QListWidgetItem(query.value(1).toString(),&m_plw[E_LIST_COMPANY]);
pItem->setData(Qt::UserRole, QVariant(query.value(0)));
}
}
db.close();
}
void Widget::CompanyItemChanged(QListWidgetItem* _current,QListWidgetItem*)
{
if (_current == 0) return;
db.setHostName("db.big-bird.co.kr");
db.setUserName("concepters");
db.setPassword("con97996655");
db.setDatabaseName("dbconcepters");
if (db.open() == false)
{
qDebug() << db.lastError().text();
return;
}
m_plw[E_LIST_CATALOG].clear();
QSqlQuery query("select num,name FROM category where company_num = '" +_current->data(Qt::UserRole).toString()+ "'");
while(query.next())
{
QListWidgetItem *pItem = new QListWidgetItem(query.value(1).toString(),&m_plw[E_LIST_CATALOG]);
pItem->setData(Qt::UserRole, QVariant(query.value(0)));
}
db.close();
}
void Widget::on_send()
{
//if (m_nMode != 0) return ;
//m_nMode = 1;
}
void Widget::on_insert()
{
if (m_pleCycle->text().isEmpty())
{
InsertLog("Cycle is null");
return;
}
int aId[E_LIST_MAX];
QString aStr[E_LIST_MAX];
for (int i = 0; i < E_LIST_MAX;i++)
{
aId[i] = D_NONE;
foreach (QListWidgetItem *item,m_plw[i].selectedItems())
{
aId[i] = item->data(Qt::UserRole).toInt();
aStr[i] = item->text();
}
if (aId[i] == D_NONE) return;
}
/*
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
QString sql("insert into filterprocess (datagroup_id,datagroup_name,filtergroup_id,filtergroup_name, company_num, company_name , category_name , cycletime , lastruntime ) value (");
sql += QString::number(aId[E_LIST_DATA]) + ","; // datagroup_id
sql += "'" + aStr[E_LIST_DATA] + "',"; // datagroup_name
sql += QString::number(aId[E_LIST_FILTER]) + ","; // filtergroup_id
sql += "'" + aStr[E_LIST_FILTER] + "',"; // datagroup_name
sql += QString::number(aId[E_LIST_COMPANY]) + ","; // company_num
sql += "'" +aStr[E_LIST_COMPANY]+ "'," ; // company_name
sql += "'" +aStr[E_LIST_CATALOG]+ "'," ; // category_name
sql += m_pleCycle->text() + ","; //cycletime
QDateTime NowTime(QDateTime::currentDateTime().addDays(-3));
sql += "'" + NowTime.toString("yyyy-MM-dd HH:mm:ss") + "')"; //lastruntime
QSqlQuery query;
if(query.exec(sql) == false)
{
qDebug() << sql;
InsertLog(query.lastError().text());
}
db.close();
*/
QStringList list;
list.append("0");
list.append(QString::number(aId[E_LIST_DATA]));
list.append(aStr[E_LIST_DATA]);
list.append(QString::number(aId[E_LIST_FILTER]));
list.append(aStr[E_LIST_FILTER]);
list.append(QString::number(aId[E_LIST_COMPANY]));
list.append(aStr[E_LIST_COMPANY]); // company_name
list.append(aStr[E_LIST_CATALOG]);// category_name
list.append(m_pleCycle->text());
InsertLog("Run (" + list.at(2) + "," + list.at(4) + ") -> (" + list.at(6) + "," + list.at(7) +")" );
InsertLog("Data Get ..." );
m_body_data.clear();
m_reply_data.clear();
DataGet(list);
InsertLog("Data Filter ..." );
//DataFilter(list);
InsertLog("Data Put ..." );
DataPut(list);
InsertLog("Finish");
FilterProcssRefresh();
}
void Widget::on_delete()
{
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
foreach (QListWidgetItem *item,m_plwFilterProcess->selectedItems())
{
QSqlQuery query;
QString sql("delete from filterprocess where id = " + item->data(Qt::UserRole).toString());
if(query.exec(sql) == false)
{
InsertLog(query.lastError().text());
}
}
db.close();
FilterProcssRefresh();
}
void Widget::FilterProcssRefresh()
{
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
QString sql("select id,datagroup_name,filtergroup_name,company_name,category_name,cycletime,lastruntime from filterprocess");
QSqlQuery query;
if(query.exec(sql) == false)
{
InsertLog(query.lastError().text());
}
m_plwFilterProcess->clear();
while(query.next())
{
QString str;
str += "(Data : " + query.value(1).toString();
str += ",Filter : " + query.value(2).toString();
str += ") -> (Company : " + query.value(3).toString();
str += ",Category : " + query.value(4).toString();
str += ") (Cycle : " + query.value(5).toString();
str += " sec, Last Run Time : " + query.value(6).toString() +")";
QListWidgetItem *pItem = new QListWidgetItem(str,m_plwFilterProcess);
pItem->setData(Qt::UserRole, QVariant(query.value(0)));
}
db.close();
//datagroup,filtergroup company category cycletime , lastruntime
}
QString Widget::SqlString(QString _str)
{
_str.replace("\\","\\\\");
_str.replace("'","\\'");
_str.replace("\"","\\\"");
_str.replace(",","\\,");
return _str;
}
void Widget::Update()
{
/*
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
QString sql("select id,datagroup_id,datagroup_name,filtergroup_id,filtergroup_name,company_num,company_name,category_name,cycletime,lastruntime from filterprocess");
QSqlQuery query;
if(query.exec(sql) == false) { InsertLog(query.lastError().text());return;}
QVector <QStringList> vecData;
while(query.next())
{
QDateTime nextDateTime = query.value(9).toDateTime().addSecs(query.value(8).toInt());
if (QDateTime::currentDateTime() >= nextDateTime)
{
QStringList strlist;
for(int i = 0; i < 10 ; i++)
strlist.push_back(query.value(i).toString());
vecData.push_back(strlist);
}
}
db.close();
foreach(QStringList list,vecData)
{
InsertLog("Run (" + list.at(2) + "," + list.at(4) + ") -> (" + list.at(6) + "," + list.at(7) +")" );
InsertLog("Data Get ..." );
m_mainData.clear();
DataGet(list);
InsertLog("Data Filter ..." );
DataFilter(list);
InsertLog("Data Put ..." );
DataPut(list);
InsertLog("Finish");
}
*/
}
void Widget::DataGet(QStringList _list)
{
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
QString sql;
QSqlQuery query;
sql = "update filterprocess set lastruntime = '" + QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss") +"' where id = " + _list.at(0);
query.exec(sql);
if(query.exec(sql) == false) { InsertLog(query.lastError().text());return;}
QString strSelect;
strSelect = "select ";
strSelect += "CONVERT(platform_name USING utf8),"; //0
strSelect += "CONVERT(platform_form USING utf8),"; //1
strSelect += "CONVERT(platform_title USING utf8),"; //2
strSelect += "CONVERT(article_id USING utf8),"; //3
strSelect += "CONVERT(article_nickname USING utf8),"; //4
strSelect += "CONVERT(article_title USING utf8),"; //5
strSelect += "CONVERT(article_data USING utf8),"; //6
strSelect += "CONVERT(article_url USING utf8),"; //7
strSelect += "CONVERT(article_hit USING utf8),"; //8
strSelect += "CONVERT(article_date USING utf8)"; //9
//strSelect += "CONVERT(platform_id USING utf8)"; //10
strSelect += " from ";
strSelect += "data_" + _list.at(1);
strSelect += " where ";
strSelect += " article_form = 'body'";
strSelect += " Order by article_date";
//qDebug() << strSelect;
if(query.exec(strSelect) == false) { InsertLog(query.lastError().text());return;}
while(query.next())
{
QStringList strList;
if (query.value(3).toString().isEmpty()) continue;
for(int i = 0; i < 10; i++)
strList << " " + query.value(i).toString() + " ";
m_body_data.append(strList);
}
int i=0;
foreach(QStringList strList,m_body_data)
{
strSelect = "select ";
strSelect += "CONVERT(article_id USING utf8),"; //0
strSelect += "CONVERT(article_nickname USING utf8),"; //1
strSelect += "CONVERT(article_parent USING utf8),"; //2
strSelect += "CONVERT(article_data USING utf8),"; //3
strSelect += "CONVERT(article_date USING utf8)"; //4
strSelect += " from ";
strSelect += "data_" + _list.at(1);
strSelect += " where ";
strSelect += " article_form = 'reply' and";
strSelect += " article_url = '";
strSelect += strList.at(7).trimmed();
strSelect += "' Order by article_order";
if(query.exec(strSelect) == false) {
InsertLog(query.lastError().text());return;}
int nStart = m_reply_data.size() + 1;
int nEnd = nStart;
while(query.next())
{
QStringList strList;
for(int i = 0; i < 5; i++)
strList << " " + query.value(i).toString() + " ";
m_reply_data.append(strList);
nEnd++;
}
if (nStart == nEnd)
nStart = nEnd = -1;
else
nEnd--;
m_body_data[i].push_back(QString::number(nStart));
m_body_data[i++].push_back(QString::number(nEnd));
}
db.close();
}
void Widget::FilterDate(int _nCategory,QDate _dateStart,QDate _dateEnd)
{
int nColumn;
switch(_nCategory)
{
case 0:nColumn = 2;break; // main
case 1:nColumn = 10;break; // comment
default : return;
}
QVector <QStringList> copyData;
foreach(QStringList strList , m_body_data)
{
bool bFlag = false;
QString strTime = strList.at(nColumn).trimmed();
if (strTime.size() >= 10)
{
QChar ch = strTime.at(4);
QString strFormat = QString("yyyy")+ch+QString("MM")+ch+QString("dd");
QDate date = QDate::fromString(strTime.left(10),strFormat);
if (_dateStart <= date && _dateEnd >= date)
bFlag = true;
}
if (bFlag)
copyData.push_back(strList);
}
m_body_data.clear();
m_body_data = copyData;
}
void Widget::FilterSeracher(int _nCatalog,int _nMethod , int _nKeyword , QString _strSearch)
{
QStringList strListKeyword = _strSearch.split(" ");
if (_nMethod == 1)
{
for (int i = 0 ; i < strListKeyword.size(); i++ )
strListKeyword[i] = " " + strListKeyword[i] + " ";
}
QVector <QStringList> copyData;
foreach(QStringList strList , m_body_data)
{
bool bFlag = false;
QString strData = strList.at(_nCatalog);
switch(_nKeyword)
{
case 0:
{
foreach(QString strKey , strListKeyword)
if (strData.contains(strKey)){bFlag = true;break;}
break;
}
case 1:
{
int nKeyCount = 0;
foreach(QString strKey , strListKeyword)
if (strData.contains(strKey)) nKeyCount++;
if (nKeyCount == strListKeyword.size())
bFlag = true;
break;
}
case 2:
{
bFlag = true;
foreach(QString strKey , strListKeyword)
if (strData.contains(strKey)){bFlag = false;break;}
break;
}
case 3:
{
foreach(QString strKey , strListKeyword)
strList[_nCatalog].replace(strKey,"");
bFlag = true;
break;
}
}
if (bFlag) copyData.push_back(strList);
}
m_body_data.clear();
m_body_data = copyData;
}
void Widget::DataFilter(QStringList _list)
{
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
QString sql = "select id,type,timecategory,timestart,timeend,searchescategory,searchesmethod,searcheskeyword,searchesstring from filter where filtergroup_id = " + _list.at(3);
QSqlQuery query;
if(query.exec(sql) == false) { InsertLog(query.lastError().text());return;}
while (query.next())
{
switch(query.value(1).toInt())
{
case 0://Date
FilterDate(query.value(2).toInt(),query.value(3).toDate(),query.value(4).toDate());
break;
case 1:
FilterSeracher(query.value(5).toInt(),query.value(6).toInt(),query.value(7).toInt(),query.value(8).toString());
break;
}
}
db.close();
}
void Widget::DataPut(QStringList _list)
{
db.setHostName("db.big-bird.co.kr");
db.setUserName("concepters");
db.setPassword("con97996655");
db.setDatabaseName("dbconcepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
QSqlQuery query;
QString strQuery;
strQuery = "DROP TABLE body_" + _list.at(5) + QString("_0000");
if(query.exec(strQuery.toUtf8()) == false) /*{*/InsertLog(query.lastError().text());//return;}
strQuery = "DROP TABLE reply_" + _list.at(5) + QString("_0000");
if(query.exec(strQuery.toUtf8()) == false) /*{*/InsertLog(query.lastError().text());//return;}
strQuery = "CREATE TABLE body_" + _list.at(5) + QString("_0000 (");
strQuery += "num INT NOT NULL auto_increment primary key,"
"platform_name CHAR(64),"
"platform_form CHAR(64),"
"platform_title VARCHAR(256),"
"category_num INT,"
"id CHAR(128),"
"nickname VARCHAR(256),"
"title VARCHAR(1024),"
"data MEDIUMTEXT,"
"url CHAR(255),"
"hit INT,"
"date DATETIME,"
"reply_startnum INT,"
"reply_endnum INT,"
"isreal BOOLEAN,"
"bodyisreal BOOLEAN,"
"replyisreal BOOLEAN)DEFAULT CHARACTER SET = 'utf8' ENGINE=InnoDB;";
if(query.exec(strQuery.toUtf8()) == false)/*{*/InsertLog(query.lastError().text());//return;}
strQuery = "CREATE TABLE reply_" + _list.at(5) + QString("_0000 (");
strQuery += "num INT NOT NULL auto_increment primary key,"
"id CHAR(128),"
"nickname VARCHAR(256),"
"parent VARCHAR(256),"
"data MEDIUMTEXT,"
"date DATETIME,"
"isreal BOOLEAN,"
"body_num INT)DEFAULT CHARACTER SET = 'utf8' ENGINE=InnoDB;";
if(query.exec(strQuery.toUtf8()) == false)/*{*/InsertLog(query.lastError().text());//return;}
query.prepare("INSERT INTO body_" + _list.at(5) + QString("_0000 (") + "platform_name,"
"platform_form,"
"platform_title,"
"category_num,"
"id,"
"nickname,"
"title,"
"data,"
"url,"
"hit,"
"date,"
"reply_startnum,"
"reply_endnum,"
"isreal,"
"bodyisreal,"
"replyisreal"
") value ("
":platform_name,"
":platform_form,"
":platform_title,"
":category_num,"
":id,"
":nickname,"
":title,"
":data,"
":url,"
":hit,"
":date,"
":reply_startnum,"
":reply_endnum,"
":isreal,"
":bodyisreal,"
":replyisreal)");
foreach(QStringList strList,m_body_data)
{
query.bindValue(":platform_name",strList.at(0));
query.bindValue(":platform_form",strList.at(1));
query.bindValue(":platform_title",SqlString(strList.at(2)).toUtf8());
query.bindValue(":id",strList.at(3));
query.bindValue(":nickname",SqlString(strList.at(4)).toUtf8());
query.bindValue(":title",SqlString(strList.at(5)).toUtf8());
query.bindValue(":data",SqlString(strList.at(6)).toUtf8());
query.bindValue(":url",strList.at(7));
query.bindValue(":hit",strList.at(8));
query.bindValue(":date",strList.at(9));
query.bindValue(":reply_startnum",strList.at(10));
query.bindValue(":reply_endnum",strList.at(11));
query.bindValue(":isreal",true);
query.bindValue(":bodyisreal",false);
query.bindValue(":replyisreal",false);
if(query.exec() == false)
InsertLog(query.lastError().text());
}
query.prepare("INSERT INTO reply_" + _list.at(5) + QString("_0000 (") + QString("id,nickname,parent,data,date)"
" value "
"(:id,:nickname,:parent,:data,:date)"));
foreach(QStringList strList,m_reply_data)
{
query.bindValue(":id",strList.at(0));
query.bindValue(":nickname",SqlString(strList.at(1)));
query.bindValue(":parent",SqlString(strList.at(2)));
query.bindValue(":data",SqlString(strList.at(3)));
query.bindValue(":date",strList.at(4));
if(query.exec() == false)
InsertLog(query.lastError().text());
}
/*
QSqlQuery query;
QString strDelete = "delete from data where company_name = '" + _list.at(6) + "' AND category_name = '" + _list.at(7) + "'";
if(query.exec(strDelete.toUtf8()) == false) {
InsertLog(query.lastError().text());
return;}
//qDebug() << strDelete;
QString strInsert = "insert into data ( company_name , category_name , platform_name , platform_form , platform_title ,"
"article_num , article_rownum , article_form , article_title , article_url , article_id , article_nickname , "
"article_date , article_body , article_reply ) value (";
foreach(QStringList strList , m_body_data)
{
for (int i = 0; i < strList.size(); i++)
strList[i] = strList[i].trimmed();
QString strQuery = strInsert;
strQuery += "'"+_list.at(6)+ "',"; //company_name
strQuery += "'"+_list.at(7)+ "',"; //category_name
strQuery += "'" + strList.at(14) + "',"; //platform_name
strQuery += "'" + strList.at(15) + "',"; //platform_form
strQuery += "'" + SqlString(strList.at(6)) + "',"; //platform_title
strQuery += "'0',"; //article_num
strQuery += "'" + strList.at(17) + "',"; //article_rownum
strQuery += "'" + strList.at(16) + "',"; //article_type
strQuery += "'" + SqlString(strList.at(3)) + "',"; //article_title
strQuery += "'" + strList.at(7) + "',"; //article_url
strQuery += "'" + strList.at(0) + "',"; //article_id
QString str = strList.at(1);
str.replace("var isInitial","");
str.replace(";","");
strQuery += "'" + SqlString(str.trimmed()) + "',"; //article_nickname
if (strList.at(16) == "reply")
strQuery += "'" + strList.at(10) + "',"; //article_date
else
strQuery += "'" + strList.at(2) + "',"; //article_date
strQuery += "'" + SqlString(strList.at(4)) + "',"; //article_body
strQuery += "'" + SqlString(strList.at(11)) + "')"; //article_reply
if(query.exec(strQuery) == false){ InsertLog(query.lastError().text());return;}
}
*/
db.close();
}
void Widget::on_refresh()
{
Refresh();
FilterProcssRefresh();
}
/*
void Widget::Update()
{
switch(m_nMode)
{
case 1:
m_data.clear();
db.setHostName("bigbird.iptime.org");
db.setUserName("admin");
db.setPassword("admin123");
db.setDatabaseName("concepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
foreach (QListWidgetItem *item,m_plw[E_LIST_DATA].selectedItems())
{
m_pThread->SetData(QString("data_"+item->data(Qt::UserRole).toString()),&m_data);
}
m_pThread->start();
m_nMode = 2;
InsertLog("Data Read Start");
break;
case 2:
if (m_pThread->isRunning() == false)
{
db.close();
InsertLog("Data Read End");
InsertLog("Data Write Web Start");
db.setHostName("db.big-bird.co.kr");
db.setUserName("concepters");
db.setPassword("con97996655");
db.setDatabaseName("dbconcepters");
if (db.open() == false)
{
InsertLog(db.lastError().text());
return;
}
db.exec("delete from data");
qDebug() << QString::number(m_data.size());
m_pPutThread[0].SetData("data",&m_data,0,m_data.size());
m_pPutThread[0].start();
m_nMode = 3;
}
break;
case 3:
if (m_pPutThread[0].isRunning() == false)
{
m_nMode = 0;
InsertLog("Data Write Web End");
}
break;
}
}
*/