Exemplo n.º 1
0
        public Model.ZpConfigModel GetModel(int id)
        {
            StringBuilder sql = new StringBuilder();

            sql.Append("select * from zp_config where id=" + id);
            Model.ZpConfigModel model = new Model.ZpConfigModel();
            SqlDataReader       dr    = SqlHelper.ExecuteReader(conn, CommandType.Text, sql.ToString());

            if (dr.Read())
            {
                model.Id    = Convert.ToInt32(dr["Id"].ToString());
                model.Zjl1  = Convert.ToInt32(dr["Zjl1"].ToString());
                model.Zjl2  = Convert.ToInt32(dr["Zjl2"].ToString());
                model.Zjl3  = Convert.ToInt32(dr["Zjl3"].ToString());
                model.Zjl4  = Convert.ToInt32(dr["Zjl4"].ToString());
                model.Zjl5  = Convert.ToInt32(dr["Zjl5"].ToString());
                model.Zjl6  = Convert.ToInt32(dr["Zjl6"].ToString());
                model.Zjl7  = Convert.ToInt32(dr["Zjl7"].ToString());
                model.Zjl8  = Convert.ToInt32(dr["Zjl8"].ToString());
                model.Zjl9  = Convert.ToInt32(dr["Zjl9"].ToString());
                model.Zjl10 = Convert.ToInt32(dr["Zjl10"].ToString());
                model.Zjl11 = Convert.ToInt32(dr["Zjl11"].ToString());
                model.Zjl12 = Convert.ToInt32(dr["Zjl12"].ToString());
                model.Zjl13 = Convert.ToInt32(dr["Zjl13"].ToString());
                model.Zjl14 = Convert.ToInt32(dr["Zjl14"].ToString());
                model.Zjl15 = Convert.ToInt32(dr["Zjl15"].ToString());
                model.Zjl16 = Convert.ToInt32(dr["Zjl16"].ToString());
                model.Zjl17 = Convert.ToInt32(dr["Zjl17"].ToString());
                model.Zjl18 = Convert.ToInt32(dr["Zjl18"].ToString());
            }
            dr.Close();
            return(model);
        }
