public static void SendPrize(CrossladderManagerhistoryEntity manager, EnumCrossLadderPrizeType crossLadderPrizeType, EnumMailType mailType, int seasonStatus) { if (string.IsNullOrEmpty(manager.PrizeItems)) { manager.PrizeItems = ""; MailBuilder mail = null; int packId = CacheFactory.CrossLadderCache.GetRankPrize(crossLadderPrizeType, manager.Rank,seasonStatus); if (packId <= 0) { SystemlogMgr.Info("CrossLadderSendPrize", "no packid for rank:" + manager.Rank); return; } mail = new MailBuilder(mailType, manager.ManagerId,manager.Season,manager.Rank,manager.RecordDate); var code = MallCore.Instance.BuildPackMail(packId, ref mail); if (code != MessageCode.Success) { SystemlogMgr.Info("CrossLadderSendPrize", "build pack fail rank:" + manager.Rank + ",packId:" + packId); return; } manager.PrizeItems = "pack:" + packId; manager.UpdateTime = DateTime.Now; try { CrossladderManagerhistoryMgr.SavePrize(manager.Idx,manager.PrizeItems); mail.Save(manager.SiteId); } catch (Exception ex) { SystemlogMgr.Error("CrossLadderSendPrize", ex); } } }
public static void ReSendSeasonPrize(int curSeason,int domainId) { var curSeasonEntity = CacheFactory.CrossLadderCache.GetEntity(curSeason); var managers = CrossladderManagerhistoryMgr.GetPrizeManager(curSeason, domainId); if (managers != null) { foreach (var manager in managers) { SendPrize(manager, EnumCrossLadderPrizeType.Season, EnumMailType.CrossLadderPrize, curSeasonEntity == null ? 0 : curSeasonEntity.Status); } } }
void SendSeasonPrize(int curSeason,int seasonStatus) { var managers = CrossladderManagerhistoryMgr.GetPrizeManager(curSeason,_domainId); if (managers != null) { foreach (var manager in managers) { SendPrize(manager, EnumCrossLadderPrizeType.Season, EnumMailType.CrossLadderPrize, seasonStatus); if (manager.Rank < 3) { NbManagerhonorMgr.Add(manager.ManagerId, (int)EnumMatchType.CrossLadder, 0, manager.Season, manager.Rank,null,manager.SiteId); } } } }