effectui 추가

형태소분석기 숫자 정렬 추가
batch run 시 결과값이 올바르게 나오지 않는 현상 디버깅

git-svn-id: svn://192.168.0.12/source@297 8346c931-da38-4b9b-9d4c-e48b93cbd075
This commit is contained in:
admin
2016-10-06 07:54:45 +00:00
parent c55fc7f2f0
commit 85c47edea3
25 changed files with 1974 additions and 37 deletions

31
EffectUI/EffectUI.pro Normal file
View File

@@ -0,0 +1,31 @@
#-------------------------------------------------
#
# Project created by QtCreator 2016-09-27T18:05:24
#
#-------------------------------------------------
QT += core gui network sql
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = EffectUI
TEMPLATE = app
CONFIG += c++11
SOURCES += main.cpp\
widget.cpp \
scompanylistwidget.cpp \
sutilfunction.cpp \
sutilclass.cpp \
srunninglistwidget.cpp \
stimer.cpp
HEADERS += widget.h \
scompanylistwidget.h \
sutilfunction.h \
sutilclass.h \
srunninglistwidget.h \
stimer.h
FORMS += widget.ui

1001
EffectUI/EffectUI.pro.user Normal file

File diff suppressed because it is too large Load Diff

11
EffectUI/main.cpp Normal file
View File

@@ -0,0 +1,11 @@
#include "widget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.show();
return a.exec();
}

View File

