새로운 기능 추가
git-svn-id: svn://192.168.0.12/source@99 8346c931-da38-4b9b-9d4c-e48b93cbd075
This commit is contained in:
@@ -11,11 +11,12 @@ greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
|||||||
TARGET = Filter
|
TARGET = Filter
|
||||||
TEMPLATE = app
|
TEMPLATE = app
|
||||||
|
|
||||||
SOURCES += main.cpp\
|
SOURCES += main.cpp \
|
||||||
widget.cpp \
|
widget.cpp \
|
||||||
../Json/sjson.cpp
|
../Json/sjson.cpp
|
||||||
|
|
||||||
HEADERS += widget.h \
|
HEADERS += widget.h \
|
||||||
../Json/sjson.h \
|
../Json/sjson.h \
|
||||||
../common.h
|
../common.h \
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
2154
Filter/widget.cpp
2154
Filter/widget.cpp
File diff suppressed because it is too large
Load Diff
281
Filter/widget.h
281
Filter/widget.h
@@ -7,145 +7,8 @@
|
|||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
#include <QSqlDatabase>
|
#include <QSqlDatabase>
|
||||||
#include <QLineEdit>
|
#include <QLineEdit>
|
||||||
#include <QVector>
|
|
||||||
#include <QDateTime>
|
#include <QDateTime>
|
||||||
|
#include <QProcess>
|
||||||
//#include "SGetThread.h"
|
|
||||||
//#include "SPutThread.h"
|
|
||||||
struct SReply
|
|
||||||
{
|
|
||||||
QStringList m_strlist;
|
|
||||||
QDate m_date;
|
|
||||||
bool m_bSelect;
|
|
||||||
int m_nOrder;
|
|
||||||
QVector <int> m_vecCategory;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SBody
|
|
||||||
{
|
|
||||||
int m_nNum;
|
|
||||||
QStringList m_strlist;
|
|
||||||
bool m_bSelect;
|
|
||||||
bool m_bReplySelect;
|
|
||||||
QDateTime m_dtLast;
|
|
||||||
QDate m_date;
|
|
||||||
QMap <int,SReply> m_vecReply;
|
|
||||||
QVector <int> m_vecCategory;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SMap
|
|
||||||
{
|
|
||||||
int m_nBody;
|
|
||||||
int m_nCategory;
|
|
||||||
int m_nRealIn;
|
|
||||||
QString m_strURL;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SInfluenceCount
|
|
||||||
{
|
|
||||||
int m_ncBody;
|
|
||||||
int m_ncReply;
|
|
||||||
double m_dinfulrence;
|
|
||||||
int m_nID;
|
|
||||||
int m_nNickname;
|
|
||||||
int m_nCommunity;
|
|
||||||
QString m_strID;
|
|
||||||
QString m_strOrder;
|
|
||||||
QStringList m_strlistData;
|
|
||||||
SInfluenceCount()
|
|
||||||
{
|
|
||||||
m_nNickname = 0;
|
|
||||||
m_nCommunity = 0;
|
|
||||||
m_nID = 0;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SPowerCafeCount
|
|
||||||
{
|
|
||||||
QString m_strCafeID;
|
|
||||||
QString m_strCommunityURL;
|
|
||||||
QStringList m_strlistData;
|
|
||||||
int m_nCommunityID;
|
|
||||||
int m_ncBodyAll;
|
|
||||||
int m_ncReplyAll;
|
|
||||||
int m_ncAll;
|
|
||||||
int m_ncBodyReal;
|
|
||||||
int m_ncReplyReal;
|
|
||||||
int m_ncAllReal;
|
|
||||||
int m_ncUserReal;
|
|
||||||
int m_ncUserAll;
|
|
||||||
QMap <QString,bool> m_mapUser;
|
|
||||||
SPowerCafeCount()
|
|
||||||
{
|
|
||||||
m_ncBodyAll = 0;
|
|
||||||
m_ncReplyAll = 0;
|
|
||||||
m_ncAll = 0;
|
|
||||||
m_ncBodyReal = 0;
|
|
||||||
m_ncReplyReal = 0;
|
|
||||||
m_ncAllReal = 0;
|
|
||||||
m_ncUserReal = 0;
|
|
||||||
m_ncUserAll = 0;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SBuzzyArticle
|
|
||||||
{
|
|
||||||
QMap <QDate,int> m_mapCount;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define D_ARTICLE_MAX 3
|
|
||||||
|
|
||||||
struct SBuzzyCount
|
|
||||||
{
|
|
||||||
int m_nCategory;
|
|
||||||
int m_anCount[D_ARTICLE_MAX];
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SId
|
|
||||||
{
|
|
||||||
int m_nNum;
|
|
||||||
int m_nPlatfromName;
|
|
||||||
int m_nCommunity;
|
|
||||||
QString m_strID;
|
|
||||||
SId()
|
|
||||||
{
|
|
||||||
m_nNum = 0;
|
|
||||||
m_nPlatfromName = 1;
|
|
||||||
m_nCommunity = 0;
|
|
||||||
m_strID = "(none)";
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SCommunity
|
|
||||||
{
|
|
||||||
int m_nNum;
|
|
||||||
int m_nPlatformname;
|
|
||||||
int m_nPlatformform;
|
|
||||||
QString m_strTitle;
|
|
||||||
QString m_strUrl;
|
|
||||||
QString m_strID;
|
|
||||||
|
|
||||||
SCommunity()
|
|
||||||
{
|
|
||||||
m_nNum = 0;
|
|
||||||
m_nPlatformname = 1;
|
|
||||||
m_nPlatformform = 1;
|
|
||||||
m_strTitle = "(none)";
|
|
||||||
m_strUrl = " ";
|
|
||||||
m_strID = " ";
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SNickname
|
|
||||||
{
|
|
||||||
int m_nNum;
|
|
||||||
int m_nID;
|
|
||||||
QString m_strNickname;
|
|
||||||
SNickname()
|
|
||||||
{
|
|
||||||
m_nID = 0;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
class Widget : public QWidget
|
class Widget : public QWidget
|
||||||
{
|
{
|
||||||
@@ -160,135 +23,49 @@ public:
|
|||||||
E_LIST_COMPANY,
|
E_LIST_COMPANY,
|
||||||
E_LIST_CATALOG,
|
E_LIST_CATALOG,
|
||||||
E_LIST_MAX
|
E_LIST_MAX
|
||||||
};
|
|
||||||
enum E_COLUMN
|
|
||||||
{
|
|
||||||
E_COLUMN_DATABASE=0,
|
|
||||||
E_COLUMN_NAME,
|
|
||||||
E_COLUMN_DATE,
|
|
||||||
E_COLUMN_COUNT,
|
|
||||||
};
|
};
|
||||||
|
void FilterProcssRefresh(QString _strGroupID);
|
||||||
enum E_ARTICLE
|
void Refresh();
|
||||||
{
|
|
||||||
E_ARTICLE_BODY = 0,
|
|
||||||
E_ARTICLE_REPLY,
|
|
||||||
E_ARTICLE_MAX,
|
|
||||||
};
|
|
||||||
|
|
||||||
enum E_DATA
|
|
||||||
{
|
|
||||||
E_DATA_platform_title = 0,
|
|
||||||
E_DATA_article_form,
|
|
||||||
E_DATA_article_parent,
|
|
||||||
E_DATA_article_id,
|
|
||||||
E_DATA_article_nickname,
|
|
||||||
E_DATA_article_title,
|
|
||||||
E_DATA_article_data,
|
|
||||||
E_DATA_article_url,
|
|
||||||
E_DATA_article_hit,
|
|
||||||
E_DATA_article_date,
|
|
||||||
E_DATA_article_order,
|
|
||||||
E_DATA_platform_id,
|
|
||||||
E_DATA_platform_name,
|
|
||||||
E_DATA_platform_form,
|
|
||||||
E_DATA_reply_url,
|
|
||||||
E_DATA_keyword_id,
|
|
||||||
E_DATA_article_profileurl,
|
|
||||||
E_DATA_article_profile,
|
|
||||||
E_DATA_MAX,
|
|
||||||
};
|
|
||||||
|
|
||||||
enum E_SPAMER
|
|
||||||
{
|
|
||||||
E_SPAMER_BODY_COUNT_CUT = 0,
|
|
||||||
E_SPAMER_BODY_COUNT_RATIO,
|
|
||||||
E_SPAMER_NICK_COUNT_CUT,
|
|
||||||
E_SPAMER_NICK_COUNT_RATIO,
|
|
||||||
E_SPAMER_MAX
|
|
||||||
};
|
|
||||||
|
|
||||||
struct SBuzzy
|
|
||||||
{
|
|
||||||
SBuzzyArticle m_astArticle[E_ARTICLE_MAX];
|
|
||||||
int m_nArticle;
|
|
||||||
int m_nCategory;
|
|
||||||
};
|
|
||||||
|
|
||||||
const int C_MAP_REAL_BODY;
|
|
||||||
const int C_MAP_REAL_REPLY;
|
|
||||||
|
|
||||||
int m_anData[E_DATA_MAX];
|
|
||||||
void Refresh();
|
|
||||||
private:
|
private:
|
||||||
QListWidget *m_plw;
|
QListWidget *m_plw;
|
||||||
QListWidget *m_plwLog;
|
QListWidget *m_plwLog;
|
||||||
QListWidget *m_plwFilterProcess;
|
QListWidget *m_plwFilterProcess;
|
||||||
QProgressBar *m_pProg;
|
QListWidget *m_plwFilterProcessGroup;
|
||||||
|
QListWidget *m_plwProcess;
|
||||||
QTimer m_timer;
|
QTimer m_timer;
|
||||||
int m_nMode;
|
QLineEdit *m_pleFilterProcessGroup;
|
||||||
int m_nDateColumn;
|
|
||||||
int m_nUrlColumn;
|
|
||||||
int m_nOrderColumn;
|
|
||||||
QVector <QStringList> m_data[E_ARTICLE_MAX];
|
|
||||||
bool m_bDataFlag[E_ARTICLE_MAX];
|
|
||||||
QStringList m_listDataBaseColumn;
|
|
||||||
QMap <QString,SBody> m_mapData;
|
|
||||||
QVector <SMap> m_vecMap;
|
|
||||||
QStringList m_strlistOrder;
|
|
||||||
QSqlDatabase db;
|
|
||||||
QVector <SInfluenceCount> m_vecInfluence;
|
|
||||||
QVector <SBuzzy> m_vecBuzzy;
|
|
||||||
/////////////////////////////////////////////////////
|
|
||||||
QMap <QString,SId> m_mapID;
|
|
||||||
QMap <QString,SCommunity> m_mapCommunity;
|
|
||||||
QMap <QString,SNickname> m_mapNickname;
|
|
||||||
QMap <QString,int> m_mapPlatformform;
|
|
||||||
QMap <QString,int> m_mapPlatformname;
|
|
||||||
|
|
||||||
int m_nIDMax;
|
QSqlDatabase m_db;
|
||||||
int m_nNickMax;
|
|
||||||
int m_nCommunityMax;
|
|
||||||
//SGetThread *m_pThread;
|
|
||||||
//SPutThread *m_pPutThread;
|
|
||||||
//QVector <QStringList> m_mainData;
|
|
||||||
private:
|
|
||||||
void InsertLog(QString str);
|
void InsertLog(QString str);
|
||||||
void FilterProcssRefresh();
|
void InsertFilterProcess(int _nProcessType);
|
||||||
//void DataGet(QStringList _list);
|
void Kill(int _nProcess);
|
||||||
void DataFilter(QString _strFilterGroupID);
|
|
||||||
void DataPut(QString _strCompanyNum);
|
|
||||||
QString GetVectorToString(QVector <int> _vecCategory,QString _strDelimiter);
|
|
||||||
void DataMake(int _nCategory);
|
|
||||||
QString SqlString(QString _str);
|
|
||||||
void FilterDate(QString strJson);
|
|
||||||
void FilterSerach(QString strJson);
|
|
||||||
void FilterLength(QString strJson);
|
|
||||||
void FilterReplace(QString strJson);
|
|
||||||
bool ReloadColumn();
|
|
||||||
void ReloadData();
|
|
||||||
QString SeqDelString(QString _strData,QChar _chChar,int _nMax);
|
|
||||||
QString MakeInfluencerrankQuery(const SInfluenceCount &_stIn,int _nRank,QString _strSubject,QString _strCompanyNum);
|
|
||||||
void MakeBuzzyAll();
|
|
||||||
void MakeBuzzy(int _nCategory);
|
|
||||||
QVariant GetWebData(QString _strTable,QString _strColumn,int _nNum);
|
|
||||||
void InfluenceCount();
|
|
||||||
void ConsumerSupervisionCount();
|
|
||||||
//inline QString GetComKey(const QStringList _strList);
|
|
||||||
inline QString GetCommunityKey(const QStringList _strList);
|
|
||||||
|
|
||||||
|
#define D_PROCESS_MAX 1024
|
||||||
|
QProcess m_aProcess[D_PROCESS_MAX];
|
||||||
private slots:
|
private slots:
|
||||||
void CompanyItemChanged(QListWidgetItem*,QListWidgetItem* _prev = 0);
|
void CompanyItemChanged(QListWidgetItem*,QListWidgetItem* _prev = 0);
|
||||||
void DataItemClicked(QListWidgetItem*);
|
void FilterProcessGroupClicked(QListWidgetItem*);
|
||||||
void on_insert();
|
void on_load();
|
||||||
void on_send();
|
void on_start();
|
||||||
void on_delete();
|
void on_stop();
|
||||||
void on_refresh();
|
void on_refresh();
|
||||||
|
void on_category();
|
||||||
|
void on_send();
|
||||||
|
void on_delete();
|
||||||
void on_influence_count();
|
void on_influence_count();
|
||||||
void on_power_cafe_count();
|
void on_power_cafe_count();
|
||||||
void on_consumer_supervison_count();
|
void on_consumer_supervison_count();
|
||||||
void on_spammers_count();
|
void on_spammers_count();
|
||||||
void Update();
|
|
||||||
|
void on_process_insert();
|
||||||
|
void on_process_delete();
|
||||||
|
|
||||||
|
void on_filter_process_group_insert();
|
||||||
|
void on_filter_process_group_delete();
|
||||||
|
void on_filter_process_group_modify();
|
||||||
|
void time_update();
|
||||||
|
|
||||||
|
void process_output();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // WIDGET_H
|
#endif // WIDGET_H
|
||||||
|
|||||||
Reference in New Issue
Block a user