카테고리 중간 수정버전
git-svn-id: svn://192.168.0.12/source@261 8346c931-da38-4b9b-9d4c-e48b93cbd075
This commit is contained in:
@@ -55,12 +55,17 @@ bool SSpammer::changeTable(int _companyNum)
|
||||
QSqlDatabase dbWeb = m_pSInitializer->getDatabase(SDBManager::E_DATABASE_WEB);
|
||||
if (!m_SBodySpammerMap.changeTable(dbWeb, _companyNum))
|
||||
{
|
||||
m_pSInitializer->insertLog("Fail to upload spammer body map");
|
||||
m_pSInitializer->insertLog("Fail to change spammer body map");
|
||||
return false;
|
||||
}
|
||||
if (!m_SReplySpammerMap.changeTable(dbWeb, _companyNum))
|
||||
{
|
||||
m_pSInitializer->insertLog("Fail to upload spammer reply map");
|
||||
m_pSInitializer->insertLog("Fail to change spammer reply map");
|
||||
return false;
|
||||
}
|
||||
if (!m_STSpammer.changeTable(dbWeb, _companyNum))
|
||||
{
|
||||
m_pSInitializer->insertLog("Fail to change spammer");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
@@ -100,8 +105,8 @@ bool SSpammer::makeCategory(SDatagroup &_datagroup, int _nCategory, const QList<
|
||||
}
|
||||
}
|
||||
stReal streal;
|
||||
qDebug() << "filtered size: " << vecData[SInitializer::E_ARTICLE_BODY].size();
|
||||
qDebug() << "filtered size: " << vecData[SInitializer::E_ARTICLE_REPLY].size();
|
||||
m_pSInitializer->insertLog(QString("CategoryNum:") + QString::number(_nCategory) + ",(" +
|
||||
QString::number(vecData[SInitializer::E_ARTICLE_BODY].size()) + '/' + QString::number(vecData[SInitializer::E_ARTICLE_REPLY].size()) + ")" + "(Body/Reply)" );
|
||||
const int *anColumn = m_pSInitializer->getColumnIntArray();
|
||||
if (bFiltered[SInitializer::E_ARTICLE_BODY])
|
||||
{
|
||||
@@ -130,20 +135,43 @@ bool SSpammer::makeCategory(SDatagroup &_datagroup, int _nCategory, const QList<
|
||||
|
||||
bool SSpammer::makeOverallCategory(int _categoryNum)
|
||||
{
|
||||
if (m_mapCategory.size() < 1)
|
||||
return true;
|
||||
|
||||
stReal streal;
|
||||
for (QMap<int, stReal>::iterator iterPos = m_mapCategory.begin(); iterPos != m_mapCategory.end(); iterPos++ )
|
||||
{
|
||||
stReal& val = iterPos.value();
|
||||
foreach (const QString& _strurl, val.m_setRealBodyUrl )
|
||||
streal.m_setRealBodyUrl.insert(_strurl);
|
||||
foreach (const QString& _strurl, val.m_setRealAllUrl )
|
||||
streal.m_setRealAllUrl.insert(_strurl);
|
||||
|
||||
for (QMap<QString, int>::iterator iterPos1 = val.m_mapRealReplyUniqueUrl.begin(); iterPos1 != val.m_mapRealReplyUniqueUrl.end();
|
||||
iterPos1++)
|
||||
{
|
||||
streal.m_mapRealReplyUniqueUrl.insertMulti(iterPos1.key(), iterPos1.value());
|
||||
}
|
||||
}
|
||||
|
||||
m_mapCategory.insert(_categoryNum, streal);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool SSpammer::makeTable(SDatagroup &_datagroup)
|
||||
{
|
||||
m_pSInitializer->insertLog("Make spammer tables");
|
||||
m_pSInitializer->insertLog("Make spammer spammer");
|
||||
m_STSpammer.makeTable(_datagroup, m_mapCategory, m_setSpammer);
|
||||
m_pSInitializer->insertLog("Make spammer stats_spa_spammer_rank tables");
|
||||
m_SStatsSpaSpammerRank.makeTable(_datagroup, m_mapCategory);
|
||||
m_pSInitializer->insertLog("Make spammer body tables");
|
||||
m_SBodySpammerMap.makeTable(_datagroup, m_mapCategory, m_setSpammer);
|
||||
m_pSInitializer->insertLog("Make spammer reply tables");
|
||||
m_SReplySpammerMap.makeTable(_datagroup, m_mapCategory, m_setSpammer);
|
||||
if (m_mapCategory.size() > 1)
|
||||
{
|
||||
m_pSInitializer->insertLog("Make spammer tables");
|
||||
m_pSInitializer->insertLog("Make spammer spammer");
|
||||
m_STSpammer.makeTable(_datagroup, m_mapCategory, m_setSpammer);
|
||||
m_pSInitializer->insertLog("Make spammer stats_spa_spammer_rank tables");
|
||||
m_SStatsSpaSpammerRank.makeTable(_datagroup, m_mapCategory);
|
||||
m_pSInitializer->insertLog("Make spammer body tables");
|
||||
m_SBodySpammerMap.makeTable(_datagroup, m_mapCategory, m_setSpammer);
|
||||
m_pSInitializer->insertLog("Make spammer reply tables");
|
||||
m_SReplySpammerMap.makeTable(_datagroup, m_mapCategory, m_setSpammer);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -197,6 +225,9 @@ void SSpammer::STSpammer::makeTable(SDatagroup &_datagroup, const QMap<int, stRe
|
||||
stspammer.nicknamecount = iterPos1->nickname.size();
|
||||
stspammer.id_num = iterPos1->id_num;
|
||||
stspammer.id_id = iterPos1.key().split(",").at(0);
|
||||
stspammer.category_num = iterPos.key();
|
||||
stspammer.platformname_name = iterPos1.key().split(",").at(1);
|
||||
stspammer.platformname_num = m_pSInitializer->getPlatformName(stspammer.platformname_name);
|
||||
if (stspammer.bodycount > m_pSInitializer->getSpammerParam()[SInitializer::E_SPAMER_BODY_COUNT_CUT] ||
|
||||
stspammer.replycount > m_pSInitializer->getSpammerParam()[SInitializer::E_SPAMER_NICK_COUNT_CUT] ||
|
||||
iterPos1->nickname.size() > m_pSInitializer->getSpammerParam()[SInitializer::E_SPAMER_NICK_COUNT_CUT])
|
||||
@@ -276,7 +307,7 @@ bool SSpammer::STSpammer::uploadData(QSqlDatabase &_db, const int &_nCompany)
|
||||
bool SSpammer::STSpammer::uploadData(QSqlDatabase &_db, const int &_nCompany)
|
||||
{
|
||||
//_db.transaction();
|
||||
QString strQuery = "delete from spammer where company_num = " + QString::number(_nCompany);
|
||||
QString strQuery = "delete from spammer_" + QString::number(_nCompany) + "_update";
|
||||
QSqlQuery query(_db);
|
||||
if (query.exec(strQuery.toUtf8()) == false)
|
||||
{
|
||||
@@ -286,7 +317,7 @@ bool SSpammer::STSpammer::uploadData(QSqlDatabase &_db, const int &_nCompany)
|
||||
}
|
||||
//_db.commit();
|
||||
//_db.transaction();
|
||||
strQuery = "insert into spammer (rank,id_num,id_id,nicknamecount,bodycount,replycount,spammervalue,company_num) VALUES (";
|
||||
strQuery = "insert into spammer_" + QString::number(_nCompany) + "_update (rank,id_num,id_id,nicknamecount,bodycount,replycount,spammervalue,category_num,platformname_name,platformname_num) VALUES (";
|
||||
|
||||
query.clear();
|
||||
|
||||
@@ -300,7 +331,9 @@ bool SSpammer::STSpammer::uploadData(QSqlDatabase &_db, const int &_nCompany)
|
||||
str += QString::number(stspammer.bodycount) + ",";
|
||||
str += QString::number(stspammer.replycount) + ",";
|
||||
str += QString::number(stspammer.spammervalue, 'g', 3) + ",";
|
||||
str += QString::number(_nCompany) + ")";
|
||||
str += QString::number(stspammer.category_num) + ",";
|
||||
str += "'" + stspammer.platformname_name + "',";
|
||||
str += QString::number(stspammer.platformname_num) + ")";
|
||||
|
||||
if (query.exec(str.toUtf8()) == false)
|
||||
{
|
||||
@@ -319,6 +352,26 @@ bool SSpammer::STSpammer::uploadData(QSqlDatabase &_db, const int &_nCompany)
|
||||
}
|
||||
|
||||
|
||||
bool SSpammer::STSpammer::changeTable(QSqlDatabase &_db, const int &_nCompany)
|
||||
{
|
||||
QString strQuery;
|
||||
QSqlQuery query(_db);
|
||||
strQuery = "RENAME TABLE ";
|
||||
strQuery += "spammer_" + QString::number(_nCompany) + " TO " + "spammer_" + QString::number(_nCompany) + "_temp" + ",";
|
||||
strQuery += "spammer_" + QString::number(_nCompany) + "_update" + " TO " + "spammer_" + QString::number(_nCompany) + ",";
|
||||
strQuery += "spammer_" + QString::number(_nCompany) + "_temp" + " TO " + "spammer_" + QString::number(_nCompany) + "_update";
|
||||
if (!query.exec(strQuery.toUtf8()))
|
||||
{
|
||||
m_pSInitializer->insertLog(query.lastQuery());
|
||||
m_pSInitializer->insertLog(query.lastError().text());
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void SSpammer::SStatsSpaSpammerRank::makeTable(SDatagroup &_datagroup, const QMap<int, stReal> &_mapCategory)
|
||||
{
|
||||
const QMap<QString, QStringList>* mapBody = _datagroup.getmapBody();
|
||||
@@ -506,20 +559,22 @@ void SSpammer::SBodySpammerMap::makeTable(SDatagroup &_datagroup, const QMap<int
|
||||
stbody.id_num = _datagroup.getstBody(strUrl)->id_num;
|
||||
stbody.category_num = iterPos.key();
|
||||
stbody.realin |= REAL_BODY;
|
||||
stbody.platformname_num = _datagroup.getstBody(strUrl)->platformname_num;
|
||||
stbody.body_date = _datagroup.getstBody(strUrl)->date;
|
||||
if (streal.m_mapRealReplyUniqueUrl.contains(strUrl))
|
||||
{
|
||||
stbody.realin |= REAL_REPLY;
|
||||
/*
|
||||
|
||||
foreach (int order, streal.m_mapRealReplyUniqueUrl.values(strUrl))
|
||||
{
|
||||
_datagroup.addRealReplyCategory(strUrl, order, iterPos.key());
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
m_listMap.append(stbody);
|
||||
//_datagroup.addRealBodyCategory(strUrl, iterPos.key());
|
||||
_datagroup.addRealBodyCategory(strUrl, iterPos.key());
|
||||
}
|
||||
/*
|
||||
|
||||
else if (streal.m_mapRealReplyUniqueUrl.contains(strUrl))
|
||||
{
|
||||
stBodySpammerMap stbody;
|
||||
@@ -528,13 +583,16 @@ void SSpammer::SBodySpammerMap::makeTable(SDatagroup &_datagroup, const QMap<int
|
||||
stbody.category_num = iterPos.key();
|
||||
stbody.id_num = _datagroup.getstBody(strUrl)->id_num;
|
||||
stbody.realin |= REAL_REPLY;
|
||||
stbody.platformname_num = _datagroup.getstBody(strUrl)->platformname_num;
|
||||
stbody.body_date = _datagroup.getstBody(strUrl)->date;
|
||||
|
||||
foreach (int order, streal.m_mapRealReplyUniqueUrl.values(strUrl))
|
||||
{
|
||||
_datagroup.addRealReplyCategory(strUrl, order, iterPos.key());
|
||||
}
|
||||
m_listMap.append(stbody);
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -585,7 +643,7 @@ bool SSpammer::SBodySpammerMap::uploadData(QSqlDatabase &_db, const int &_nCompa
|
||||
m_pSInitializer->insertLog(query.lastError().text());
|
||||
return false;
|
||||
}
|
||||
strQuery = "insert into body_spammer_map_" + QString::number(_nCompany) + "_update (num,category_num,id_num,body_num,realin)"
|
||||
strQuery = "insert into body_spammer_map_" + QString::number(_nCompany) + "_update (num,category_num,id_num,body_num,realin,body_date,platformname_num)"
|
||||
" values (";
|
||||
query.clear();
|
||||
|
||||
@@ -596,7 +654,9 @@ bool SSpammer::SBodySpammerMap::uploadData(QSqlDatabase &_db, const int &_nCompa
|
||||
str += QString::number(stmap.category_num) + ",";
|
||||
str += QString::number(stmap.id_num) + ",";
|
||||
str += QString::number(stmap.body_num) + ",";
|
||||
str += QString::number(stmap.realin) + ")";
|
||||
str += QString::number(stmap.realin) + ",";
|
||||
str += "'" + stmap.body_date + "',";
|
||||
str += QString::number(stmap.platformname_num) + ")";
|
||||
if (query.exec(str.toUtf8()) == false)
|
||||
{
|
||||
m_pSInitializer->insertLog(query.lastQuery());
|
||||
@@ -628,7 +688,12 @@ void SSpammer::SReplySpammerMap::makeTable(SDatagroup &_datagroup, const QMap<in
|
||||
streply.body_num = _datagroup.getstReply(iterPos1.key(), iterPos1.value())->body_num;
|
||||
streply.id_num = _datagroup.getstReply(iterPos1.key(), iterPos1.value())->id_num;
|
||||
streply.reply_num = _datagroup.getstReply(iterPos1.key(), iterPos1.value())->num;
|
||||
streply.body_date = _datagroup.getstBody(iterPos1.key())->date;
|
||||
m_listMap.append(streply);
|
||||
|
||||
|
||||
_datagroup.addRealReplyCategory(iterPos1.key(), iterPos1.value(), iterPos.key());
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -699,7 +764,7 @@ bool SSpammer::SReplySpammerMap::uploadData(QSqlDatabase &_db, const int &_nComp
|
||||
m_pSInitializer->insertLog(query.lastError().text());
|
||||
return false;
|
||||
}
|
||||
strQuery = "insert into reply_spammer_map_" + QString::number(_nCompany) + "_update (num,category_num,id_num,body_num,reply_num)"
|
||||
strQuery = "insert into reply_spammer_map_" + QString::number(_nCompany) + "_update (num,category_num,id_num,body_num,reply_num,body_date)"
|
||||
" values (";
|
||||
query.clear();
|
||||
|
||||
@@ -710,7 +775,8 @@ bool SSpammer::SReplySpammerMap::uploadData(QSqlDatabase &_db, const int &_nComp
|
||||
str += QString::number(stmap.category_num) + ",";
|
||||
str += QString::number(stmap.id_num) + ",";
|
||||
str += QString::number(stmap.body_num) + ",";
|
||||
str += QString::number(stmap.reply_num) + ")";
|
||||
str += QString::number(stmap.reply_num) + ",";
|
||||
str += "'" + stmap.body_date + "')";
|
||||
if (query.exec(str.toUtf8()) == false)
|
||||
{
|
||||
m_pSInitializer->insertLog(query.lastQuery());
|
||||
|
||||
Reference in New Issue
Block a user