@@ -0,0 +1,312 @@
#include "scompanylistwidget.h"
#include "sutilfunction.h"
#include "sutilclass.h"
#include <QPushButton>
#include <QString>
#include <QVector>
#include <QCalendarWidget>
#include <QDateEdit>
#include <QTableWidget>
#include <QVBoxLayout>
#include <QSqlDatabase>
#include <QSettings>
#include <QMessageBox>
#include <QSqlQuery>
#include <QSqlError>
#include <QDebug>
namespace
{
QString strDatabaseName("companylist");
}
enum class SCompanyListWidget::E_TABLE_HEADER
{
COMPANY = 0,
START_DATE,
END_DATE,
EVENT_NUM,
STATUS,
MAX
};
SCompanyListWidget::~SCompanyListWidget()
{
if (m_pwParent == nullptr)
{
delete m_pbtnSearch;
delete m_pbtnRefresh;
delete m_pdeEnd;
delete m_pdeStart;
delete m_ptableWidget;
}
}
SCompanyListWidget::SCompanyListWidget(QWidget* parent):
m_pbtnSearch(new QPushButton(parent)), m_pbtnRefresh(new QPushButton(parent)),
m_ptableWidget(new QTableWidget(parent)), m_pdeStart(new QDateEdit(parent)),
m_pdeEnd(new QDateEdit(parent)), m_playout(new QVBoxLayout(parent)), m_pwParent(parent),
m_pslTableHeader(new QStringList)
{
*m_pslTableHeader << "Company" << "Start date" << "End date" << "Event Num" << "Status";
initButton();
initCalender();
initLayout();
initTableWidget();
initDatabase();
}
void SCompanyListWidget::initButton()
{
m_pbtnSearch->setText("Search");
m_pbtnRefresh->setText("Refresh");
connect(m_pbtnSearch, &QPushButton::released, this, &SCompanyListWidget::search);
connect(m_pbtnRefresh, &QPushButton::released, this, &SCompanyListWidget::refresh);
}
void SCompanyListWidget::initDatabase()
{
databaseSetting(strDatabaseName);
}
void SCompanyListWidget::initCalender()
{
// Qt manages calenderwidget variable
QCalendarWidget* calenderwidget = new QCalendarWidget();
m_pdeStart->setCalendarWidget(calenderwidget);
m_pdeEnd->setCalendarWidget(calenderwidget);
m_pdeStart->setCalendarPopup(true);
m_pdeEnd->setCalendarPopup(true);
}
void SCompanyListWidget::initLayout()
{
QHBoxLayout *pblbutton = new QHBoxLayout;
pblbutton->addWidget(m_pdeStart);
pblbutton->addWidget(m_pdeEnd);
pblbutton->addWidget(m_pbtnSearch);
pblbutton->addWidget(m_pbtnRefresh);
m_playout->addWidget(m_ptableWidget);
m_playout->addLayout(pblbutton);
}
void SCompanyListWidget::initTableWidget()
{
m_ptableWidget->setColumnCount(m_pslTableHeader->size());
m_ptableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);
m_ptableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
m_ptableWidget->setSortingEnabled(true);
connect(m_ptableWidget, &QTableWidget::itemSelectionChanged,
this, &SCompanyListWidget::slotClickedItem);
}
void SCompanyListWidget::slotClickedItem()
{
qDebug() << "signalClickedItem";
auto kkk = getSelectedList();
foreach (auto& k, kkk)
{
qDebug() << k[0].text() << ", " << k[1].text() << ", " << k[2].text() << ", " << k[3].text();
}
emit signalClickedItem();
}
void SCompanyListWidget::resetTableHeader()
{
m_ptableWidget->clear();
m_ptableWidget->setHorizontalHeaderLabels(*m_pslTableHeader);
}
QVBoxLayout* SCompanyListWidget::getLayout() const
{
return m_playout;
}
void SCompanyListWidget::refresh()
{
QSqlDatabase db = QSqlDatabase::database(strDatabaseName);
if (db.open() == false)
{
messageBoxError("Error", "Database conncection error");
db.close();
return;
}
//select num, name, startdate, enddate from company join company_event_map where company.num = company_event_map.company_num
QString strQuery("select company.num, name, startdate, enddate, "
"count(company_event_map.company_num) as "
"cnt from company inner join company_event_map "
"on company.num = company_event_map.company_num group by company.num");
QSqlQuery query(db);
if (!query.exec(strQuery))
{
messageBoxError("Mysql Query error", strQuery + "\n\n" + query.lastError().text());
db.close();
return;
}
resetTableHeader();
m_ptableWidget->setRowCount(query.size());
int nRow = 0;
while (query.next())
{
QTableWidgetItem *itemCompany =
new QTableWidgetItem(query.value(static_cast<int>(E_TABLE_HEADER::COMPANY) + 1).toString());
itemCompany->setData(Qt::UserRole, query.value(0));
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::COMPANY), itemCompany);
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::START_DATE),
new QTableWidgetItem(query.value(static_cast<int>(E_TABLE_HEADER::START_DATE) + 1).toString()));
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::END_DATE),
new QTableWidgetItem(query.value(static_cast<int>(E_TABLE_HEADER::END_DATE) + 1).toString()));
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::EVENT_NUM),
new STableWidgetItem(QString::number(
query.value(static_cast<int>(E_TABLE_HEADER::EVENT_NUM) + 1).toInt())));
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::STATUS),
new QTableWidgetItem(""));
m_ptableWidget->setRowHidden(nRow, false);
++nRow;
}
db.close();
resetSearchDate();
}
void SCompanyListWidget::resetSearchDate()
{
QDate startDate(2100, 12, 13);
QDate endDate(2000, 1, 1);
QDate _startDate;
QDate _endDate;
for (int i = 0; i < m_ptableWidget->rowCount(); ++i)
{
_startDate = QDateTime::fromString(
m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::START_DATE))->text(), "yyyy-MM-dd").date();
_endDate = QDateTime::fromString(
m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::END_DATE))->text(), "yyyy-MM-dd").date();
startDate = (startDate < _startDate) ? startDate : _startDate;
endDate = (endDate > _endDate) ? endDate : _endDate;
}
m_pdeStart->setDate(startDate);
m_pdeEnd->setDate(endDate);
}
void SCompanyListWidget::search()
{
QDate startDate = m_pdeStart->date();
QDate endDate = m_pdeEnd->date();
QDate _startDate;
QDate _endDate;
for (int i = 0; i < m_ptableWidget->rowCount(); ++i)
{
_startDate = QDateTime::fromString(
m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::START_DATE))->text(), "yyyy-MM-dd").date();
_endDate = QDateTime::fromString(
m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::END_DATE))->text(), "yyyy-MM-dd").date();
if (startDate <= _startDate && _endDate <= endDate)
m_ptableWidget->setRowHidden(i, false);
else
m_ptableWidget->setRowHidden(i, true);
}
}
void SCompanyListWidget::setRunning(int _id)
{
for (int i = 0; i < m_ptableWidget->rowCount(); ++i)
{
auto item = m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::COMPANY));
if (item->data(Qt::UserRole).toInt() == _id)
{
m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::STATUS))->setText("Running");
break;
}
}
}
void SCompanyListWidget::unsetRunning(int _id)
{
for (int i = 0; i < m_ptableWidget->rowCount(); ++i)
{
auto item = m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::COMPANY));
if (item->data(Qt::UserRole).toInt() == _id)
{
m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::STATUS))->setText("");
break;
}
}
}
void SCompanyListWidget::setRunning(const QVector<int>& _ids)
{
foreach (auto& _id, _ids)
{
setRunning(_id);
}
}
void SCompanyListWidget::unsetRunning(const QVector<int>& _ids)
{
foreach (auto& _id, _ids)
{
unsetRunning(_id);
}
}
/*
void SCompanyListWidget::setRunning(QVector<int>&& _ids)
{
foreach (auto& _id, _ids)
{
setRunning(_id);
}
}
void SCompanyListWidget::unsetRunning(QVector<int>&& _ids)
{
foreach (auto& _id, _ids)
{
unsetRunning(_id);
}
}
*/
QVector<QVector<QTableWidgetItem>> SCompanyListWidget::getSelectedList() const
{
QVector<QVector<QTableWidgetItem>> items;
auto modelIndexes = m_ptableWidget->selectionModel()->selectedRows();
foreach (auto& modelIndex, modelIndexes)
{
QVector<QTableWidgetItem> item;
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::COMPANY))));
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::START_DATE))));
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::END_DATE))));
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::EVENT_NUM))));
items.append(item);
}
return items;
}
/*
void SCompanyListWidget::selectedItem(int i)
{
}
*/

