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 int GetRankPrize(EnumCrossLadderPrizeType crossLadderPrizeType, int rank, int seasonStatus) { if (seasonStatus == 1) { return(GetRankPrize(_prizeDic, rank)); } else { return(GetRankPrize(_prizeNewDic, rank)); } }