2024-12-21 10:04:04 +08:00
# include "StdAfx.h"
# include "DNAppellationTask.h"
# include "DNConnection.h"
# include "DNSQLConnectionManager.h"
# include "DNSQLMembership.h"
# include "DNSQLWorld.h"
# include "Log.h"
CDNAppellationTask : : CDNAppellationTask ( CDNConnection * pConnection )
: CDNMessageTask ( pConnection )
{
}
CDNAppellationTask : : ~ CDNAppellationTask ( void )
{
}
void CDNAppellationTask : : OnRecvMessage ( int nThreadID , int nMainCmd , int nSubCmd , char * pData )
{
CDNSQLMembership * pMembershipDB = NULL ;
CDNSQLWorld * pWorldDB = NULL ;
int nRet = ERROR_DB ;
switch ( nSubCmd )
{
case QUERY_ADDAPPELLATION :
{
TQAddAppellation * pUpdate = ( TQAddAppellation * ) pData ;
pWorldDB = g_SQLConnectionManager . FindWorldDB ( nThreadID , pUpdate - > cWorldSetID ) ;
if ( pWorldDB ) {
nRet = pWorldDB - > QueryAddAppellation ( pUpdate - > biCharacterDBID , pUpdate - > nAppellationID , pUpdate - > Appellation ) ;
if ( nRet ! = ERROR_NONE ) {
g_Log . Log ( LogType : : _ERROR , pUpdate - > cWorldSetID , 0 , pUpdate - > biCharacterDBID , 0 , L " [CDBID:%lld] [QUERY_ADDAPPELLATION:%d] Query Error Ret:%d \r \n " , pUpdate - > biCharacterDBID , pUpdate - > cWorldSetID , nRet ) ;
m_pConnection - > QueryResultError ( pUpdate - > nAccountDBID , nRet , nMainCmd , nSubCmd ) ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
}
}
else {
g_Log . Log ( LogType : : _ERROR , pUpdate - > cWorldSetID , 0 , pUpdate - > biCharacterDBID , 0 , L " [CDBID:%lld] [QUERY_ADDAPPELLATION:%d] pWorldDB not found \r \n " , pUpdate - > biCharacterDBID , pUpdate - > cWorldSetID ) ;
}
}
break ;
case QUERY_SELECTAPPELLATION :
{
TQSelectAppellation * pUpdate = ( TQSelectAppellation * ) pData ;
pWorldDB = g_SQLConnectionManager . FindWorldDB ( nThreadID , pUpdate - > cWorldSetID ) ;
if ( pWorldDB ) {
nRet = pWorldDB - > QueryChoiceAppellation ( pUpdate - > biCharacterDBID , pUpdate - > nSelectAppellation , pUpdate - > cAppellationKind ) ;
if ( nRet ! = ERROR_NONE ) {
g_Log . Log ( LogType : : _ERROR , pUpdate - > cWorldSetID , 0 , pUpdate - > biCharacterDBID , 0 , L " [CDBID:%lld] [QUERY_SELECTAPPELLATION:%d] Query Error Ret:%d \r \n " , pUpdate - > biCharacterDBID , pUpdate - > cWorldSetID , nRet ) ;
m_pConnection - > QueryResultError ( pUpdate - > nAccountDBID , nRet , nMainCmd , nSubCmd ) ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
}
}
else {
g_Log . Log ( LogType : : _ERROR , pUpdate - > cWorldSetID , 0 , pUpdate - > biCharacterDBID , 0 , L " [CDBID:%lld] [QUERY_SELECTAPPELLATION:%d] pWorldDB not found \r \n " , pUpdate - > biCharacterDBID , pUpdate - > cWorldSetID ) ;
}
}
break ;
case QUERY_DELETEAPPELLATION :
{
TQDelAppellation * pDelete = ( TQDelAppellation * ) pData ;
pWorldDB = g_SQLConnectionManager . FindWorldDB ( nThreadID , pDelete - > cWorldSetID ) ;
if ( pWorldDB ) {
nRet = pWorldDB - > QueryDeleteAppellation ( pDelete - > biCharacterDBID , pDelete - > nDelAppellation ) ;
if ( nRet ! = ERROR_NONE ) {
g_Log . Log ( LogType : : _ERROR , pDelete - > cWorldSetID , 0 , pDelete - > biCharacterDBID , 0 , L " [CDBID:%lld] [QUERY_DELETEAPPELLATION:%d] Query Error Ret:%d \r \n " , pDelete - > biCharacterDBID , pDelete - > cWorldSetID , nRet ) ;
m_pConnection - > QueryResultError ( pDelete - > nAccountDBID , nRet , nMainCmd , nSubCmd ) ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
}
}
else {
g_Log . Log ( LogType : : _ERROR , pDelete - > cWorldSetID , 0 , pDelete - > biCharacterDBID , 0 , L " [CDBID:%lld] [QUERY_DELETEAPPELLATION:%d] pWorldDB not found \r \n " , pDelete - > biCharacterDBID , pDelete - > cWorldSetID ) ;
}
}
break ;
}
}