View File

@@ -0,0 +1,66 @@
#ifndef SCOMPANYLISTWIDGET
#define SCOMPANYLISTWIDGET
#include <QObject>
#include <memory>
#include <QVector>
class QPushButton;
class QTableWidget;
class QDateEdit;
class QVBoxLayout;
class QStringList;
class QTableWidgetItem;
class SCompanyListWidget:public QObject
{
Q_OBJECT
public:
SCompanyListWidget(QWidget* parent = nullptr);
~SCompanyListWidget();
void setRunning(int _id);
void unsetRunning(int _id);
void setRunning(const QVector<int>& _ids);
//void setRunning(QVector<int>&& _ids);
void unsetRunning(const QVector<int>& _ids);
//void unsetRunning(QVector<int>&& _ids);
QVector<QVector<QTableWidgetItem>> getSelectedList() const;
QVBoxLayout* getLayout() const;
public slots:
void refresh();
void search();
void slotClickedItem();
signals:
void signalClickedItem();
private:
void initTableWidget();
void initLayout();
void initCalender();
void initButton();
void initDatabase();
void resetTableHeader();
void resetSearchDate();
public:
enum class E_TABLE_HEADER;
private:
QPushButton* m_pbtnSearch;
QPushButton* m_pbtnRefresh;
QTableWidget* m_ptableWidget;
QDateEdit* m_pdeStart;
QDateEdit* m_pdeEnd;
QWidget* m_pwParent;
QVBoxLayout *m_playout;
std::unique_ptr<QStringList> m_pslTableHeader;
};
#endif // SCOMPANYLISTWIDGET

View File

@@ -0,0 +1,139 @@
#include "srunninglistwidget.h"
#include <QPushButton>
#include <QString>
#include <QVector>
#include <QTableWidget>
#include <QVBoxLayout>
#include <QSqlDatabase>
#include <QSettings>
#include <QSqlQuery>
#include <QSqlError>
#include <QDebug>
namespace
{
QString strDatabaseName("runninglist");
}
SRunningListWidget::SRunningListWidget(QWidget* parent) :
m_pwParent(parent), m_pbtnTimerStart(new QPushButton(parent)), m_pbtnTimerStop(new QPushButton(parent)),
m_pbtnForceStart(new QPushButton(parent)), m_pbtnForceStop(new QPushButton(parent)), m_ptableWidget(new QTableWidget(parent)),
m_playout(new QVBoxLayout(parent)), m_pslTableHeader(new QStringList)
{
*m_pslTableHeader << "Company" << "Start date" << "End date" << "Event Num" << "Status" << "Last Update Time";
initButton();
initDatabase();
initLayout();
initTableWidget();
}
void SRunningListWidget::initButton()
{
m_pbtnForceStart->setText("Force Start");
m_pbtnForceStop->setText("Force Stop");
m_pbtnTimerStart->setText("Timer Start");
m_pbtnTimerStop->setText("Timer Stop");
connect(m_pbtnForceStart, &QPushButton::released, this, &SRunningListWidget::)
}
void SRunningListWidget::initDatabase()
{
}
void SRunningListWidget::initTableWidget()
{
}
void SRunningListWidget::initLayout()
{
}
QVBoxLayout* SRunningListWidget::getLayout() const
{
}
void SRunningListWidget::delList(int _id)
{
}
void SRunningListWidget::delList(QVector<int> _ids)
{
}
void SRunningListWidget::resetTableHeader()
{
}
SRunningListWidget::~SRunningListWidget()
{
}
void SRunningListWidget::addList(QVector<QVector<QTableWidgetItem>> items)
{
}
void SRunningListWidget::enableBtnTimerStart(bool enable)
{
}
void SRunningListWidget::enableBtnTimerStop(bool enable)
{
}
void SRunningListWidget::enableBtnForceStart(bool enable)
{
}
void SRunningListWidget::enableBtnForceStop(bool enable)
{
}
void SRunningListWidget::setRunning(int _id)
{
}
void SRunningListWidget::setWaiting(int _id)
{
}
void SRunningListWidget::setComplete(int _id)
{
}
QVector<int> SRunningListWidget::getList()
{
}
void SRunningListWidget::slotTimerStart()
{
}
void SRunningListWidget::slotTimerStop()
{
}
void SRunningListWidget::slotForceStart()
{
}
void SRunningListWidget::slotForceStop()
{
}

