コード例 #1
0
        public List <CrosscrowdSendRankPrizeEntity> GetForSendRankPrize(int crowdId)
        {
            var database = new SqlDatabase(this.ConnectionString);

            DbCommand commandWrapper = database.GetStoredProcCommand("C_Crowd_GetForSendRankPrize");

            database.AddInParameter(commandWrapper, "@CrowId", DbType.Int32, crowdId);
            List <CrosscrowdSendRankPrizeEntity> list = null;

            using (IDataReader reader = database.ExecuteReader(commandWrapper))
            {
                list = new List <CrosscrowdSendRankPrizeEntity>();
                while (reader.Read())
                {
                    var obj = new CrosscrowdSendRankPrizeEntity();

                    obj.Idx       = (System.Int32)reader["Idx"];
                    obj.ManagerId = (System.Guid)reader["ManagerId"];
                    obj.Rank      = (System.Int32)reader["Rank"];
                    obj.Score     = (System.Int32)reader["Score"];
                    obj.Status    = (System.Int32)reader["Status"];
                    obj.SiteId    = (System.String)reader["SiteId"];
                    list.Add(obj);
                }
            }
            return(list);
        }
コード例 #2
0
        public CrosscrowdSendRankPrizeEntity GetMaxKiller(int crowdId)
        {
            var database = new SqlDatabase(this.ConnectionString);

            DbCommand commandWrapper = database.GetStoredProcCommand("C_Crowd_GetMaxKiller");

            database.AddInParameter(commandWrapper, "@CrowId", DbType.Int32, crowdId);

            using (IDataReader reader = database.ExecuteReader(commandWrapper))
            {
                if (reader.Read())
                {
                    var obj = new CrosscrowdSendRankPrizeEntity();

                    obj.Idx       = (System.Int32)reader["Idx"];
                    obj.ManagerId = (System.Guid)reader["ManagerId"];
                    obj.Rank      = (System.Int32)reader["Rank"];
                    obj.Score     = (System.Int32)reader["Score"];
                    obj.Status    = (System.Int32)reader["Status"];
                    obj.SiteId    = (System.String)reader["SiteId"];
                    return(obj);
                }
            }
            return(null);
        }
コード例 #3
0
 static MessageCode doSendRankPrize(CrosscrowdInfoEntity crowd, CrosscrowdSendRankPrizeEntity entity, int maxPoint, int maxLegendCount)
 {
     try
     {
         if (entity.Status != 0)
         {
             return(MessageCode.Success);
         }
         if (entity.Score <= 0)
         {
             return(MessageCode.Success);
         }
         string      prizeItemString = "";
         var         mail            = new MailBuilder(entity.ManagerId, EnumMailType.CrossCrowdRank, entity.Rank);
         MessageCode mess            = BuildPrizeMail(crowd, mail, EnumCrowdPrizeCategory.CrossRank, entity.Rank, maxPoint, maxLegendCount, ref prizeItemString);
         if (mess != MessageCode.Success)
         {
             return(mess);
         }
         entity.Status = 1;
         CrosscrowdInfoMgr.SaveRankPrizeStatus(entity.Idx, entity.Status);
         if (!mail.Save(entity.SiteId))
         {
             return(MessageCode.NbParameterError);
         }
         SavePrizeRecord(entity.ManagerId, EnumCrowdPrizeCategory.CrossRank, "history:" + entity.Idx,
                         prizeItemString, entity.SiteId);
     }
     catch (Exception ex)
     {
         SystemlogMgr.Error("CrossCrowd-doSendRankPrize", ex);
         return(MessageCode.NbParameterError);
     }
     return(MessageCode.Success);
 }