public static string ERNIEChoujiang(ERNIE_Record recordinfo) { //先产生个随机码超出范围的随机号,后面根据活动设定重新获得随机号,防止没有查询到活动时无返回随机码 Random ra = new Random(); var code = ra.Next(98888888, 99888888); try { //先判断活动 var erniedate = MemberERNIEData.ERNIEGetActById(recordinfo.ERNIE_id); if (erniedate != null) { if (erniedate.Runstate == 1 && erniedate.Online == 1 && erniedate.ERNIE_star < DateTime.Now) { //运行中,在起始时间内 if (erniedate.ERNIE_end.AddDays(1) < DateTime.Now) //超出日期则显示活动已经结束,时间按结束日期的23:59:59秒 { return(JsonConvert.SerializeObject(new { error = "此次活动已经结束", sn = code, success = false })); } code = ra.Next((98888888 - erniedate.ERNIE_RateNum), 98888888); recordinfo.ERNIE_code = code; //赋值随机码 recordinfo.Ip = CommonFunc.GetRealIP(); //记录IP recordinfo.ERNIE_time = DateTime.Now; //记录时间 //读取用户信息 B2bCrmData crmmodel = new B2bCrmData(); B2b_crm memberinfo = crmmodel.b2b_crmH5(recordinfo.ERNIE_openid, erniedate.Com_id); if (memberinfo != null) { recordinfo.ERNIE_uid = memberinfo.Id; //读取用户ID,必须是已关注用户才能抽奖 var ERNIE_Limit = erniedate.ERNIE_Limit; //抽奖频率 var Limit_Num = erniedate.Limit_Num; //抽奖次数 var searchdate = MemberERNIEData.SearchChoujiang(recordinfo, ERNIE_Limit); //查询是否抽过奖 if (searchdate < Limit_Num) { var insertdate = MemberERNIEData.InsertChoujiang(recordinfo);//插入抽奖 //判断是否中奖。可以重复,按指定 var panduanchoujiang = MemberERNIEData.ChoujiangSearchAwardcode(insertdate, recordinfo.ERNIE_id); if (panduanchoujiang > 0) { //如果中奖, //处理中奖,返回中奖级别 var zhongjiang = MemberERNIEData.ZhongjiangAwardcode(insertdate, panduanchoujiang, memberinfo.Id); if (zhongjiang > 0) { return(JsonConvert.SerializeObject(new { error = "", insert_id = insertdate, success = true, prizetype = zhongjiang, sn = code })); } } } else { return(JsonConvert.SerializeObject(new { error = "您已经参加过抽奖活动", sn = code, success = false })); } } else { return(JsonConvert.SerializeObject(new { error = "只有关注微信用户才能参与抽奖", sn = code, success = false })); } } else { return(JsonConvert.SerializeObject(new { error = "活动尚未开始,请稍后再关注", sn = code, success = false })); } } return(JsonConvert.SerializeObject(new { error = "", sn = code, success = false })); } catch (Exception ex) { return(JsonConvert.SerializeObject(new { error = "", sn = code, success = false })); throw; } }