protected VoteBonusRecord GetBonus(string openid, out VoteBonus bonus) { //所有当日中奖数未超过每日限量的奖品 List <VoteBonus> source = SqlFactory.GetSqlhelper().CreateWhere <VoteBonus>().Select().Where(o => o.TodayBonusedNumber < o.Number).ToList(); if (source.Count == 0) { bonus = null; return(null); } int num = new Random().Next(0, source.Count <VoteBonus>()); bonus = source[num]; //获取之前的领取记录,读取姓名和手机 var lastrecord = SqlFactory.GetSqlhelper().CreateWhere <VoteBonusRecord>() .Where(o => o.OpenId == openid).OrderBy(o => o.CreateTime, SoMain.Common.AscDesc.Desc).FirstOrDefault(); VoteBonusRecord poco = new VoteBonusRecord { OpenId = openid, BonusID = bonus.ID, RealName = lastrecord?.RealName, Mobile = lastrecord?.Mobile }; //如果是现金红包,则生成随机兑换码 if (poco.Bonus.Title == "现金红包") { var code = getStr(false, 8); poco.AddInfo = code; } SqlFactory.GetSqlhelper().Save <VoteBonusRecord>(poco); HttpContext.Current.Session["BonusGet"] = null; return(poco); }
public ActionResult Submit(int id) { AjaxResult data = new AjaxResult(); try { VoteBonusRecord poco = SqlFactory.GetSqlhelper().SingleById <VoteBonusRecord>(id); poco.UseDate = new DateTime?(DateTime.Now); SqlFactory.GetSqlhelper().Save <VoteBonusRecord>(poco); data.ErrCode = 0; } catch (Exception exception) { data.ErrCode = -1; data.Message = exception.Message; } return(base.Json(data)); }
protected void Page_Load(object sender, EventArgs e) { if (this.Session["openid"] == null) { base.Response.Redirect("Info.aspx?info=参数错误"); } if (HttpContext.Current.Session["BonusGet"] == null) { base.Response.Redirect("Info.aspx?info=没有中奖信息"); } this.record = this.GetBonus(this.Session["openid"].ToString(), out this.bonus); if (record == null) { base.Response.Redirect("Info.aspx?info=今天奖品已经发放结束,敬请明天早点参与"); } else if (record.Bonus.Title == "现金红包") { base.Response.Redirect("RedPack.aspx?code=" + record.AddInfo); } }
private void SubmitBonusInfo() { AjaxResult result = new AjaxResult(); int primaryKey = int.Parse(HttpContext.Current.Request.Form["recordid"]); string str = HttpContext.Current.Request.Form["realname"]; string str2 = HttpContext.Current.Request.Form["mobile"]; VoteBonusRecord poco = SqlFactory.GetSqlhelper().SingleOrDefaultById <VoteBonusRecord>(primaryKey); if (poco != null) { poco.RealName = str; poco.Mobile = str2; SqlFactory.GetSqlhelper().Save <VoteBonusRecord>(poco); result.ErrCode = 0; } else { result.ErrCode = -1; result.Message = "不存在中奖记录"; } HttpContext.Current.Session["openid"] = poco.OpenId; HttpContext.Current.Response.Write(JsonConvert.SerializeObject(result)); }