View File

@@ -0,0 +1,72 @@
#ifndef SRUNNINGLISTWIDGET
#define SRUNNINGLISTWIDGET
#include <QObject>
#include <memory>
#include <QVector>
class QPushButton;
class QTableWidget;
class QDateEdit;
class QVBoxLayout;
class QStringList;
class QTableWidgetItem;
class SRunningListWidget:public QObject
{
Q_OBJECT
public:
enum class E_TABLE_HEADER;
public:
SRunningListWidget(QWidget* parent = nullptr);
QVBoxLayout* getLayout() const;
void delList(int _id);
void delList(QVector<int> _ids);
~SRunningListWidget();
private:
void initButton();
void initTableWidget();
void initDatabase();
void initLayout();
void resetTableHeader();
public slots:
void addList(QVector<QVector<QTableWidgetItem>> items);
QVector<int> getList();
void enableBtnTimerStart(bool enable);
void enableBtnTimerStop(bool enable);
void enableBtnForceStart(bool enable);
void enableBtnForceStop(bool enable);
void slotTimerStart();
void slotTimerStop();
void slotForceStart();
void slotForceStop();
void setRunning(int _id);
void setWaiting(int _id);
void setComplete(int _id);
signals:
void signalTimerStart();
void signalTimerStop();
void signalForceStart();
void signalForceStop();
private:
QPushButton* m_pbtnTimerStart;
QPushButton* m_pbtnTimerStop;
QPushButton* m_pbtnForceStart;
QPushButton* m_pbtnForceStop;
QTableWidget* m_ptableWidget;
QWidget* m_pwParent;
QVBoxLayout *m_playout;
std::unique_ptr<QStringList> m_pslTableHeader;
};
#endif // SRUNNINGLISTWIDGET

92
EffectUI/stimer.cpp Normal file
View File

@@ -0,0 +1,92 @@
#include "stimer.h"
#include <QTimer>
#include <QTime>
namespace
{
const int TIME = 300000; // 5 minute
}
STimer::STimer(): m_pTimer(new QTimer), m_nPreviousHour(-1)
{
m_pTimer->setInterval(TIME);
connect(&(*m_pTimer), &QTimer::timeout, this, &checkTimeout);
}
STimer::~STimer()
{
disconnect(&(*m_pTimer), &QTimer::timeout, this, &checkTimeout);
}
STimer::STimer(int time): STimer()
{
if (0 <= time && time < 24)
m_setTime.insert(time);
}
STimer::STimer(QVector<int> times): STimer()
{
foreach (int time, times)
{
if (0 <= time && time < 24)
m_setTime.insert(time);
}
}
void STimer::start()
{
if (!m_pTimer->isActive())
m_pTimer->start();
}
void STimer::stop()
{
if (m_pTimer->isActive())
m_pTimer->stop();
}
bool STimer::isActive() const noexcept
{
return m_pTimer->isActive();
}
void STimer::set(int time)
{
if (0 <= time && time < 24)
m_setTime.insert(time);
}
void STimer::set(QVector<int> times)
{
foreach (int time, times)
{
set(time);
}
}
void STimer::unset(int time)
{
m_setTime.remove(time);
}
void STimer::unset(QVector<int> times)
{
foreach (int time, times)
{
unset(time);
}
}
int STimer::timerId() const
{
return m_pTimer->timerId();
}
void STimer::checkTimeout()
{
QTime now = QTime::currentTime();
bool bChangedHour = (m_nPreviousHour == now.hour()) ? false : true;
m_nPreviousHour = now.hour();
if (bChangedHour && m_setTime.contains(now.hour()))
emit timeout();
}

48
EffectUI/stimer.h Normal file
View File