Exemplo n.º 2
0
        public int Update(Model.ZpConfigModel model)
        {
            int obj = 0;

            StringBuilder sql = new StringBuilder();

            sql.Append(" Update zp_config set Zjl1=@Zjl1,Zjl2=@Zjl2,Zjl3=@Zjl3,Zjl4=@Zjl4,Zjl5=@Zjl5,Zjl6=@Zjl6,Zjl7=@Zjl7,Zjl8=@Zjl8,Zjl9=@Zjl9," +
                       "Zjl10=@Zjl10,Zjl11=@Zjl11,Zjl12=@Zjl12,Zjl13=@Zjl13,Zjl14=@Zjl14,Zjl15=@Zjl15,Zjl16=@Zjl16,Zjl17=@Zjl17,Zjl18=@Zjl18  where Id=@Id");

            SqlParameter[] para = new SqlParameter[]
            {
                new SqlParameter("@Zjl1", model.Zjl1),
                new SqlParameter("@Zjl2", model.Zjl2),
                new SqlParameter("@Zjl3", model.Zjl3),
                new SqlParameter("@Zjl4", model.Zjl4),
                new SqlParameter("@Zjl5", model.Zjl5),
                new SqlParameter("@Zjl6", model.Zjl6),
                new SqlParameter("@Zjl7", model.Zjl7),
                new SqlParameter("@Zjl8", model.Zjl8),
                new SqlParameter("@Zjl9", model.Zjl9),
                new SqlParameter("@Zjl10", model.Zjl10),
                new SqlParameter("@Zjl11", model.Zjl11),
                new SqlParameter("@Zjl12", model.Zjl12),
                new SqlParameter("@Zjl13", model.Zjl13),
                new SqlParameter("@Zjl14", model.Zjl14),
                new SqlParameter("@Zjl15", model.Zjl15),
                new SqlParameter("@Zjl16", model.Zjl16),
                new SqlParameter("@Zjl17", model.Zjl17),
                new SqlParameter("@Zjl18", model.Zjl18),
                new SqlParameter("@Id", model.Id)
            };

            try
            {
                SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql.ToString(), para);
                obj = model.Id;
            }
            catch (Exception)
            {
                obj = 0;
            }
            return(obj);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获取奖项(最多7个)
        /// </summary>
        /// <param name="PrizeCont">奖项总个数(最多7个)</param>
        /// <param name="AwardsType">抽奖类型 1:常规奖 2:红包奖</param>
        /// <returns>奖项</returns>
        public static Model.AwardsStatisticsModel GetPrize(int PrizeCont, int AwardsType)
        {
            if (PrizeCont > 7)
            {
                return(null);
            }

            Db.AwardsStatisticsDal AwardsDal = new Db.AwardsStatisticsDal();
            Db.ZpConfigDal         dal       = new Db.ZpConfigDal();
            Model.ZpConfigModel    m         = dal.GetModel(AwardsType);

            #region 获取所有奖项设置值

            #region 奖项每天总数
            int[] PrizeDayCont = new int[] { m.Zjl7, m.Zjl9, m.Zjl11, m.Zjl13, m.Zjl15, m.Zjl17 };
            #endregion

            #region 奖项总数
            int[] PrizeAllCont = new int[] { m.Zjl8, m.Zjl10, m.Zjl12, m.Zjl14, m.Zjl16, m.Zjl18 };
            #endregion

            #region 奖项预设中奖率

            int[] PresetProbability = new int[] { m.Zjl1, m.Zjl2, m.Zjl3, m.Zjl4, m.Zjl5, m.Zjl6 };
            #endregion

            #region 奖项实际中奖率
            int[] ActualProbability = new int[] { 0, 0, 0, 0, 0, 0 };
            #endregion

            #endregion

            #region 获取奖项统计参与详细
            List <Model.AwardsStatisticsModel> AwardsList = AwardsDal.GetModelList(string.Format(" and AwardsType={0} order by id", AwardsType));
            #endregion

            #region 获取奖项实际参与量与预设奖项总量比较后的中奖率
            for (int i = 0; i < PrizeCont - 1; i++)
            {
                ActualProbability[i] = PresetProbability[i];

                Model.AwardsStatisticsModel model = AwardsList.Where(w => w.AwardsId == i + 1).FirstOrDefault();//获取奖项参与详情
                if (model == null)
                {
                    throw new ArgumentNullException("获取奖项失败");
                }

                #region 如果当前奖项日期不等于当天,则每日总数为0
                if (model.DateStamp != DateTime.Now.ToShortDateString())
                {
                    model.TodayTotal = 0;
                }
                #endregion

                if (model.TodayTotal >= PrizeDayCont[i] || model.AllTotal - model.BackTotal >= PrizeAllCont[i])
                {
                    ActualProbability[i] = 0;
                }
            }
            #endregion

            #region 抽奖
            int          seven = 100 - ActualProbability[0] - ActualProbability[1] - ActualProbability[2] - ActualProbability[3] - ActualProbability[4] - ActualProbability[5];
            Common.Prize prize = new Common.Prize(ActualProbability[0], ActualProbability[1], ActualProbability[2], ActualProbability[3], ActualProbability[4], ActualProbability[5], seven);
            #endregion

            #region 赋值中奖详情-奖项-角度-奖品名称-奖项Id
            string[] PrizeModel = prize.GetPrize();

            Model.AwardsStatisticsModel AwardsPrizeModel = AwardsList.Where(s => s.AwardsName == PrizeModel[0]).FirstOrDefault();
            if (AwardsPrizeModel == null)
            {
                throw new ArgumentNullException("获取奖项失败");
            }

            AwardsPrizeModel.Angle = PrizeModel[1];//角度
            #endregion

            return(AwardsPrizeModel);
        }