public MessageCode SaveInvitePrize(NbManagerEntity manager, FriendinvitePrizerecordEntity record, ItemPackageFrame package, DbTransaction trans, int coin, string account) { if (manager != null) { if (!ManagerUtil.SaveManagerData(manager, null, trans)) { return(MessageCode.NbUpdateFailPackage); } } if (coin > 0) { var mess = ManagerCore.Instance.AddCoin(manager, coin, EnumCoinChargeSourceType.FriendInvite, Guid.NewGuid().ToString(), trans); if (mess != MessageCode.Success) { return(mess); } } if (!FriendinvitePrizerecordMgr.Insert(record, trans)) { return(MessageCode.NbUpdateFailPackage); } if (!package.Save(trans)) { return(MessageCode.NbUpdateFailPackage); } package.Shadow.Save(); return(MessageCode.Success); }
private MessageCode SaveRankPrize(NbManagerEntity manager, LeagueRecordEntity leagueRecord, LeagueManagerrecordEntity mLeagueRecord, LaegueManagerinfoEntity leagueManagerinfo, ItemPackageFrame package, int point, DbTransaction trans) { if (!ManagerUtil.SaveManagerData(manager, null, trans)) { return(MessageCode.NbUpdateFail); } if (!LeagueRecordMgr.Update(leagueRecord, trans)) { return(MessageCode.NbUpdateFail); } if (!LeagueManagerrecordMgr.Update(mLeagueRecord, trans)) { return(MessageCode.NbUpdateFail); } if (!LaegueManagerinfoMgr.Update(leagueManagerinfo, trans)) { return(MessageCode.NbUpdateFail); } if (package != null) { if (!package.Save(trans)) { return(MessageCode.NbUpdateFail); } package.Shadow.Save(); } if (point > 0) { var code = PayCore.Instance.AddBonus(manager.Idx, point, EnumChargeSourceType.LeaguePrize, ShareUtil.GenerateComb().ToString(), trans); return(code); } return(MessageCode.Success); }
/// <summary> /// a8用户数据采集 /// </summary> /// <param name="dataType"></param> /// <param name="openId"></param> public static void UserAction(string dataType, string openId = "", string session = "", string server = "", NbManagerEntity managerEntity = null) { //"{dataType,sessionId,gameNum,channelAlias,channelId,deviceId,model,release,uid,uname,serverId,serverName,roleId,roleName,roleLevel,ext,sdkVersion}"; NbManagerEntity manager = null; if (managerEntity == null) { var list = NbManagerMgr.GetByAccount(openId, ShareUtil.ZoneName); if (list != null && list.Count > 0) { manager = list[0]; } } else { manager = managerEntity; } var postDataStr = ""; if (manager == null) { postDataStr = "dataType=" + dataType; } else { var ip = ""; try { ip = UAHelper.GetRealIP(); } catch (Exception) { } var ext = ""; var channelAlias = ""; var sessionId1 = ""; var entity = WebServerHandler.GetStartgameEntity(openId, ShareUtil.PlatformCode, ShareUtil.PlatformZoneName); if (entity != null) { var serverId = entity.ServerId; ext = entity.State; channelAlias = entity.Pf; sessionId1 = entity.SessionId; //release=1 暂留,没有实际意义 postDataStr = "dataType=" + dataType + "&sessionId=" + sessionId1 + "&gameNum=" + (int)A8csdkEnum.csdkId + "&channelAlias=" + channelAlias + "&channelId=" + entity.JsNeed + "&deviceId=" + ip + "&model=" + "&release=1" + "&channelAlias=" + channelAlias + "&subChannel=" + "&serverId=" + serverId + "&uid=" + openId + "&uname=" + "&serverId=" + serverId + "&serverName=" + serverId + "&roleId=" + openId + "&roleName=" + manager.Name + "&roleLevel=" + manager.Level + "&ext=" + ext + "&sdkVersion="; } } var url = UAFactory.Instance.GetRedirectURL(ShareUtil.PlatformCode, "useraction"); var retString = UAHelper.HttpPost(url, postDataStr); }
static MessageCode InnerSaveMixNew(NbManagerEntity manager, Guid mid, SkillBagWrap bag, int coin, string setSkills = null) { int errorCode = (int)MessageCode.FailUpdate; using (var tranMgr = new TransactionManager(Dal.ConnectionFactory.Instance.GetDefault())) { tranMgr.BeginTransaction(); do { var mess = ManagerCore.Instance.CostCoin(manager, coin, EnumCoinConsumeSourceType.SkillUpgrade, ShareUtil.GenerateComb().ToString(), tranMgr.TransactionObject); if (mess != MessageCode.Success) { break; } NbManagerskillbagMgr.MixUpTran(false, mid, setSkills, bag.SetMap, "", bag.RawBag.RowVersion, ref errorCode); }while (false); if (errorCode == (int)MessageCode.Success) { tranMgr.Commit(); } else { tranMgr.Rollback(); } } return((MessageCode)errorCode); }
MessageCode Tran_SaveMatch(DbTransaction transaction, NbManagerEntity manager, NbManagerextraEntity managerex, BaseMatchData pkmatchData, Guid lotteryMatchId, int win, int lose, int draw, int prizeExp, int prizeCoin, int prizeItemCode, string prizeItemString , bool isrevenge, long revengeRecordId, ref long outRevengeRecordId, PlayerkillInfoEntity info, int prizeItemCount) { if (prizeCoin > 0 || prizeExp > 0) { if (!ManagerUtil.SaveManagerData(manager, managerex, transaction)) { return(MessageCode.NbUpdateFail); } else { ManagerUtil.SaveManagerAfter(manager, managerex, transaction); } if (!NbManagerextraMgr.Update(managerex, transaction)) { return(MessageCode.NbUpdateFail); } } PlayerkillInfoMgr.Update(info); PlayerkillInfoMgr.SaveFightResult(pkmatchData.Home.ManagerId, manager.Logo, pkmatchData.Away.ManagerId, lotteryMatchId, win, lose, draw, DateTime.Now, pkmatchData.MatchId, pkmatchData.Home.Name, pkmatchData.Away.Name, pkmatchData.Home.Score, pkmatchData.Away.Score, prizeExp, prizeCoin, prizeItemCode , prizeItemString, isrevenge, revengeRecordId, prizeItemCount, ref outRevengeRecordId, transaction); return(MessageCode.Success); }
public static List <PopMessageEntity> SaveManagerAfter(NbManagerEntity manager, NbManagerextraEntity extra, DbTransaction transaction) { if (manager == null) { return(null); } List <PopMessageEntity> popList = new List <PopMessageEntity>(); if (manager.AddCoin > 0 || manager.AddExp > 0) { //ShadowMgr.SaveCoinCharge(manager.Idx, manager.AddCoin, manager.AddExp, manager.IsLevelup, manager.Level, manager.CoinSourceType, manager.CoinOrderId); } if (manager.IsLevelup) { // ChatHelper.SendOpenLevelGiftPop(manager); if (extra == null) { extra = ManagerCore.Instance.GetManagerExtra(manager.Idx); } CalCurrentStamina(extra, manager.Level, manager.VipLevel); if (extra.Stamina < extra.StaminaMax) { extra.Stamina = extra.StaminaMax; // extra.Stamina += ManagerLevelupAddStamina; //if (extra.Stamina > extra.StaminaMax) // extra.Stamina = extra.StaminaMax; extra.ResumeStaminaTime = DateTime.Now; NbManagerextraMgr.Update(extra, transaction); } } DeleteOpenFunctionCache(manager.Idx); manager.IsLevelup = false; return(popList); }
MessageCode SaveMatch(NbManagerEntity manager, NbManagerextraEntity managerex, BaseMatchData pkmatchData, Guid lotteryMatchId, int win, int lose, int draw, int prizeExp, int prizeCoin, int prizeItemCode, string prizeItemString , bool isrevenge, long revengeRecordId, ref long outRevengeRecordId, PlayerkillInfoEntity info, int pointCount) { if (manager == null) { return(MessageCode.NbUpdateFail); } try { using (var transactionManager = new TransactionManager(Dal.ConnectionFactory.Instance.GetDefault())) { transactionManager.BeginTransaction(); var messageCode = Tran_SaveMatch(transactionManager.TransactionObject, manager, managerex, pkmatchData, lotteryMatchId, win, lose, draw, prizeExp, prizeCoin, prizeItemCode, prizeItemString , isrevenge, revengeRecordId, ref outRevengeRecordId, info, pointCount); if (messageCode == ShareUtil.SuccessCode) { transactionManager.Commit(); } else { transactionManager.Rollback(); } return(messageCode); } } catch (Exception ex) { SystemlogMgr.Error("SavePlayerKillMatch", ex); return(MessageCode.Exception); } }
void SetAccount(NbManagerEntity manager, string zoneId, bool oldOrNew) { if (manager == null) { ltlMessage.Text = "找不到经理信息"; return; } if (oldOrNew) { if (_accountDataOld == null) { _accountDataOld = new AccountData(); } _accountDataOld.ZoneId = zoneId; _accountDataOld.ManagerId = manager.Idx; _accountDataOld.Name = manager.Name; _accountDataOld.Account = manager.Account; _accountDataOld.Mod = manager.Mod; //BindData(); //Session[AccountKey] = _accountData; } else { if (_accountDataNew == null) { _accountDataNew = new AccountData(); } _accountDataNew.ZoneId = zoneId; _accountDataNew.ManagerId = manager.Idx; _accountDataNew.Name = manager.Name; _accountDataNew.Account = manager.Account; _accountDataNew.Mod = manager.Mod; } }
private MessageCode Tran_SaveWincountPrizePrize(DbTransaction transaction, NbManagerEntity manager, LeagueWincountrecordEntity leagueWincountRecord, ItemPackageFrame package, int point, int coin) { if (point > 0) { var code = PayCore.Instance.AddBonus(leagueWincountRecord.ManagerId, point, EnumChargeSourceType.LeaguePrize, ShareUtil.GenerateComb().ToString(), transaction); if (code != MessageCode.Success) { return(code); } } else if (coin > 0) { var code = ManagerCore.Instance.AddCoin(manager, coin, EnumCoinChargeSourceType.LeaguePrize, ShareUtil.GenerateComb().ToString(), transaction); if (code != MessageCode.Success) { return(code); } } else { if (!package.Save(transaction)) { return(MessageCode.FailUpdate); } package.Shadow.Save(); } if (!LeagueWincountrecordMgr.Update(leagueWincountRecord, transaction)) { return(MessageCode.FailUpdate); } return(MessageCode.Success); }
public MessageCode SaveWincountPrize(NbManagerEntity manager, LeagueWincountrecordEntity leagueWincountRecord, ItemPackageFrame package, int point, int coin) { try { using (var transactionManager = new TransactionManager(Dal.ConnectionFactory.Instance.GetConnectionString(EnumDbType.Main))) { transactionManager.BeginTransaction(); var messageCode = Tran_SaveWincountPrizePrize(transactionManager.TransactionObject, manager, leagueWincountRecord, package, point, coin); if (messageCode == MessageCode.Success) { transactionManager.Commit(); } else { transactionManager.Rollback(); } return(messageCode); } } catch (Exception ex) { SystemlogMgr.ErrorByZone("SavePrize", ex); return(MessageCode.Exception); } }
public void CalIndulgePrize(NbManagerEntity manager, ref int exp, ref int coin, ref int sophisticate, string siteId = "") { if (!CheckOpenIndulge(siteId)) { return; } int onlineMinutes = GetIndulgeMinutes(manager.Account, manager.Idx, siteId); if (onlineMinutes >= 60 && onlineMinutes < 180) { return; } else if (onlineMinutes >= 180 && onlineMinutes < 300) { exp = exp / 2; coin = coin / 2; sophisticate = sophisticate / 2; } else if (onlineMinutes >= 300) { exp = 0; coin = 0; sophisticate = 0; } else { return; } }
/// <summary> /// 更新技能 /// </summary> /// <param name="manager"></param> /// <param name="transaction"></param> /// <returns></returns> public static MessageCode SetSkillMapByManagerLevel(NbManagerEntity manager, DbTransaction transaction) { var bag = SkillCardConvert.GetSkillBagWrap(manager.Idx); var skillList = SkillCardCache.Instance().GetSkillCardByManagerLevel(manager.Level); var unLearnedList = new List <DTOSkillSetItem>(); foreach (var entity in skillList) { if (!bag.SetList.ContainsKey(entity.SkillRoot)) { DTOSkillSetItem onItem = SkillCardConvert.GetNewSkillCardOn(entity); unLearnedList.Add(onItem); } } if (unLearnedList.Count > 0) { string onItemMap = FlatTextFormatter.ListToText(unLearnedList, SkillBagWrap.SPLITSect, SkillBagWrap.SPLITUnit); int errorCode = 0; NbManagerskillbagMgr.Add(manager.Idx, onItemMap, bag.RawBag.RowVersion, ref errorCode, transaction); if (errorCode != (int)MessageCode.Success) { return((MessageCode)errorCode); } } return(MessageCode.Success); }
bool CheckManagerVip(NbManagerEntity manager) { if (manager.VipLevel < RobotVip) { return(false); } return(true); }
private MessageCode SaveMatchConfirm(NbManagerEntity manager, ItemPackageFrame package, LeagueRecordEntity leagueRecordInfo, LeagueManagerrecordEntity nextManagerRecord, LeagueManagerrecordEntity leagueManagerRecord, int point, bool isUpdatenextManagerRecord, LaegueManagerinfoEntity leagueManagerInfo, LeagueFightMapFrame fightMap, NbManagerextraEntity managerExtra, LeagueWincountrecordEntity leagueWinCount, DbTransaction trans) { if (!ManagerUtil.SaveManagerData(manager, managerExtra, trans)) { return(MessageCode.NbUpdateFail); } if (!NbManagerextraMgr.Update(managerExtra, trans)) { return(MessageCode.NbUpdateFail); } if (package != null) { if (!package.Save(trans)) { return(MessageCode.NbUpdateFail); } package.Shadow.Save(); } if (!LeagueRecordMgr.Update(leagueRecordInfo, trans)) { return(MessageCode.NbUpdateFail); } if (isUpdatenextManagerRecord) { if (nextManagerRecord != null) { if (!LeagueManagerrecordMgr.Update(nextManagerRecord, trans)) { return(MessageCode.NbUpdateFail); } } } if (!LaegueManagerinfoMgr.Update(leagueManagerInfo, trans)) { return(MessageCode.NbUpdateFail); } if (!LeagueManagerrecordMgr.Update(leagueManagerRecord, trans)) { return(MessageCode.NbUpdateFail); } if (point > 0) { var code = PayCore.Instance.AddBonus(manager.Idx, point, EnumChargeSourceType.LeaguePrize, ShareUtil.GenerateComb().ToString(), trans); return(code); } if (!fightMap.SaveFIghtMap(trans)) { return(MessageCode.NbUpdateFail); } if (!LeagueWincountrecordMgr.Update(leagueWinCount, trans)) { return(MessageCode.NbUpdateFail); } return(MessageCode.Success); }
/// <summary> /// 押注金额核对 /// </summary> /// <param name="gamblePoint"></param> /// <param name="manager"></param> /// <param name="maxCount"></param> /// <returns></returns> private bool CheckGamblePoint(int gamblePoint, NbManagerEntity manager, out int maxCount) { maxCount = CacheFactory.VipdicCache.GetEffectValue(manager.VipLevel, EnumVipEffect.DaiycupGamblePoint); if (gamblePoint > maxCount) { return(false); } return(true); }
static void AddManagerData(Guid managerId, int prizeExp, int prizeCoin, int prizeSophisticate, EnumCoinChargeSourceType coinSourceType, string coinOrderId) { NbManagerEntity homeManager = ManagerCore.Instance.GetManager(managerId); ManagerUtil.AddManagerData(homeManager, prizeExp, prizeCoin, prizeSophisticate, coinSourceType, coinOrderId); ManagerUtil.SaveManagerData(homeManager); ManagerUtil.SaveManagerAfter(homeManager, true); }
/// <summary> /// 发放奖励 /// </summary> /// <param name="prizeList"></param> /// <param name="manager"></param> /// <param name="leagueId"></param> /// <returns></returns> public MessageCode SendPrize(List <ConfigLeagueprizeEntity> prizeList, NbManagerEntity manager, int leagueId, ref int exp, ref int coin, ref int score, ref ItemPackageFrame package, ref int point, ref int vipExp) { if (manager == null) { return(MessageCode.NbParameterError); } foreach (var prize in prizeList) { switch (prize.PrizeType) { case (int)EnumLeaguePrize.Exp: //经验 { //是否有vip效果 var vipRate = CacheFactory.VipdicCache.GetEffectValue(manager.VipLevel, EnumVipEffect.PkOrLeagueExpPlus); var totalPlusRate = vipRate / 100.00; var prizeExp = (int)(prize.Count * (1 + totalPlusRate)); exp = prizeExp; vipExp = prizeExp - prize.Count; break; } case (int)EnumLeaguePrize.Coin: //金币 coin = prize.Count; break; case (int)EnumLeaguePrize.Score: //联赛积分 score = prize.Count; //欧洲杯狂欢 ActivityExThread.Instance.EuropeCarnival(3, ref score); break; case (int)EnumLeaguePrize.Item: //道具 //获取背包 if (package == null) { package = ItemCore.Instance.GetPackage(manager.Idx, EnumTransactionType.LeaguePrize); } if (package == null) { return(MessageCode.NbNoPackage); } var result = package.AddItems(prize.ItemCode, prize.Count, 1, prize.IsBindIng, false); if (result != MessageCode.Success) { return(result); } break; case (int)EnumLeaguePrize.Point: //钻石 point = prize.Count; break; } } return(MessageCode.Success); }
private void UserActionNew(string dataType, string sessionId, string channelAlias, string openId, string jsNeed, string serverId, string state) { //"{dataType,sessionId,gameNum,channelAlias,channelId,deviceId,model,release,uid,uname,serverId,serverName,roleId,roleName,roleLevel,ext,sdkVersion}"; NbManagerEntity manager = null; var name = ""; var level = 1; try { var list = NbManagerMgr.GetByAccount(openId, ShareUtil.ZoneName); if (list != null && list.Count > 0) { manager = list[0]; name = manager.Name; level = manager.Level; } } catch (Exception ex) { } var postDataStr = ""; if (manager == null) { postDataStr = "dataType=" + dataType; } else { var ip = ""; try { ip = UAHelper.GetRealIP(); } catch (Exception) { } var oId = UAHelper.StrToUtf8(openId); //release=1 暂留,没有实际意义 postDataStr = "dataType=" + dataType + "&sessionId=" + sessionId + "&gameNum=" + (int)A8csdkEnum.csdkId + "&channelAlias=" + channelAlias + "&channelId=" + jsNeed + "&deviceId=" + ip + "&model=" + "&release=1" + "&channelAlias=" + channelAlias + "&subChannel=" + "&serverId=" + serverId + "&uid=" + oId + "&uname=" + "&serverId=" + serverId + "&serverName=" + serverId + "&roleId=" + openId + "&roleName=" + name + "&roleLevel=" + level + "&ext=" + state + "&sdkVersion="; //第一个枚举参数不变 第二个枚举参数作废不更改 } var url = UAFactory.Instance.GetRedirectURL(ShareUtil.PlatformCode, "useraction"); var retString = UAHelper.HttpPost(url, postDataStr); }
public static void SetOpenFunction(NbManagerEntity manager, int functionId) { var func = GetOpenFunction(manager.Idx); var ss = func.Split(','); if (ss.Length >= functionId) { manager.AddOpenFunc(functionId); ss[functionId - 1] = "1"; DeleteOpenFunctionCache(manager.Idx); manager.FunctionList = string.Join(",", ss); } }
/// <summary> /// 是否开启了拍卖行 /// </summary> /// <param name="managerId"></param> /// <param name="zoneName"></param> /// <param name="manager"></param> /// <returns></returns> public bool IsOpen(Guid managerId, string zoneName, NbManagerEntity manager = null) { if (manager == null) { manager = NbManagerMgr.GetById(managerId, zoneName); } if (manager == null) { return(false); } if (manager.Level < 30 && manager.VipLevel < 3) { return(false); } return(true); }
public MessageCode AddManagerData(Guid managerId, int prizeExp, int prizeCoin, int prizeSophisticate) { try { NbManagerEntity homeManager = ManagerCore.Instance.GetManager(managerId); ManagerUtil.AddManagerData(homeManager, prizeExp, prizeCoin, prizeSophisticate, EnumCoinChargeSourceType.AdminAdd, ""); ManagerUtil.SaveManagerData(homeManager); ManagerUtil.SaveManagerAfter(homeManager, true); return(MessageCode.Success); } catch (Exception ex) { SystemlogMgr.Error("AdminCore:AddManagerData", ex); return(MessageCode.Exception); } }
/// <summary> /// 每日押注次数核对(月卡2次,无月卡1次) /// </summary> /// <param name="gambleCount"></param> /// <param name="manager"></param> /// <param name="maxCount"></param> /// <returns></returns> bool CheckGambleCount(int gambleCount, NbManagerEntity manager, out int maxCount) { maxCount = CacheFactory.VipdicCache.GetEffectValue(manager.VipLevel, EnumVipEffect.DailycupGambleCount); //BuffPlusHelper.DailycupGambleCount(ref maxCount); var monthCard = ManagerMonthcardMgr.GetById(manager.Idx); if (monthCard != null && monthCard.DueToTime.Date >= DateTime.Now.Date) { maxCount++; } if (gambleCount >= maxCount) { return(false); } return(true); }
public static List <PopMessageEntity> SaveManagerAfter(NbManagerEntity manager, bool sendByChat, NbManagerextraEntity extra = null, int currentPoint = -1, int tourLeagueId = -1) { if (manager == null) { return(null); } List <PopMessageEntity> popList = new List <PopMessageEntity>(); if (manager.AddCoin > 0 || manager.AddExp > 0) { //ShadowMgr.SaveCoinCharge(manager.Idx, manager.AddCoin, manager.AddExp, manager.IsLevelup, manager.Level, manager.CoinSourceType, manager.CoinOrderId); } if (manager.IsLevelup) { // ChatHelper.SendOpenLevelGiftPop(manager); if (extra == null) { extra = ManagerCore.Instance.GetManagerExtra(manager.Idx); } CalCurrentStamina(extra, manager.Level, manager.VipLevel); if (extra.Stamina < extra.StaminaMax) { extra.Stamina = extra.StaminaMax; //extra.Stamina += ManagerLevelupAddStamina; //if (extra.Stamina > extra.StaminaMax) // extra.Stamina = extra.StaminaMax; NbManagerextraMgr.Update(extra); } } //var pop1 = ChatHelper.SendUpdateManagerInfoPop(manager, extra, sendByChat, currentPoint, tourLeagueId); //if (pop1 != null) // popList.Add(pop1); //var pop2 = ChatHelper.SendOpenFuncPop(manager, sendByChat); //if (pop2 != null) // popList.Add(pop2); //var pop3 = ChatHelper.SendOpenTaskPop(manager, sendByChat); //if (pop3 != null) // popList.Add(pop3); DeleteOpenFunctionCache(manager.Idx); manager.IsLevelup = false; return(popList); }
MessageCodeResponse AddBlack(Guid managerId, NbManagerEntity byManager) { if (byManager == null) { return(ResponseHelper.Create <MessageCodeResponse>(MessageCode.FriendNotExistsName)); } if (managerId == byManager.Idx) { return(ResponseHelper.Create <MessageCodeResponse>(MessageCode.FriendNotSelf)); } var friend = FriendManagerMgr.GetOne(managerId, byManager.Idx); if (friend != null && friend.Status == 1) { return(ResponseHelper.Create <MessageCodeResponse>(MessageCode.FriendBlackExists)); } FriendManagerMgr.AddBlack(managerId, byManager.Idx); return(ResponseHelper.CreateSuccess <MessageCodeResponse>()); }
void SetAccount(NbManagerEntity manager, string zoneId) { if (manager == null) { ltlMessage.Text = "manager is null."; return; } if (_accountData == null) { _accountData = new AccountData(); } _accountData.ZoneId = zoneId; _accountData.ManagerId = manager.Idx; _accountData.Name = manager.Name; _accountData.Account = manager.Account; _accountData.Mod = manager.Mod; BindData(); Session[AccountKey] = _accountData; }
static RootResponse <DTOAssetInfo> SaveReward(NbManagerEntity manager, string orderId, int coin, int point, int assetType, int tranType, string tranMap) { var msgCode = MessageCode.Success; int totalCoin = -1; int totalPoint = -1; using (var tranMgr = new TransactionManager(Games.NBall.Dal.ConnectionFactory.Instance.GetConnectionString(EnumDbType.Main))) { tranMgr.BeginTransaction(); do { if (coin > 0) { msgCode = ManagerCore.Instance.AddCoinV2(out totalCoin, manager, coin, (int)EnumCoinChargeSourceType.MatchReward, orderId, tranMgr.TransactionObject); if (msgCode != MessageCode.Success) { break; } } if (point > 0) { msgCode = PayCore.Instance.AddBonusV2(out totalPoint, manager.Account, point, EnumChargeSourceType.MatchReward, orderId, tranMgr.TransactionObject); if (msgCode != MessageCode.Success) { break; } } int errorCode = 0; NbManagerMgr.AssetRecord(false, manager.Idx, assetType, tranType, tranMap, ref errorCode, tranMgr.TransactionObject); msgCode = (MessageCode)errorCode; }while (false); if (msgCode != MessageCode.Success) { tranMgr.Rollback(); return(ResponseHelper.CreateRoot <DTOAssetInfo>(msgCode)); } tranMgr.Commit(); } ManagerCore.Instance.DeleteCache(manager.Idx); var data = new DTOAssetInfo(totalCoin, totalPoint); return(ResponseHelper.CreateRoot <DTOAssetInfo>(data)); }
/// <summary> /// GetById /// </summary> /// <param name="idx">idx</param> /// <returns>NbManagerEntity</returns> /// <remarks>2014/4/18 6:30:11</remarks> public NbManagerEntity GetWithKpi(System.Guid idx) { var database = new SqlDatabase(this.ConnectionString); DbCommand commandWrapper = database.GetStoredProcCommand("C_Manager_GetWithKpi"); database.AddInParameter(commandWrapper, "@Idx", DbType.Guid, idx); NbManagerEntity obj = null; using (IDataReader reader = database.ExecuteReader(commandWrapper)) { if (reader.Read()) { obj = LoadSingleRow(reader); obj.Kpi = (System.Int32)reader["Kpi"]; } } return(obj); }
public bool CheckIndulgeNoPrize(NbManagerEntity manager) { int onlineMinutes = GetIndulgeMinutes(manager.Account, manager.Idx); if (onlineMinutes >= 60 && onlineMinutes < 180) { return(false); } else if (onlineMinutes >= 180 && onlineMinutes < 300) { return(true); } else if (onlineMinutes >= 300) { return(true); } else { return(false); } }
/// <summary> /// 加经理数据,不保存 /// </summary> /// <param name="manager"></param> /// <param name="prizeExp"></param> /// <param name="prizeCoin"></param> /// <param name="prizeSophisticate"></param> public static void AddManagerData(NbManagerEntity manager, int prizeExp, int prizeCoin, int prizeSophisticate, EnumCoinChargeSourceType coinSourceType, string coinOrderId) { if (manager == null) { return; } if (prizeCoin > 0) { manager.Coin += prizeCoin; manager.AddCoin += prizeCoin; manager.CoinSourceType = (int)coinSourceType; manager.CoinOrderId = coinOrderId; if (manager.CoinSourceType == 0) { throw new Exception("add coin must enter coin source type."); } } manager.Sophisticate += prizeSophisticate; if (prizeExp > 0) { manager.EXP += prizeExp; manager.AddExp += prizeExp; if (manager.Level < ManagerMaxLevel) { int exp = CacheFactory.ManagerDataCache.GetExp(manager.Level); if (exp > 0 && manager.EXP >= exp) { manager.Level++; manager.EXP -= exp; manager.IsLevelup = true; } } else { manager.EXP = 0; } } }
/// <summary> /// 批量获取玩家信息 /// </summary> /// <param name="data">json</param> /// <returns></returns> public List <NbManagerEntity> IsRegistByNameList(string data) { data = "{\"data\":" + data + "}"; JavaScriptSerializer serializer = new JavaScriptSerializer(); var listData = new OtherTweJsonEntity(); try { listData = serializer.Deserialize <OtherTweJsonEntity>(data); } catch (Exception e) { SystemlogMgr.Info("IsRegistByNameList", e.Message + "|json解析错误"); return(null); } if (listData == null || listData.Data == null || listData.Data.Count == 0) { SystemlogMgr.Info("IsRegistByNameList", "参数为空"); return(null); } SystemlogMgr.Info("IsRegistByNameList", listData.Data.Count + "|计数"); var list = new List <NbManagerEntity>(); foreach (var entity in listData.Data) { var manager = new NbManagerEntity(); manager = NbManagerMgr.GetByName(entity.Name); if (manager == null || manager.Name != entity.Name) { SystemlogMgr.Info("IsRegistByNameList", entity.Name + "不存在" + manager.Name); return(null); } list.Add(manager); } return(list); }