@@ -0,0 +1,48 @@
#ifndef STIMER
#define STIMER
#include <QObject>
#include <memory>
#include <QSet>
#include <QVector>
class QTimer;
class STimer:public QObject
{
Q_OBJECT
private:
std::unique_ptr<QTimer> m_pTimer;
QSet<int> m_setTime;
int m_nPreviousHour;
public:
explicit STimer();
explicit STimer(int time);
STimer(QVector<int> times);
STimer(const STimer& other) = delete;
STimer& operator=(const STimer& other) = delete;
void start();
void stop();
bool isActive() const noexcept;
void set(int time);
void set(QVector<int> times);
void unset(int time);
void unset(QVector<int> times);
int timerId() const;
~STimer();
signals:
void timeout();
private slots:
void checkTimeout();
};
#endif // STIMER

38
EffectUI/sutilclass.cpp Normal file
View File

@@ -0,0 +1,38 @@
#include "sutilclass.h"
STableWidgetItem::STableWidgetItem(int type): QTableWidgetItem(type)
{
}
STableWidgetItem::STableWidgetItem(const QIcon &icon, const QString &text, int type):
QTableWidgetItem(icon, text, type)
{
}
STableWidgetItem::STableWidgetItem(const QString &text, int type):
QTableWidgetItem(text, type)
{
}
STableWidgetItem::STableWidgetItem(const STableWidgetItem &other):
QTableWidgetItem(other)
{
}
bool STableWidgetItem::operator <(const QTableWidgetItem &other) const
{
bool ok1, ok2;
int nThis = text().toInt(&ok1);
int nOther = other.text().toInt(&ok2);
if (ok1 && ok2)
{
return nThis < nOther;
}
else
{
return text() < other.text();
}
}

18
EffectUI/sutilclass.h Normal file
View File

@@ -0,0 +1,18 @@
#ifndef SUTILCLASS
#define SUTILCLASS
#include <QTableWidgetItem>
class STableWidgetItem : public QTableWidgetItem
{
public:
STableWidgetItem(int type = Type);
STableWidgetItem(const QString & text, int type = Type);
STableWidgetItem(const QIcon & icon, const QString & text, int type = Type);
STableWidgetItem(const STableWidgetItem & other);
virtual bool operator<(const QTableWidgetItem & other) const override;
};
#endif // SUTILCLASS

View File

@@ -0,0 +1,30 @@
#include "sutilfunction.h"
#include <QString>
#include <QSettings>
#include <QSqlDatabase>
#include <QMessageBox>
void databaseSetting(const QString &str)
{
QSettings settings("effect.ini");
settings.beginGroup("database");
QString strHostName = settings.value("host", "182.162.171.147").toString();
QString strUser = settings.value("user", "admin").toString();
QString strPass = settings.value("pass", "admin123").toString();
QString strDbName = settings.value("name", "bigbird").toString();
settings.endGroup();
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL", str);
db.setHostName(strHostName);
db.setDatabaseName(strDbName);
db.setUserName(strUser);
db.setPassword(strPass);
}
void messageBoxError(const QString &title, const QString &body)
{
QMessageBox messagebox(QMessageBox::Critical, title, body);
messagebox.exec();
}

9
EffectUI/sutilfunction.h Normal file
View File

@@ -0,0 +1,9 @@
#ifndef SUTILFUNCTION
#define SUTILFUNCTION
class QString;
void databaseSetting(const QString& str);
void messageBoxError(const QString& title, const QString &body);
#endif // SUTILFUNCTION

21
EffectUI/widget.cpp Normal file
View File

@@ -0,0 +1,21 @@
#include "widget.h"
#include "ui_widget.h"
#include "scompanylistwidget.h"
#include <QBoxLayout>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
SCompanyListWidget *c = new SCompanyListWidget(this);
setLayout(c->getLayout());
show();
c->refresh();
}
Widget::~Widget()
{
}

26
EffectUI/widget.h Normal file
View File

@@ -0,0 +1,26 @@
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <memory>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
private:
std::unique_ptr<Ui::Widget> ui;
};
#endif // WIDGET_H

20
EffectUI/widget.ui Normal file
View File

@@ -0,0 +1,20 @@
<ui version="4.0">
<class>Widget</class>
<widget class="QWidget" name="Widget" >
<property name="geometry" >
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle" >
<string>Widget</string>
</property>
</widget>
<layoutDefault spacing="6" margin="11" />
<pixmapfunction></pixmapfunction>
<resources/>
<connections/>
</ui>

View File

