Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
522
Server/AdminTool/AdminToolLibrary/dbcomponent/Ryl_AdminMgrDB.cpp
Normal file
522
Server/AdminTool/AdminToolLibrary/dbcomponent/Ryl_AdminMgrDB.cpp
Normal file
@@ -0,0 +1,522 @@
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
#include <Log/ServerLog.h>
|
||||
#include <Parser/ServerInfo.h>
|
||||
#include <DBComponent/Ryl_AdminMgrDB.h>
|
||||
#include <Network/Protocol/Ryl_AdminMgrProtocol.h>
|
||||
|
||||
|
||||
CDBAdminTool& CDBAdminTool::GetInstance()
|
||||
{
|
||||
static CDBAdminTool dbAdminTool;
|
||||
return dbAdminTool;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::ConnectAdminToolDB()
|
||||
{
|
||||
const int MAX_BUFFER = 255;
|
||||
|
||||
CServerInfo& ServerInfoTXT = CServerInfo::GetInstance();
|
||||
|
||||
if(!ServerInfoTXT.Reload())
|
||||
{
|
||||
ERRLOG0(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>¾<EFBFBD> <20><><EFBFBD><EFBFBD> <20>ε<EFBFBD> <20><><EFBFBD><EFBFBD>");
|
||||
return false;
|
||||
}
|
||||
|
||||
const char* DBAddress = ServerInfoTXT.GetValue("ADMINTOOL_DB_IP");
|
||||
const char* DBName = ServerInfoTXT.GetValue("ADMINTOOL_DB_NAME");
|
||||
const char* DBAccount = ServerInfoTXT.GetValue("ADMINTOOL_DB_ACCOUNT");
|
||||
const char* DBPass = ServerInfoTXT.GetValue("ADMINTOOL_DB_PASS");
|
||||
|
||||
char szDBAddress[MAX_BUFFER];
|
||||
char szDBName[MAX_BUFFER];
|
||||
char szDBAccount[MAX_BUFFER];
|
||||
char szDBPass[MAX_BUFFER];
|
||||
|
||||
strncpy(szDBAddress, DBAddress, MAX_BUFFER); szDBAddress[MAX_BUFFER - 1] = 0;
|
||||
strncpy(szDBName, DBName, MAX_BUFFER); szDBName[MAX_BUFFER - 1] = 0;
|
||||
strncpy(szDBAccount, DBAccount, MAX_BUFFER); szDBAccount[MAX_BUFFER - 1] = 0;
|
||||
strncpy(szDBPass, DBPass, MAX_BUFFER); szDBPass[MAX_BUFFER - 1] = 0;
|
||||
|
||||
if(!ConnectSQLServer(szDBAddress, szDBName, szDBAccount, szDBPass, OleDB::ConnType_MSSQL))
|
||||
{
|
||||
ERRLOG4(g_Log, "<EFBFBD>DB <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. %s/%s/%s/%s",
|
||||
szDBAddress, szDBName, szDBAccount, szDBPass);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::UpdateZoneList(unsigned int UID, char* In_Data)
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH, "SELECT binZone FROM TblToolAdmin WHERE uid=%d", UID);
|
||||
|
||||
if(ExecuteQuery(m_szQry, OleDB::Rowset_Update))
|
||||
{
|
||||
if(!SetBinaryData(1, (OleDB::LPSET_BINARY)In_Data))
|
||||
{
|
||||
ERRLOG0(g_Log, "<EFBFBD><EFBFBD><EFBFBD>̳ʸ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::GetZoneList(unsigned int UID, char* Out_Data)
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH, "SELECT binZone FROM TblToolAdmin WHERE uid=%d", UID);
|
||||
|
||||
if(!ExecuteQueryGetData(m_szQry, Out_Data))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>-%s, <20><><EFBFBD><EFBFBD>-%s", m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD>
|
||||
BYTE CDBAdminTool::Login(char* szAccount, char* szPassword)
|
||||
{
|
||||
char szGetedPassword[PktAdminMgr::MAX_PASSWORD];
|
||||
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"SELECT strPasswd FROM TblToolAdmin WHERE strAdminID='%s'", szAccount);
|
||||
|
||||
ZeroMemory(szGetedPassword, PktAdminMgr::MAX_PASSWORD);
|
||||
|
||||
if(!ExecuteQueryGetData(m_szQry, (void*)szGetedPassword))
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
return PktAdminMgr::PktResult::Err_Account;
|
||||
}
|
||||
|
||||
if(NULL != szGetedPassword)
|
||||
{
|
||||
if(!stricmp(szGetedPassword, szPassword))
|
||||
{
|
||||
// <20>α<EFBFBD><CEB1><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
return PktAdminMgr::PktResult::Success_Login;
|
||||
}
|
||||
else
|
||||
{
|
||||
// <20>н<EFBFBD><D0BD><EFBFBD><EFBFBD><EFBFBD> <20>ٸ<EFBFBD>
|
||||
return PktAdminMgr::PktResult::Err_Passwd;
|
||||
}
|
||||
}
|
||||
|
||||
return PktAdminMgr::PktResult::Err_Unknown;
|
||||
}
|
||||
|
||||
// <20>ش<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ
|
||||
BYTE CDBAdminTool::CheckIP(char* AdminID, char* szIP)
|
||||
{
|
||||
char strIP[16];
|
||||
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"SELECT strIP FROM TblToolAdmin WHERE strAdminID='%s'", AdminID);
|
||||
|
||||
ZeroMemory(strIP, sizeof(strIP));
|
||||
|
||||
if(!ExecuteQueryGetData(m_szQry, (void*)strIP))
|
||||
{
|
||||
// <20>ش<EFBFBD> ID <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ã<><C3A3><EFBFBD><EFBFBD> <20><><EFBFBD>ų<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>̽<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
return PktAdminMgr::PktResult::Err_Database;
|
||||
}
|
||||
|
||||
if(NULL != strIP)
|
||||
{
|
||||
if(!stricmp(szIP, strIP))
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD>
|
||||
return PktAdminMgr::PktResult::Success_ConnectIP;
|
||||
}
|
||||
else
|
||||
{
|
||||
// <20><><EFBFBD>ϵǾ<CFB5> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD> <20>ƴ<EFBFBD>
|
||||
return PktAdminMgr::PktResult::Err_ConnectIP;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return PktAdminMgr::PktResult::Err_Database;
|
||||
}
|
||||
|
||||
return PktAdminMgr::PktResult::Err_Unknown;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD>þ<EFBFBD><C3BE>̵<EFBFBD><CCB5><EFBFBD> <20>ֳ<EFBFBD>? <20><><EFBFBD><EFBFBD>?
|
||||
bool CDBAdminTool::AccountCheck(char* AdminID)
|
||||
{
|
||||
char strAdminID[20];
|
||||
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"SELECT strAdminID FROM TblToolAdmin WHERE strAdminID='%s'", AdminID);
|
||||
|
||||
ZeroMemory(strAdminID, sizeof(strAdminID));
|
||||
|
||||
if(!ExecuteQueryGetData(m_szQry, (void*)strAdminID))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// <20>α<CEB1> <20><><EFBFBD><EFBFBD>..
|
||||
bool CDBAdminTool::StartupLog(unsigned int UID, char* UseIP)
|
||||
{
|
||||
char szDate[30];
|
||||
if(!UID) return false;
|
||||
|
||||
if(GetDate(szDate))
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"INSERT INTO TblLog(UID, Login, UseIP) VALUES(%d, '%s', '%s')", UID, szDate, UseIP);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20>α<CEB1> <20><>ģ<EFBFBD><C4A3>
|
||||
bool CDBAdminTool::EndLog(unsigned int UID)
|
||||
{
|
||||
char szDate[30];
|
||||
int LogID;
|
||||
|
||||
if(!UID) return false;
|
||||
|
||||
if(GetDate(szDate))
|
||||
{
|
||||
if((LogID = GetNowLogID(UID)) > 0)
|
||||
{
|
||||
return UpdateLogoutDate(LogID, szDate);
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> UID<49><44> <20><><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD>.
|
||||
int CDBAdminTool::GetMyUID(char* szAccount)
|
||||
{
|
||||
int UID;
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"SELECT UID FROM TblToolAdmin WHERE strAdminID='%s'", szAccount);
|
||||
|
||||
if(ExecuteQuery(m_szQry))
|
||||
{
|
||||
if(GetData(&UID))
|
||||
{
|
||||
return UID;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
bool CDBAdminTool::DelAdmin( char* AdminID )
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH, "DELETE TblToolAdmin WHERE strAdminID='%s'", AdminID);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20>α<CEB1> <20><>ģ<EFBFBD><C4A3>.
|
||||
bool CDBAdminTool::UpdateExitLog( unsigned int LogID, char* szExitLog )
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"UPDATE TblLog SET UseMsg='%s' WHERE LogID=%d", szExitLog, LogID);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
bool CDBAdminTool::UpdateLevel(PktAdminMgr::PktUpdateLevel* UpdateLev)
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"UPDATE TblToolAdmin SET strLevel='%c' WHERE strAdminID='%s'",
|
||||
UpdateLev->m_szLevel, UpdateLev->m_szAccount);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
bool CDBAdminTool::UpdateIP(PktAdminMgr::PktUpdateIP* UpdateIP)
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"UPDATE TblToolAdmin SET strIP = '%s' WHERE strAdminID = '%s'",
|
||||
UpdateIP->m_szIP, UpdateIP->m_szAccount);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>αƿ<D7BE><C6BF><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
bool CDBAdminTool::UpdateLogoutDate(int LogID, char* szDate)
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"UPDATE TblLog SET Logout='%s' WHERE LogID=%d", szDate, LogID);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ڸ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD>
|
||||
bool CDBAdminTool::GetDate(char* DateTime)
|
||||
{
|
||||
if(ExecuteQuery("SELECT CONVERT(varchar(30), getdate(), 120)"))
|
||||
{
|
||||
if(GetData(DateTime))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD> <20>Ҷ<EFBFBD> <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD> <20>α<EFBFBD> ID <20><><EFBFBD><EFBFBD>
|
||||
int CDBAdminTool::GetNowLogID(unsigned int UID)
|
||||
{
|
||||
int GetLogID = 0;
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"SELECT LogID FROM TblLog WHERE UID = %d ORDER BY LogID DESC", UID);
|
||||
|
||||
if(ExecuteQuery(m_szQry))
|
||||
{
|
||||
if(GetData(&GetLogID))
|
||||
{
|
||||
return GetLogID;
|
||||
}
|
||||
}
|
||||
|
||||
ERRLOG1(g_Log, "<EFBFBD>α<EFBFBD> ID<49><44> <20><><EFBFBD>µ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD><DFBD>ϴ<EFBFBD>. Err- %s", GetErrorString());
|
||||
return -1;
|
||||
}
|
||||
|
||||
// <20>н<EFBFBD><D0BD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
bool CDBAdminTool::UpdatePasswd( PktAdminMgr::PktUpdatePasswd* UpdatePwd )
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"UPDATE TblToolAdmin SET strPasswd = '%s' WHERE strAdminID = '%s'",
|
||||
UpdatePwd->m_szPasswd, UpdatePwd->m_szAccount);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD>ο<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
BYTE CDBAdminTool::NewAdmin(PktAdminMgr::PktNewAdmin* NewAdmin)
|
||||
{
|
||||
if(AccountCheck(NewAdmin->m_szAccount)) // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> üũ
|
||||
{
|
||||
_snprintf(m_szQry, MAX_QUERY_LENGTH,
|
||||
"INSERT INTO TblToolAdmin(strAdminID, strPasswd, strLevel, strName, strIP) VALUES('%s', '%s', '%c', '%s', '%s')",
|
||||
NewAdmin->m_szAccount, NewAdmin->m_szPasswd, NewAdmin->m_szLev, NewAdmin->m_szName, NewAdmin->m_szIP);
|
||||
|
||||
if(!ExecuteQuery(m_szQry))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s",
|
||||
m_szQry, GetErrorString());
|
||||
|
||||
return PktAdminMgr::PktResult::Err_Database; // <20><>~
|
||||
}
|
||||
return PktAdminMgr::PktResult::Success_NewAdmin; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>~
|
||||
}
|
||||
else
|
||||
{
|
||||
return PktAdminMgr::PktResult::Err_OverlapID; // <20><><EFBFBD><EFBFBD> <20>ߺ<EFBFBD><DFBA><EFBFBD><EFBFBD>̵<EFBFBD><CCB5><EFBFBD>.
|
||||
}
|
||||
|
||||
return PktAdminMgr::PktResult::Err_Unknown; // <20><>.<2E><>;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::AddBlockUser(PktAdminMgr::PktAddBlockUser* lpBlock, char* lpAdminName, char* szClientID)
|
||||
{
|
||||
char szQuery[MAX_QUERY_LENGTH];
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH,
|
||||
"dbo.CMS_DoingRestraintChar '%d', '%d', '%s', '%s', '%d', '%d', '%s', '%s', '%s'",
|
||||
lpBlock->m_cServerGroup, lpBlock->m_dwUID, szClientID, lpBlock->m_szCharacterName,
|
||||
lpBlock->m_cBlockTarget, lpBlock->m_cBlockTerm, lpBlock->m_szBlockFinishDateTime,
|
||||
lpAdminName, lpBlock->m_szDescription);
|
||||
|
||||
unsigned long dwResult = 0;
|
||||
|
||||
if (false == ExecuteQueryGetData(szQuery, &dwResult))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. query- %s, Err- %s", szQuery, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
if(0 < dwResult)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::DelBlockUser(PktAdminMgr::PktDelBlockUser* lpDelBlock)
|
||||
{
|
||||
char szQuery[MAX_QUERY_LENGTH];
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH, "dbo.USPDeleteRestraintChar '%d', '%d'",
|
||||
lpDelBlock->m_cServerGroup, lpDelBlock->m_nidx);
|
||||
|
||||
unsigned long dwResult = 0;
|
||||
|
||||
if (false == ExecuteQueryGetData(szQuery, &dwResult))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. query- %s, Err- %s", szQuery, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
if(0 < dwResult)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::InsertGMLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg, char* szAdminID)
|
||||
{
|
||||
char szQuery[MAX_QUERY_LENGTH];
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH,
|
||||
"INSERT INTO TblGMLogMsg(UID, CID, ServerGroupID, LogMsg, AdminID) VALUES(%u, %u, %u, '%s', '%s')",
|
||||
lpPktGMLogMsg->m_dwUID, lpPktGMLogMsg->m_dwCID, lpPktGMLogMsg->m_dwServerGroup,
|
||||
lpPktGMLogMsg->m_szLogMsg, szAdminID);
|
||||
|
||||
if (false == ExecuteQuery(szQuery))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD> <20>α<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s", szQuery, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::UpdateGMLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg, char* szAdminID)
|
||||
{
|
||||
char szQuery[MAX_QUERY_LENGTH];
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH,
|
||||
"UPDATE TblGMLogMsg SET LogMsg = '%s', AdminID = '%s'"
|
||||
" WHERE LogID = %u AND UID = %u AND CID = %u AND ServerGroupID = %u",
|
||||
lpPktGMLogMsg->m_szLogMsg, szAdminID, lpPktGMLogMsg->m_dwLogID, lpPktGMLogMsg->m_dwUID,
|
||||
lpPktGMLogMsg->m_dwCID, lpPktGMLogMsg->m_dwServerGroup);
|
||||
|
||||
if (false == ExecuteQuery(szQuery))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD> <20>α<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>- %s, Err- %s", szQuery, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::DeleteGMLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg)
|
||||
{
|
||||
char szQuery[MAX_QUERY_LENGTH];
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH,
|
||||
"INSERT INTO TblGMLogMsg_Log(LogID, UID, CID, ServerGroupID, EditDate, LogMsg, AdminID) "
|
||||
"SELECT LogID, UID, CID, ServerGroupID, EditDate, LogMsg, AdminID FROM TblGMLogMsg WHERE LogID = %u",
|
||||
lpPktGMLogMsg->m_dwLogID);
|
||||
|
||||
if (false == ExecuteQuery(szQuery))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD> <20>α<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>(<28>α<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>). <20><><EFBFBD><EFBFBD>- %s, Err- %s", szQuery, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH,
|
||||
"DELETE FROM TblGMLogMsg WHERE LogID = %u", lpPktGMLogMsg->m_dwLogID);
|
||||
|
||||
if (false == ExecuteQuery(szQuery))
|
||||
{
|
||||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD> <20>α<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>(<28>α<EFBFBD> <20><><EFBFBD><EFBFBD>). <20><><EFBFBD><EFBFBD>- %s, Err- %s", szQuery, GetErrorString());
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CDBAdminTool::IsExistLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg)
|
||||
{
|
||||
char szQuery[MAX_QUERY_LENGTH];
|
||||
if (0 == lpPktGMLogMsg->m_dwCID)
|
||||
{
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH,
|
||||
"SELECT TOP 1 LogID FROM TblGMLogMsg WHERE UID = %u AND CID = 0 AND ServerGroupID = %u",
|
||||
lpPktGMLogMsg->m_dwUID, lpPktGMLogMsg->m_dwServerGroup);
|
||||
}
|
||||
else
|
||||
{
|
||||
_snprintf(szQuery, MAX_QUERY_LENGTH,
|
||||
"SELECT TOP 1 LogID FROM TblGMLogMsg WHERE CID = %u AND ServerGroupID = %u",
|
||||
lpPktGMLogMsg->m_dwCID, lpPktGMLogMsg->m_dwServerGroup);
|
||||
}
|
||||
|
||||
unsigned long dwLogID = 0;
|
||||
if (false == ExecuteQueryGetData(szQuery, &dwLogID))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (0 == dwLogID)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
Reference in New Issue
Block a user