Files
Client/Server/AdminTool/AdminToolLibrary/dbcomponent/Ryl_AdminMgrDB.h
LGram16 dd97ddec92 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>
2025-11-29 20:17:20 +09:00

129 lines
6.9 KiB
C++
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#ifndef _RYL_ADMIN_MGR_DB_H_
#define _RYL_ADMIN_MGR_DB_H_
#include <RylServerLibrary/DB/DBComponent.h>
// Äõ¸® ¸ðÀ½
namespace QUERYZ
{
const char LoginInfo[] = "SELECT uid, strAdminID, strPasswd, strLevel, strName, strIP, CONVERT(varchar(11),dateRegit,102) FROM TblToolAdmin WHERE strAdminID = '%s'";
const char NewAdminAck[] = "SELECT strAdminID, strName, strIP, convert(varchar(11),dateRegit,102), strLevel FROM TblToolAdmin WHERE strAdminID='%s'";
const char LoginList[] = "SELECT LogID, CONVERT( varchar(20), Login, 120 ), CONVERT(varchar(20), Logout, 120 ), UseIP FROM TblLog WHERE UID=%d" ;
const char DetailLog[] = "SELECT DetailLogID, CONVERT(varchar(20), UpdateDate, 120), UpdateType FROM TblDetailLog WHERE LogID=%d" ;
const char ExitLog[] = "SELECT UseMsg FROM TblLog WHERE LogID = %d";
const char AdminList[] = "SELECT strAdminID, strName, strIP, CONVERT(varchar(11),dateRegit,102), strLevel FROM TblToolAdmin" ;
const char InsertDetailLog[] = "INSERT INTO TblDetailLog(LogID, UpdateType, Before, After) VALUES(%d, %d, '%s', '%s')";
const char BeforeAfter[] = "SELECT Before, After FROM TblDetailLog WHERE DetailLogID=%d" ;
const char GetLevel[] = "SELECT strLevel FROM TblToolAdmin WHERE strAdminID='%s'" ;
const char GetIP[] = "SELECT strIP FROM TblToolAdmin WHERE strAdminID='%s'" ;
const char GetPassword[] = "SELECT strPasswd FROM TblToolAdmin WHERE strAdminID='%s'" ;
const char GetDelHistory[] = "SELECT intCID, intUID, NewServerGroupID, OldServerGroupID, CONVERT(varchar(20), dateInsertTime, 120), CONVERT(varchar(20), dateDeleteTime, 120), Name, CAST(Level as INT), Gold FROM TblCharDelHistory JOIN CharInfo ON TblCharDelHistory.intCID = CharInfo.CID WHERE %s=%d AND NewServerGroupID = %u";
const char GetGuildInfo[] = "SELECT A.nGuildID, CAST(OldServerGroupID AS INT), strGuildName, CAST(tnGuildLevel AS INT), nGuildFame, nGuildGold, CAST(tnNationType as INT) FROM TblGuildInfo A JOIN TblGuildMember B ON A.nGuildID =B.nGuildID %s GROUP BY A.nGuildID, CAST(OldServerGroupID AS INT), strGuildName, CAST(tnGuildLevel as INT), nGuildFame, nGuildGold, CAST(tnNationType as INT)";
const char GetFortInfo[] = "SELECT A.nCampID, A.nGuildID, B.strGuildName, A.nHP, A.tnZone, A.tnChannel, A.snObjectType, A.tnState, A.tnSubState, A.tnUpgradeStep,"
"CONVERT(varchar(20), RemainTime, 120), CONVERT(varchar(20), LastUseTime, 120), A.fPosX, A.fPosY, A.fPosZ, A.tnMaterial, A.tnSiegeCount, A.bRight "
"FROM TblCampInfo A INNER JOIN TblGuildInfo B ON A.nGuildID = B.nGuildID %s"
"GROUP BY A.nCampID, A.nGuildID, B.strGuildName, A.nHP, A.tnZone, A.tnChannel, A.snObjectType,A.tnState, A.tnSubState, A.tnUpgradeStep,"
"CONVERT(varchar(20), RemainTime, 120), CONVERT(varchar(20), LastUseTime, 120), A.bRight, A.fPosX, A.fPosY, A.fPosZ, A.tnMaterial, A.tnSiegeCount";
const char GetMiningCamp[] = "SELECT * FROM TblCampMineralInfo %s";
const char GetShopCamp[] = "SELECT * FROM TblCampShopInfo %s";
const char GetCastleInfo[] = "SELECT * FROM TblCastleInfo %s";
const char GetCastleCreatureInfo[] = "SELECT nCreatureID, nCastleID, nOwnerID, nHP, snObjectType, fDirection, tnState, tnSubState, tnUpgradeStep, tnUpgradeType, "
"CONVERT(varchar(20), RemainTime, 120), CONVERT(varchar(20), LastUseTime, 120), fPosX, fPosY, fPosZ FROM TblCastleCreatureInfo %s";
const char GetGuildMemberList[] = "SELECT nGuildID, nCID, nPosition, nPositionInGuild, CONVERT(varchar(20), tLeaveGuildTime, 120), Name, CAST(Level as INT), Fame, Class, Gold FROM TblGuildMember JOIN CharInfo ON TblGuildMember.nCID = CharInfo.CID WHERE nGuildID = %s";
const char GetGuildRestoreData[] = "SELECT nGuildID, strGuildName, nGuildGold, CONVERT(varchar(20), tDeleteTime, 120) FROM TblGuildRestoreData";
// edith 2009.08.14 °ü½ÉÀ¯Àú ¹ö±×¼öÁ¤ (ROW_Activity DB»ç¿ë)
const char GetUserBillingLog[] = "SELECT strClientid, UID, CAST(tinyServerID AS INT), CONVERT(VARCHAR(20), FirstLoginTime, 120), CONVERT(VARCHAR(20), LogoutTime, 120), CAST(strIP AS VARCHAR(16)) FROM TblCurrentUser WHERE %s ORDER BY FirstLoginTime";
// const char GetUserBillingLog[] = "SELECT strClientid, UID, CAST(tinyServerID AS INT), CONVERT(VARCHAR(20), FirstLoginTime, 120), CONVERT(VARCHAR(20), LogoutTime, 120), CAST(strIP AS VARCHAR(16)) FROM TblCurrentUser_Log WHERE %s ORDER BY FirstLoginTime";
};
// ´Ü¼ø ÂüÁ¶¿ë
namespace PktAdminMgr
{
struct PktNewAdmin;
struct PktUpdateLevel;
struct PktUpdateIP;
struct PktUpdatePasswd;
struct PktAddBlockUser;
struct PktDelBlockUser;
struct PktInterestedUser;
struct PktGMLogMsg;
};
/*!
\class CDBAdminTool
¿î¿µÅø µ¥ÀÌÅÍ º£À̽º
*/
class CDBAdminTool : public CDBComponent
{
public:
#pragma pack(1)
// °ü¸®ÀÚ ¾ÆÀÌÅÛ Ã¢°íÁ¤º¸
struct StoreInfo
{
enum TYPE
{
MAX_OWNER = 20,
MAX_ITEM_NAME = 32
};
unsigned char cServer;
unsigned char szOwner[MAX_OWNER];
unsigned char szItemName[MAX_ITEM_NAME];
};
// °ü¸®ÀÚ ¾ÆÀÌÅÛ Ã¢°íÁ¤º¸
struct ItemInfo
{
enum TYPE
{
MAX_ITEM_ATTRIB = 90,
};
unsigned long dwLength;
char ItemAttrib[MAX_ITEM_ATTRIB];
};
#pragma pack()
public:
static CDBAdminTool& GetInstance();
bool ConnectAdminToolDB(); // SQL¼­¹ö Á¢¼Ó
BYTE Login(char* szAccount, char* szPassword); // ·Î±×ÀÎ
BYTE CheckIP(char* AdminID, char* szIP); // ¾ÆÀÌÇÇ Ã¼Å©
bool AccountCheck(char* AdminID); // Áߺ¹¿©ºÎ °Ë»ç
BYTE NewAdmin(PktAdminMgr::PktNewAdmin* NewAdmin); // »õ·Î¿î °èÁ¤ »ý¼º
bool DelAdmin(char* AdminID); // °èÁ¤ »èÁ¦
bool UpdateLevel(PktAdminMgr::PktUpdateLevel* UpdateLev); // °èÁ¤ µî±Þ º¯°æ
bool UpdateIP(PktAdminMgr::PktUpdateIP* UpdateIP); // °èÁ¤ Á¢¼Ó IPº¯°æ
bool UpdatePasswd(PktAdminMgr::PktUpdatePasswd* UpdatePwd); // °èÁ¤ ÆÐ½º¿öµå º¯°æ
bool GetDate(char* DateTime); // ½Ã°£À» °¡Á®¿Â´Ù
bool StartupLog(unsigned int UID, char* UseIP); // ·Î±×ÀÎÇÔ°ú µ¿½Ã¿¡ È£Ãâ. ±âº» ¼ÂÆÃ
bool EndLog(unsigned int UID); // ·Î±×¾Æ¿ô Á¤º¸ ±â·Ï
int GetMyUID(char* szAccount); // ÇØ´ç°èÁ¤ÀÇ UID¸¦ °¡Á®¿Â´Ù
int GetNowLogID(unsigned int UID); // ÇöÀç »ç¿ëÁßÀÎ TblLogÀÇ LogID¸¦ °¡Á®¿Â´Ù
bool UpdateLogoutDate(int LogID, char* szDate); // ·Î±×¾Æ¿ôÇÑ ³¯Â¥¿Í ½Ã°£
bool UpdateExitLog(unsigned int LogID, char* szExitLog); // »ç¿ë»çÀ¯ ¾÷µ¥ÀÌÆ®
bool UpdateZoneList(unsigned int UID, char* In_Data); // Á¸ Á¤º¸ ÀúÀå
bool GetZoneList(unsigned int UID, char* Out_Data); // Á¸ Á¤º¸ °¡Á®¿À±â
// ºí·°
bool AddBlockUser(PktAdminMgr::PktAddBlockUser* lpBlock, char* lpAdminName, char* szClientID); // ºí·°
bool DelBlockUser(PktAdminMgr::PktDelBlockUser* lpDelBlock); // ºí·° ÇØÁ¦
// GM ·Î±× ¸Þ¼¼Áö ³²±â±â
bool IsExistLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg);
bool InsertGMLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg, char* szAdminID);
bool UpdateGMLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg, char* szAdminID);
bool DeleteGMLogMsg(PktAdminMgr::PktGMLogMsg* lpPktGMLogMsg);
private:
CDBAdminTool() { ;}
virtual ~CDBAdminTool() { ;}
char m_szQry[MAX_QUERY_LENGTH];
};
#endif