@@ -251,7 +251,8 @@ void SBatchRun::ViewResult()
for (int k = 0; k < pTable->columnCount() ; k++)
{
QString str = m_vecData[i][j][k].replace("\n"," ");
pTable->setItem(nCount,k,new STableWidgetItem(" "+str.replace("\t"," ")+" "));
//pTable->setItem(nCount,k,new STableWidgetItem(" "+str.replace("\t"," ")+" "));
pTable->setItem(nCount,k,new STableWidgetItem(str.replace("\t"," ")));
}
nCount++;
GetMainWindow()->m_progress.setValue(nCount);
@@ -503,6 +504,7 @@ bool SBatchRun::loadData()
for(int j = 0; j < GetColumn().data().size(); j++)
//strList << " " + query.value(j).toString() + " ";
strList.append(" " + query.value(j).toString() + " ");
//strList.append(query.value(j).toString());
/*
if(strList[m_anData[E_DATA_platform_form]].trimmed() == "post" || strList[m_anData[E_DATA_platform_form]].trimmed() == "story" || strList[m_anData[E_DATA_platform_form]].trimmed() == "channel")
strList[m_anData[E_DATA_platform_form]] = "sns";

View File

@@ -13,7 +13,8 @@
#include <QSqlError>
#include <QMenuBar>
#include <QInputDialog>
#include "stable.h"
//STableWidgetItem
#define D_NOT_SELECT -1
@@ -1120,7 +1121,7 @@ void YMBasicWidget::ViewResult()
pNew->setRowCount(m_mapViewResult[iterPos.key()][iterPos2.key()].size());
pNew->setHorizontalHeaderItem(0 ,new QTableWidgetItem("Morphere"));
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("Keyword"));
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(2 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -1129,7 +1130,7 @@ void YMBasicWidget::ViewResult()
i.previous();
pNew->setItem(ncRow,0,new QTableWidgetItem(QString(i.value().split("~!@").at(0))));
pNew->setItem(ncRow,1,new QTableWidgetItem(QString(i.value().split("~!@").at(1))));
pNew->setItem(ncRow,2,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,2,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());
@@ -1144,7 +1145,7 @@ void YMBasicWidget::ViewResult()
pNew->setColumnCount(2);
pNew->setRowCount(m_mapViewResult[iterPos.key()][iterPos2.key()].size());
pNew->setHorizontalHeaderItem(0 ,new QTableWidgetItem("Keyword"));
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(1 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -1152,7 +1153,7 @@ void YMBasicWidget::ViewResult()
{
i.previous();
pNew->setItem(ncRow,0,new QTableWidgetItem(QString(i.value())));
pNew->setItem(ncRow,1,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,1,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());

View File

@@ -14,7 +14,7 @@
#include <QSqlError>
#include <QMenuBar>
#include <QInputDialog>
#include "stable.h"
#define D_NOT_SELECT -1
@@ -905,20 +905,20 @@ void YMCenterKeywordWidget::ViewResult()
pNew->setRowCount(totalRow);
//for(int i = 0; i < 3; i++)
pNew->setHorizontalHeaderItem(0 ,new QTableWidgetItem(QString("CenterCeyword")));
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem(QString("Sentence")));
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem(QString("Count")));
pNew->setHorizontalHeaderItem(3 ,new QTableWidgetItem(QString("Garbage Date")));
pNew->setHorizontalHeaderItem(0 ,new STableWidgetItem(QString("CenterCeyword")));
pNew->setHorizontalHeaderItem(1 ,new STableWidgetItem(QString("Sentence")));
pNew->setHorizontalHeaderItem(2 ,new STableWidgetItem(QString("Count")));
pNew->setHorizontalHeaderItem(3 ,new STableWidgetItem(QString("Garbage Date")));
for(QMap<QString, QMap<QString, int> >::iterator iterPos2 = iterPos.value().begin(); iterPos2 != iterPos.value().end(); iterPos2++)
{
for(QMap<QString, int>::iterator iterPos3 = iterPos2.value().begin(); iterPos3 != iterPos2.value().end(); iterPos3++)
{
pNew->setItem(ncRow, 0, new QTableWidgetItem(QString(iterPos2.key())));
pNew->setItem(ncRow, 1, new QTableWidgetItem(QString(iterPos3.key())));
pNew->setItem(ncRow, 2, new QTableWidgetItem(QString::number(iterPos3.value())));
pNew->setItem(ncRow, 3, new QTableWidgetItem(QString("2015-01-01 22:22:22")));
pNew->setItem(ncRow, 0, new STableWidgetItem(QString(iterPos2.key())));
pNew->setItem(ncRow, 1, new STableWidgetItem(QString(iterPos3.key())));
pNew->setItem(ncRow, 2, new STableWidgetItem(QString::number(iterPos3.value())));
pNew->setItem(ncRow, 3, new STableWidgetItem(QString("2015-01-01 22:22:22")));
ncRow++;
}
}

View File

@@ -881,9 +881,9 @@ void YMNxNMatrixWidget::ViewResult()
int ncRow = 0;
for(int i = 0; i <= m_mapViewResult[iterPos.key()].size(); i++)
pNew->setHorizontalHeaderItem(i ,new QTableWidgetItem(QString::number(i)));
pNew->setHorizontalHeaderItem(i ,new STableWidgetItem(QString::number(i)));
pNew->setItem(ncRow, 0, new QTableWidgetItem(QString("")));
pNew->setItem(ncRow, 0, new STableWidgetItem(QString("")));
for(QMap<QString, QMap<QString, int> >::iterator iterPos2 = iterPos.value().begin(); iterPos2 != iterPos.value().end(); iterPos2++)
{
@@ -892,7 +892,7 @@ void YMNxNMatrixWidget::ViewResult()
while(i.hasNext())
{
i.next();
pNew->setItem(ncRow, j++, new QTableWidgetItem(QString(i.key())));
pNew->setItem(ncRow, j++, new STableWidgetItem(QString(i.key())));
}
}
@@ -901,7 +901,7 @@ void YMNxNMatrixWidget::ViewResult()
for(QMap<QString, QMap<QString, int> >::iterator iterPos2 = iterPos.value().begin(); iterPos2 != iterPos.value().end(); iterPos2++)
{
pNew->setItem(ncRow, 0, new QTableWidgetItem(QString(iterPos2.key())));
pNew->setItem(ncRow, 0, new STableWidgetItem(QString(iterPos2.key())));
int j = 1;
//i.toBack();
@@ -911,7 +911,7 @@ void YMNxNMatrixWidget::ViewResult()
while(i.hasNext())
{
i.next();
pNew->setItem(ncRow,j++,new QTableWidgetItem(QString::number(i.value())));
pNew->setItem(ncRow,j++,new STableWidgetItem(QString::number(i.value())));
}
ncRow++;
//temp->addTab(pNew, iterPos2.key());

View File

@@ -1904,7 +1904,7 @@ void YMOneDepthWidget::ViewResult()
pNew->setRowCount(m_mapViewResult[iterPos.key()][iterPos2.key()].size());
pNew->setHorizontalHeaderItem(0 ,new QTableWidgetItem("Morphere"));
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("Keyword"));
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(2 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -1913,7 +1913,7 @@ void YMOneDepthWidget::ViewResult()
i.previous();
pNew->setItem(ncRow,0,new QTableWidgetItem(QString(i.value().split("~!@").at(0))));
pNew->setItem(ncRow,1,new QTableWidgetItem(QString(i.value().split("~!@").at(1))));
pNew->setItem(ncRow,2,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,2,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());
@@ -1928,7 +1928,7 @@ void YMOneDepthWidget::ViewResult()
pNew->setColumnCount(2);
pNew->setRowCount(m_mapViewResult[iterPos.key()][iterPos2.key()].size());
pNew->setHorizontalHeaderItem(0 ,new QTableWidgetItem("Keyword"));
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(1 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -1936,7 +1936,7 @@ void YMOneDepthWidget::ViewResult()
{
i.previous();
pNew->setItem(ncRow,0,new QTableWidgetItem(QString(i.value())));
pNew->setItem(ncRow,1,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,1,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());

View File

@@ -944,7 +944,7 @@ void YMPlatformWidget::ViewResult()
pNew->setHorizontalHeaderItem(3 ,new QTableWidgetItem("1D Keyword"));
pNew->setHorizontalHeaderItem(4 ,new QTableWidgetItem("2D Morphere"));
pNew->setHorizontalHeaderItem(5 ,new QTableWidgetItem("2D Keyword"));
pNew->setHorizontalHeaderItem(6 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(6 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -958,7 +958,7 @@ void YMPlatformWidget::ViewResult()
pNew->setItem(ncRow,4,new QTableWidgetItem(QString(i.value().split("~!@").at(4))));
pNew->setItem(ncRow,5,new QTableWidgetItem(QString(i.value().split("~!@").at(5))));
pNew->setItem(ncRow,6,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,6,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());
@@ -977,7 +977,7 @@ void YMPlatformWidget::ViewResult()
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem("1D Keyword"));
pNew->setHorizontalHeaderItem(3 ,new QTableWidgetItem("2D Morphere"));
pNew->setHorizontalHeaderItem(4 ,new QTableWidgetItem("2D Keyword"));
pNew->setHorizontalHeaderItem(5 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(5 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -989,7 +989,7 @@ void YMPlatformWidget::ViewResult()
pNew->setItem(ncRow,2,new QTableWidgetItem(QString(i.value().split("~!@").at(2))));
pNew->setItem(ncRow,3,new QTableWidgetItem(QString(i.value().split("~!@").at(3))));
pNew->setItem(ncRow,4,new QTableWidgetItem(QString(i.value().split("~!@").at(4))));
pNew->setItem(ncRow,5,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,5,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());

View File

@@ -1037,7 +1037,7 @@ void YMTwoDepthAWidget::ViewResult()
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("1D Keyword"));
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem("2D Morphere"));
pNew->setHorizontalHeaderItem(3 ,new QTableWidgetItem("2D Keyword"));
pNew->setHorizontalHeaderItem(4 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(4 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -1048,7 +1048,7 @@ void YMTwoDepthAWidget::ViewResult()
pNew->setItem(ncRow,1,new QTableWidgetItem(QString(i.value().split("~!@").at(1))));
pNew->setItem(ncRow,2,new QTableWidgetItem(QString(i.value().split("~!@").at(2))));
pNew->setItem(ncRow,3,new QTableWidgetItem(QString(i.value().split("~!@").at(3))));
pNew->setItem(ncRow,4,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,4,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());
@@ -1065,7 +1065,7 @@ void YMTwoDepthAWidget::ViewResult()
pNew->setHorizontalHeaderItem(0 ,new QTableWidgetItem("1D Keyword"));
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("2D Morphere"));
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem("2D Keyword"));
pNew->setHorizontalHeaderItem(3 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(3 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -1075,7 +1075,7 @@ void YMTwoDepthAWidget::ViewResult()
pNew->setItem(ncRow,0,new QTableWidgetItem(QString(i.value().split("~!@").at(0))));
pNew->setItem(ncRow,1,new QTableWidgetItem(QString(i.value().split("~!@").at(1))));
pNew->setItem(ncRow,2,new QTableWidgetItem(QString(i.value().split("~!@").at(2))));
pNew->setItem(ncRow,3,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,3,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());

View File

@@ -936,7 +936,7 @@ void YMTwoDepthWidget::ViewResult()
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("1D Keyword"));
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem("2D Morphere"));
pNew->setHorizontalHeaderItem(3 ,new QTableWidgetItem("2D Keyword"));
pNew->setHorizontalHeaderItem(4 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(4 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -947,7 +947,7 @@ void YMTwoDepthWidget::ViewResult()
pNew->setItem(ncRow,1,new QTableWidgetItem(QString(i.value().split("~!@").at(1))));
pNew->setItem(ncRow,2,new QTableWidgetItem(QString(i.value().split("~!@").at(2))));
pNew->setItem(ncRow,3,new QTableWidgetItem(QString(i.value().split("~!@").at(3))));
pNew->setItem(ncRow,4,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,4,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());
@@ -964,7 +964,7 @@ void YMTwoDepthWidget::ViewResult()
pNew->setHorizontalHeaderItem(0 ,new QTableWidgetItem("1D Keyword"));
pNew->setHorizontalHeaderItem(1 ,new QTableWidgetItem("2D Morphere"));
pNew->setHorizontalHeaderItem(2 ,new QTableWidgetItem("2D Keyword"));
pNew->setHorizontalHeaderItem(3 ,new QTableWidgetItem("Count"));
pNew->setHorizontalHeaderItem(3 ,new STableWidgetItem("Count"));
QMapIterator<int, QString> i(m_mapViewResult[iterPos.key()][iterPos2.key()]);
i.toBack();
@@ -974,7 +974,7 @@ void YMTwoDepthWidget::ViewResult()
pNew->setItem(ncRow,0,new QTableWidgetItem(QString(i.value().split("~!@").at(0))));
pNew->setItem(ncRow,1,new QTableWidgetItem(QString(i.value().split("~!@").at(1))));
pNew->setItem(ncRow,2,new QTableWidgetItem(QString(i.value().split("~!@").at(2))));
pNew->setItem(ncRow,3,new QTableWidgetItem(QString::number(i.key())));
pNew->setItem(ncRow,3,new STableWidgetItem(QString::number(i.key())));
ncRow++;
}
temp->addTab(pNew, iterPos2.key());

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.0, 2016-09-02T19:03:13. -->
<!-- Written by QtCreator 3.3.0, 2016-10-05T15:40:28. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>