using System; using System.Collections.Generic; using Sog; using ProtoCSStruct; namespace DB { public abstract class DBOperator { public abstract long GenNewGameID(int accountTableIndex); public abstract void Dispose(); public abstract void KeepAlive(); // pay public abstract bool InsertPayReq(ref SSPayGoogleReq payReq); public abstract tbpay SelectPayRecord(long uid, string orderId); public abstract List SelectPaySuccRecord(long uid); public abstract tbpay SelectPayRecordByOrderId3rd(long uid, string orderId3rd); public abstract bool UpdatePayProductId(long uid, string orderId, int productId); // SSPayGoogleSuccReq时调用 public abstract bool UpdatePayStatus(long uid, string orderId, int newStatus, string orderId3rd, long lTime, uint amount, bool isTestPay, string currency, int subPayType); // SSPayDBAddDiamondStatusReq时调用 public abstract bool UpdatePayStatus(long uid, string orderId, int newStatus, uint amountExchange, uint diamondExchange, int newItemId, uint money); public abstract bool SetRefundTime(long uid, string orderId, string orderId3rd, long refundTime); public abstract Tuple> SelectAllPayRecords(SSGmQueryUserPayRecordReq req); public abstract bool ReplacePayHttpContent(ref SSPayHeroSaveHttpContentReq req); public abstract void SelectPayHttpContent(ref SSPayHeroSelectHttpContentRes res); public abstract void DeletePayHttpContent(ref SSPayHeroDeleteHttpContentNotify notify); // account public abstract tbAccount QueryAccount(int accountType, string accountID); //public abstract bool UpdateAccountGameId(int accountType, string accountID, long gameId); public abstract bool UpdateAccountLastLoginRealm(int accountType, string accountID, tbAccount accountRecord, int lastLoginRealm); public abstract bool UpdateAccountGrade(int accountType, string accountID, tbAccount accountRecord, int Grade); public abstract bool UpdateAccountExData(int accountType, string accountID, tbAccount accountRecord, ref DBAccountExData exdata); public abstract bool InsertAccount(int accountType, string accountID, string accountToken, long createTime, string deviceId, uint ipAddr, string nick, int gender, string icon, int grade, ref DBAccountExData exdata); public abstract List QueryAccountUid(int accountType, string accountID, int realmId); public abstract tbacc_realmuid_link QueryAccountUidbyUid(int uid, int realmId); public abstract bool InsertAccRealmUidLink(int accountType, string accountID, int realmId, long uid); public abstract bool UpdateAccRealmUidLink(int accountType, string accountID, ref CSRoleBrief roleBrief); public abstract bool UpdateAccRealmLinkUid(int accountType, string accountID, int realmId, long newUid); //public abstract bool UpdateAccRealmUidLinkLogoutTime(int accountType, string accountID, // int realmId, long uid, int lastLogoutTime); public abstract void QueryRealmUidData(int realmId, ref SSQueryRealmUidDataRes res); public abstract int SaveRealmUidData(ref SSSaveRealmUidDataReq req); //realmId public abstract void QueryRealmDBData(ref SSRealmDBQueryRes res); public abstract int UpdateRealmDBData(ref SSRealmDBSaveReq req, ref SSRealmDBSaveRes res); public abstract int UpdateRealmPlayerNum(int realmId, int regNum); } }