微信开发中如何实现大转盘功能
创始人
2024-11-22 22:21:39
0次

一、使用

1. 新建一个大转盘的活动:

微信开发中如何实现大转盘功能

2. 奖项设置

微信开发中如何实现大转盘功能

3. 保存后,在微信里给公众号发一个“大转盘”的消息, 就会收到大转盘的内容

微信开发中如何实现大转盘功能

4. 点击进入大转盘活动,然后点击中间的 “点击抽奖”:

微信开发中如何实现大转盘功能  微信开发中如何实现大转盘功能

二、实现

1. 页面

1.1 前台代码
<% if (ErrLevel < 100)
   {
       Response.Write(ErrorInfo);
   }
   else if (ErrLevel == 101)
   {  //活动已结束,跳转到结束页面
%>

    window.location.href = "end.aspx?wid="+<%=wid%>+"&aid="+<%=aid%>+"&openid="+<%=openid%>+";";

<%
   }
   else
   {  %>




    

    
    
    
    
    
    
    
    
    幸运大转盘抽奖
    
    
    
    
    


    
        

            
            
            
            
                
                    
                        -.png">
                    

                

                                                                                   

                

            

                                                                           恭喜你中奖了

                                                     

你中了:

                            

兑奖SN码:

                                                                                          

                            

                                                             

                                                         

                                                             

                        

                    

                

                                                              恭喜你中奖了

                                                     

你中了:

                            

兑奖sn码为:

                            你已经兑奖成功,本SN码自定作废!

                        

                    

                

                                                              奖项设置:

                                                                                                           

                    

                

                                                              活动说明:

                                                                                      本次活动每天可以转                                                              次,总共可以转                                                               次 你已经转了                                       次                             

                            

                                                             

                        

                    

                

            

        

                     var thisurl= document.URL;             var wid = <%=wid%>;             var aid =<%=aid%>;             var status = $("#hidStatus").val();             var showInfo = $("#hidErrInfo").val();             var openid ="<%=openid%>";             var jxname="";             var jpname="";             var cjtip="";             var zhuantimes=parseInt( $("#zhuantimes").text());                           var zjl = false;//没中奖为false中奖为true              <% if (isZhJing)                { %>             $("#outercont").hide();             $("#result").show();                <%} %>             if (status == "2") {                 $("#outercont").hide();             }             else if(status=="100")             {                 $("#outercont").hide();                 $("#result").hide();                 $("#zjl").show();             }             $(function () {                 window.requestAnimFrame = (function () {                     return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame ||                     function (callback) {                         window.setTimeout(callback, 1000 / 60)                     }                 })();                 var totalDeg = 360 * 3 + 0;                 var steps = [];                                 var lostDeg = [360];                 var prizeDeg = <%=shuzu%>;                 var prize, sncode;                 var count = 0;                 var now = 0;                 var a = 0.01;                 var outter, inner, timer, running = false;                 function countSteps() {                     var t = Math.sqrt(2 * totalDeg / a);                     var v = a * t;                     for (var i = 0; i < t; i++) {                         steps.push((2 * v * i - a * i * i) / 2)                     }                     steps.push(totalDeg)                 }                 function step() {                     // alert('rotate(' + steps[now++] + 'deg)');                     outter.style.webkitTransform = 'rotate(' + steps[now++] + 'deg)';                     outter.style.MozTransform = 'rotate(' + steps[now++] + 'deg)';                     if (now < steps.length) {                         running = true;                         requestAnimFrame(step)                     } else {                         running = false;                         setTimeout(function () {                             $("#zhuantimes").text(++zhuantimes);                             if (zjl) {                                 $("#sncode").text(sncode);                                 $("#jpsn").text(sncode);                                 $("#jiangping").text(jxname+" "+jpname);                                 $("#prizetype").text(jxname+" "+jpname);                                 $("#zjl").slideToggle(500);                                 $("#outercont").slideUp(500)                             }                               else                             {                                 alert(cjtip);                             }                         },                         200)                     }                 }                 function start(deg) {                     deg = deg || lostDeg[parseInt(lostDeg.length * Math.random())];                     running = true;                     clearInterval(timer);                     totalDeg = 360 * 5 + deg;                     steps = [];                     now = 0;                     countSteps();                     requestAnimFrame(step)                 }                 window.start = start;                 outter = document.getElementById('outer');                 inner = document.getElementById('inner');                 i = 10;                 $("#inner").click(function () {                     if (status == "2") {                         alert(showInfo);                     }                     if (running) return;                                         $.ajax({                         url: "dzpAct.ashx",                         dataType: "json",                         data: {                             openid: openid,                             myact: "choujiang",                             aid: aid,                             wid:wid,                             rad: Math.random()                         },                         beforeSend: function () {                             running = true;                             timer = setInterval(function () {                                 i += 5;                                                                outter.style.webkitTransform = 'rotate(' + i + 'deg)';                                 outter.style.MozTransform = 'rotate(' + i + 'deg)'                             },                             1)                         },                         success: function (data) {                             if (data.error == "sys" ||data.error == "nostart" ) {                                 cjtip=data.content;                                 count = 100;                                 clearInterval(timer);                                 return                             }                             else if(data.error=="notimes")                             {                                 cjtip=data.content;                                 start();                             }                             else if (data.error=="succ") {                                                                  zjl=true;                                 cjtip=data.content;                                 prize = data.sortid;                                 sncode = data.sn;                                 jpname=data.jpname;                                 jxname=data.jxname;                                 $("#hidAwardId").val(data.uid);                                 start(prizeDeg[data.sortid - 1])                             }                                                          else {                                 cjtip=data.content;                                 start()                             }                             running = false;                             count++                         },                         error: function () {                             prize = null;                             start();                             running = false;                             count++                         },                         timeout: 1000                     })                 })             });             $("#save-btn").bind("click",             function () {                 var btn = $(this);                                var tel = $("#tel").val();                 var pwd = "";                 var hidAwardId = $("#hidAwardId").val();                 if ($("#parssword").length>0 &&  $.trim($("#parssword").val()) == "") {                     alert("请输入兑奖密码!");                     return                 }                 if ($.trim(tel) == "") {                     alert("请输入手机号!");                     return                 }                 if($("#parssword").length>0){                     pwd= $("#parssword").val();                 }                 var rad = Math.random();                                   var submitData = {                     id: hidAwardId,                     aid: aid,                     pwd: pwd,                     snumber:$("#sncode").text(),                     tel: tel,                     rad: rad,                     openid:openid                 };                                   $.post('dzpAct.ashx?myact=update', submitData,                function (data) {                    if (data.success == "1") {                        alert("提交成功!");                        $("#result").slideToggle(500);                        $("#zjl").slideToggle(500);                        $("#outercont").slideUp(500);                    } else {                        alert(data.msg);                    }                },                "json")              });                                           document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {                 window.shareData = {                     "imgUrl": "",                     "timeLineLink":  thisurl + "&is_share=1",                     "sendFriendLink":  thisurl + "&is_share=1",                     "weiboLink":  thisurl + "&is_share=1",                     "tTitle": "<%=dzpAction.actName%>",                     "tContent": "请关注后,再来抽奖。<%=dzpAction.brief%>",                     "fTitle": "请关注后,再来抽奖。<%=dzpAction.actName%>",                     "fContent": "请关注后,再来抽奖。<%=dzpAction.brief%>",                     "wContent": "请关注后,再来抽奖。<%=dzpAction.brief%>"                 };                 // 发送给好友                 WeixinJSBridge.on('menu:share:appmessage', function (argv) {                     WeixinJSBridge.invoke('sendAppMessage', {                         "img_url": window.shareData.imgUrl,                         "img_width": "640",                         "img_height": "640",                         "link": window.shareData.sendFriendLink,                         "desc": window.shareData.fContent,                         "title": window.shareData.fTitle                     }, function (res) {                         _report('send_msg', res.err_msg);                     })                 });                 // 分享到朋友圈                 WeixinJSBridge.on('menu:share:timeline', function (argv) {                     WeixinJSBridge.invoke('shareTimeline', {                         "img_url": window.shareData.imgUrl,                         "img_width": "640",                         "img_height": "640",                         "link": window.shareData.timeLineLink,                         "desc": window.shareData.tContent,                         "title": window.shareData.tTitle                     }, function (res) {                         _report('timeline', res.err_msg);                     });                 });                 // 分享到微博                 WeixinJSBridge.on('menu:share:weibo', function (argv) {                     WeixinJSBridge.invoke('shareWeibo', {                         "content": window.shareData.wContent,                         "url": window.shareData.weiboLink,                     }, function (res) {                         _report('weibo', res.err_msg);                     });                 });             }, false)                     ©微布斯科技提供 qq 121285904 www.webus.cn

<% }%>
2.1  后台代码
/// 
      /// ErrLevel:100表示正确无误,1表示严重错误,2表示业务方面有问题;3直接跳转到结束页面
      /// 
      public int ErrLevel = 100;
      public string ErrorInfo = "";
      public  Model.wx_dzpActionInfo dzpAction;
      public int picIndex = 0;
      public int aid = 0;
      public int wid = 0;
      public bool isZhJing = false;
      public string openid = "";
      public string shuzu = "";
      BLL.wx_dzpAwardUser ubll = new BLL.wx_dzpAwardUser();
      BLL.wx_dzpUsersTemp utbll = new BLL.wx_dzpUsersTemp();
      BLL.wx_dzpActionInfo actBll = new BLL.wx_dzpActionInfo();
      BLL.wx_dzpAwardItem itemBll = new BLL.wx_dzpAwardItem();
 
      protected void Page_Load(object sender, EventArgs e)
      {
          OnlyWeiXinLook();
          aid = MyCommFun.RequestInt("aid", 0);
          wid = MyCommFun.RequestInt("wid", 0);
          openid = MyCommFun.RequestOpenid();
 
          if (aid == 0 || wid == 0 || openid.Trim() == "")
          {
              ErrLevel = 1;
              ErrorInfo = "访问参数错误!";
              return;
          }
          BindData();
      }
 
 
      private void BindData()
      {
          dzpAction = actBll.GetModel(aid);
          IList itemlist = itemBll.GetModelList("actId=" + aid);
          if (dzpAction == null || itemlist == null || itemlist.Count <= 0)
          {
              ErrLevel = 1;
              ErrorInfo = "未获得到数据";
              return;
          }
          this.Title = dzpAction.actName;
 
          if (dzpAction.endDate <= DateTime.Now)
          {   //说明活动已经结束
              ErrLevel = 101;
              ErrorInfo = "活动已结束";
              return;
          }
 
          StringBuilder sb = new StringBuilder("");
          Model.wx_dzpAwardItem item = new Model.wx_dzpAwardItem();
          int ttJpNum = 0;
          shuzu = "[";
          for (int i = 0; i < itemlist.Count; i++)
          {
              item = itemlist[i];
              sb.Append("

" + item.jxName + ":" + item.jpName + "  数量:" + item.jpNum + "

");               ttJpNum += item.jpRealNum.Value;               picIndex++;               if (i < (itemlist.Count - 1))               {                   shuzu += item.jiaodu_min + ",";               }               else               {                   shuzu += item.jiaodu_min;               }           }           shuzu += "]";           litJiangXing.Text = sb.ToString();           litRemark.Text = dzpAction.brief;           litContentInfo.Text = dzpAction.contractInfo;             littotTimes.Text = dzpAction.personMaxTimes == null ? "0" : dzpAction.personMaxTimes.Value.ToString();           litdaysTimes.Text = dzpAction.dayMaxTimes == null ? "0" : dzpAction.dayMaxTimes.Value.ToString();           if (dzpAction.djPwd.Trim().Length > 0)           {               litPwd.Text = "  

  

";           }           if (dzpAction.beginDate > DateTime.Now)           {               hidStatus.Value = "-2";               ErrorInfo = hidErrInfo.Value = "活动尚未开始";           }           int hasCjTimes = utbll.getCJCiShu(aid, openid);//返回该用户的抽奖次数           this.litHasUsedTimes.Text = hasCjTimes.ToString();           int dayMaxTimes = dzpAction.dayMaxTimes == null ? 0 : dzpAction.dayMaxTimes.Value;           int perMaxTimes = dzpAction.personMaxTimes == null ? 0 : dzpAction.personMaxTimes.Value;           //判断是否中奖了           Model.wx_dzpAwardUser award = ubll.getZJinfoByOpenid(aid, openid);           if (award != null && award.id>0)           {    //您中奖了               if (award.uTel != null && award.uTel.ToString().Trim() != "")               {//已经中奖,并且提交了                   litJp.Text = "[" + award.jxName + "] " + award.jpName;                   litSNM.Text = award.sn;                   isZhJing = true;               }               else               { //已经中奖,但是未提交                   hidStatus.Value = "100";                   litzjlJP.Text = "[" + award.jxName + "] " + award.jpName;                   litzjlSN.Text = award.sn;                   hidAwardId.Value = award.id.ToString();                   litJp.Text = "[" + award.jxName + "] " + award.jpName;                   litSNM.Text = award.sn;               }           }           else           {               //判断每人最大抽奖次数,是否超过了               if (hasCjTimes >= dzpAction.personMaxTimes)               {                 hidStatus.Value = "2";                 //litOtherTip.Text = "您已经抽了" + hasCjTimes + "次了。

";               }               if (isTodayOverSum(dayMaxTimes))               {                   hidStatus.Value = "2";                  // litOtherTip.Text = "每人每天只有" + dayMaxTimes.ToString() + "次抽奖机会,您已经使用完了。

";               }           }       }       #region 方法       ///        /// 判断今天是否已经超出抽奖次数       /// todayTTTimes:能抽奖的总次数       ///        ///        /// 每天的抽奖总次数       ///        private bool isTodayOverSum( int todayTTTimes)       {           if (todayTTTimes <= 0)           {               return true;           }             DateTime todaybegin = DateTime.Parse(DateTime.Now.ToShortDateString());           DateTime mingtianBegin = todaybegin.AddDays(1);           if (!utbll.ExistsOpenid(" actId=" + aid + "  and  openid='" + openid + "' and  createDate>='" + todaybegin + "' and createDate<'" + mingtianBegin + "'"))           {               return false;             }             Model.wx_dzpUsersTemp model = utbll.getModelByAidOpenid(aid, openid);           if (model.times >= todayTTTimes)           {               return true;           }           else           {                              return false;           }         }         #endregion

undefined

2. 实现逻辑

undefined

public class dzpAct : IHttpHandler
    {
        BLL.wx_dzpActionInfo actbll = new BLL.wx_dzpActionInfo();
        BLL.wx_dzpAwardUser ubll = new BLL.wx_dzpAwardUser();
        BLL.wx_dzpUsersTemp utbll = new BLL.wx_dzpUsersTemp();
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/json";
            string _action = MyCommFun.QueryString("myact");
            int aid = MyCommFun.RequestInt("aid");
            string openid = MyCommFun.RequestOpenid();  //得到微信用户的openid
            if (_action == "choujiang")
            {
                Dictionary jsonDict = new Dictionary();
                try
                {
                    //抽奖
                    Model.wx_dzpActionInfo dzpAction = new Model.wx_dzpActionInfo();
                  
                    BLL.wx_dzpAwardItem itemBll = new BLL.wx_dzpAwardItem();
                    #region 判断
                    int wid = MyCommFun.RequestInt("wid");
                    if (aid == 0 || wid == 0 || openid.Trim() == "")
                    {
                        jsonDict.Add("error", "sys");
                        jsonDict.Add("content", "参数错误!");
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    dzpAction = actbll.GetModel(aid);
                    if (dzpAction == null)
                    {
                        jsonDict.Add("error", "sys");
                        jsonDict.Add("content", "参数错误!");
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    if (dzpAction.endDate <= DateTime.Now)
                    { //说明活动已经结束
                        //非活动期间
                        jsonDict.Add("error", "end");
                        jsonDict.Add("content", "活动已结束");
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    else if (dzpAction.beginDate > DateTime.Now)
                    {
                        //活动未开始
                        //非活动期间
                        jsonDict.Add("error", "nostart");
                        jsonDict.Add("content", "活动未开始");
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    int dayMaxTimes = dzpAction.dayMaxTimes == null ? 0 : dzpAction.dayMaxTimes.Value;
                    int perMaxTimes = dzpAction.personMaxTimes == null ? 0 : dzpAction.personMaxTimes.Value;
                    //判断每人最大抽奖次数,是否超过了
                    if (personCJTimes(openid, aid) >= dzpAction.personMaxTimes)
                    {
                        jsonDict.Add("error", "notimes");
                        jsonDict.Add("content", "您已抽过奖了,欢迎下次再来!");
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    if (isTodayOverSum(aid, openid, dayMaxTimes))
                    {
                        jsonDict.Add("error", "notimes");
                        jsonDict.Add("content", "每人每天只有" + dayMaxTimes.ToString() + "次抽奖机会。");
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    Model.wx_dzpAwardUser award = ubll.getZJinfoByOpenid(aid, openid);
                    if (award != null)
                    {
                        //您中奖了
                        jsonDict.Add("error", "notimes");
                        jsonDict.Add("content", "您中奖了,欢迎下次再来!");
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    #endregion
                    #region 计算中奖信息
                    /// 处理是否中奖
                    /// hidStatus 状态为-1:不能抽奖,直接跳转到end.aspx页面;
                    /// 0:抽奖次数超过设置的最高次数;
                    /// 1:还可以继续抽奖;
                    /// 2:中奖了;
                    List itemlist = itemBll.GetModelList("actId=" + aid);//该活动的所有奖项信息
                    int ttJpNum = 0;
                    for (int i = 0; i < itemlist.Count; i++)
                    {
                        ttJpNum += itemlist[i].jpRealNum.Value;
                    }
                    IList auserlist = ubll.getHasZJList(aid);//已经中奖的人列表
                    int ZhongJiangNum = 0;
                    if (auserlist != null)
                    {
                        ZhongJiangNum = auserlist.Count; //已经中奖的人数
                    }
                    int syZjNum = ttJpNum - ZhongJiangNum; //剩余的奖品数量
                    if (syZjNum <= 0)
                    {  //说明已经没有奖品了
                        jsonDict.Add("error", "-1");
                        jsonDict.Add("content", dzpAction.cfcjhf);
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    dzpAction.personNum = MyCommFun.Obj2Int(dzpAction.personNum, 1);
                    dzpAction.personMaxTimes = MyCommFun.Obj2Int(dzpAction.personMaxTimes, 1);
                    int fenmo = dzpAction.personNum.Value * dzpAction.personMaxTimes.Value;
                    Random rd = new Random((int)DateTime.Now.Ticks);
                    int radNum = rd.Next(0, fenmo);//从0到fenmo里随机出一个值
                    if (radNum < syZjNum)
                    {
                        //中奖了,再从剩余奖品里抽取一个奖品
                        Model.wx_dzpAwardItem dajiang = getZJItem(itemlist, auserlist);
                        if (dajiang != null)
                        {
                            //这是中的中奖了
                            string snumber = Get_snumber(aid);
                            int uId = ubll.Add(aid, "", "", openid, dajiang.jxName, dajiang.jpName, snumber);
 
                            jsonDict.Add("error", "succ");
                            jsonDict.Add("content", "恭喜你中奖了!");
                            jsonDict.Add("sortid", dajiang.sort_id.Value.ToString());
                            jsonDict.Add("jxname", dajiang.jxName);
                            jsonDict.Add("jpname", dajiang.jpName);
                            jsonDict.Add("uid", uId.ToString());
                            jsonDict.Add("sn", snumber);
                            context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                            return;
                        }
                        else
                        {
                            //奖品已经全部中完了
                            jsonDict.Add("error", "-1");
                            jsonDict.Add("content", dzpAction.cfcjhf);
                            context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                            return;
                        }
                    }
                    else
                    {
                        //这个条件说明:未中奖
                        //抛出未中奖的数据
 
                        jsonDict.Add("error", "-1");
                        jsonDict.Add("content", dzpAction.cfcjhf);
                        context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                        return;
                    }
                    #endregion
                }
                catch (Exception ex)
                {
                    jsonDict.Add("error", "sys");
                    jsonDict.Add("content", "计算抽奖出现未知错误,请联系管理员!");
                    context.Response.Write(MyCommFun.getJsonStr(jsonDict));
                    return;
                }
            }
            else if (_action == "update")
            {
                try
                {
                    #region 提交手机
                    /// 提交手机号码
                    string tel = MyCommFun.QueryString("tel");
                    string pwd = MyCommFun.QueryString("pwd");
                    string snumber = MyCommFun.QueryString("snumber");
                    int id = MyCommFun.RequestInt("id");
 
                    if (aid == 0 || id == 0 || snumber == "" || tel == "")
                    {
                        context.Response.Write("{\"msg\":\"提交出现异常!!\",\"success\":\"0\"}");
                        return;
                    }
 
                    if ((pwd.Length>0) &&( !actbll.ExistsPwd(aid, pwd)))
                    {
                        context.Response.Write("{\"msg\":\"商家兑换密码错误!!\",\"success\":\"0\"}");
                        return;
                    }
                    BLL.wx_dzpAwardUser ubll = new BLL.wx_dzpAwardUser();
                    Model.wx_dzpAwardUser model = ubll.GetModel(id);
                    if (model == null)
                    {
                        context.Response.Write("{\"msg\":\"提交出现异常2!!\",\"success\":\"0\"}");
                        return;
                    }
                    model.uTel = tel;
                    if (pwd.Length > 0)
                    {
                        model.hasLingQu = true;
                    }
                    else
                    {
                        model.hasLingQu = false;
                    }
                    ubll.Update(model);
 
                    context.Response.Write("{\"msg\":\"提交成功!\",\"success\":\"1\"}");
                    return;
                    #endregion
                }
                catch
                {
                    context.Response.Write("{\"msg\":\"提交出现异常!!\",\"success\":\"0\"}");
 
                    return;
                }
            }
        }
        #region 方法
        /// 
        /// 取中奖的项目
        /// 
        /// 所有的奖品信息
        /// 已经中奖的列表
        /// 
        private Model.wx_dzpAwardItem getZJItem(IList itemlist, IList haszjlist)
        {
            IList zjItemlist = new List();//剩余奖品列表
            Model.wx_dzpAwardItem tmpItem = new Model.wx_dzpAwardItem();
            Model.wx_dzpAwardItem stmpItem = new Model.wx_dzpAwardItem();
            IList thiszjRs;
            for (int i = 0; i < itemlist.Count; i++)
            {
                tmpItem = itemlist[i];
                thiszjRs = (from user in haszjlist where user.jpName == tmpItem.jpName && user.jxName == tmpItem.jxName select user).ToArray();
                int tmpSYNum = 0;
                if (thiszjRs != null)
                {
                    tmpSYNum = MyCommFun.Obj2Int(tmpItem.jpRealNum) - thiszjRs.Count;
                }
                if (tmpSYNum <= 0)
                {
                    continue;
                }
                for (int j = 0; j < tmpSYNum; j++)
                {
                    stmpItem = new Model.wx_dzpAwardItem();
                    stmpItem.jpName = tmpItem.jpName;
                    stmpItem.jxName = tmpItem.jxName;
                    stmpItem.sort_id = tmpItem.sort_id;
                    zjItemlist.Add(stmpItem);
                }
            }
            Random rd = new Random((int)DateTime.Now.Ticks);
            int jpIndex = rd.Next(0, zjItemlist.Count);//从0到zjItemlist.Count里随机出一个值
            return zjItemlist[jpIndex];
        }
        /// 
        /// 判断该用户的抽奖次数
        /// 
        /// 
        /// 
        private int personCJTimes(string openid, int aid)
        {
            int times = 0;
            times = utbll.GetRecordCount("actId=" + aid + " and openid='" + openid + "'");
            return times;
        }
        /// 
        /// 判断今天是否已经超出抽奖次数
        /// todayTTTimes:能抽奖的总次数
        /// 
        /// 
        /// 每天的抽奖总次数
        /// 
        private bool isTodayOverSum(int aid, string openid, int todayTTTimes)
        {
            if (todayTTTimes <= 0)
            {
                return true;
            }
            Model.wx_dzpUsersTemp model = new Model.wx_dzpUsersTemp();
            model.openid = openid;
            DateTime todaybegin = DateTime.Parse(DateTime.Now.ToShortDateString());
            DateTime mingtianBegin = todaybegin.AddDays(1);
            if (!utbll.ExistsOpenid(" actId=" + aid + "  and  openid='" + openid + "' and  createDate>='" + todaybegin + "' and createDate<'" + mingtianBegin + "'"))
            { //第一次,插入
                model.times = 1;
                model.createDate = DateTime.Now;
                model.openid = openid;
                model.actId = aid;
                utbll.Add(model);
                return false;
            }
            model = utbll.getModelByAidOpenid(aid, openid);
            if (model.times >= todayTTTimes)
            {
                return true;
            }
            else
            {
                model.times += 1;
                utbll.Update(model);
                return false;
            }
        }
        /// 
        /// 返回中奖序列号
        /// 
        /// 
        /// 
        public string Get_snumber(int aid)
        {
            Random rd = new Random((int)DateTime.Now.Ticks);
            int radNum = rd.Next(0, 9);//从0到9里随机出一个值
 
            return "SNdzp" + aid + "_" + MyCommFun.ConvertDateTimeInt(DateTime.Now) + radNum;
        }
        #endregion
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...