using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace dccdc.Models { public class DuanXinYanZheng { /// /// 主键 /// public int id { get; set; } /// /// 状态 /// public byte state { get; set; } /// /// 用户IP /// public string IP { get; set; } /// /// SessionID /// public string SessionID { get; set; } /// /// cookie /// public string cookie { get; set; } /// /// 验证码内容 /// public string smscode { get; set; } /// /// 发送时间 /// public DateTime sendtime { get; set; } /// /// 验证时间 /// public DateTime? YanZhengShiJian { get; set; } /// /// 验证有效期分钟 /// public int YanZhengYouXiaoQi { get; set; } /// /// 备注 /// public string bz { get; set; } /// /// 手机号 /// public string ShouJiHao { get; set; } } } /* * DAL.TJXContext cont = new DAL.TJXContext(); public Model.DuanXinYanZheng getYanZheng(string sessionid,string cookieid,string ip,string sjh) { var yz = cont.DuanXinYanZheng.Where(t => t.ShouJiHao == sjh && DbFunctions.DiffDays(DateTime.Now,t.sendtime)==0).Count(); if(yz>=5) { return new Model.DuanXinYanZheng { bz = "同一个手机号一天之内只能获取5次验证码!" }; } else { var yzm = new Model.DuanXinYanZheng { state = 0, cookie = cookieid, IP = ip, sendtime = DateTime.Now, SessionID = sessionid, ShouJiHao = sjh, YanZhengYouXiaoQi = 10, smscode = new Common.ValidateCode().CreateValidateCode(6) }; cont.DuanXinYanZheng.Add(yzm); cont.SaveChanges(); return yzm; } } public Model.DuanXinYanZheng getYZMById(int iyzmid) { //throw new NotImplementedException(); return cont.DuanXinYanZheng.FirstOrDefault(t => t.id == iyzmid); } public void YanZhenged(Model.DuanXinYanZheng yzm) { //throw new NotImplementedException(); var y = cont.DuanXinYanZheng.First(t => t.id == yzm.id); y.state = 1; y.YanZhengShiJian = DateTime.Now; cont.SaveChanges(); } public void Log(DuanXinJiLu dxyz) { //throw new NotImplementedException(); //var cont = new DAL.TJXContext(); dxyz.SendTime = DateTime.Now; cont.DuanXinJiLu.Add(dxyz); cont.SaveChanges(); } [HttpPost] public JsonResult getShouJiYanZhengMa(string sjh) { if (System.Text.RegularExpressions.Regex.IsMatch(sjh, "^1[3|4|5|7|8]\\d{9}$")) { var dxyz = new BLL.DuanXinYanZheng(); var hybll = new BLL.HuiYuan(); var hy = hybll.getHuiYuanBySJH(sjh); if (hy != null) { return Json(new OperationResult { State = 0, Message = "当前手机号已经注册过不能重复注册!" }); } string cookieid = Guid.NewGuid().ToString();// Request.Cookies["clientid"].Value; var yzm = dxyz.getYanZheng(Session.SessionID, cookieid, Request.UserHostAddress, sjh); if (yzm.id == 0) { return Json(new OperationResult { State = 0, Message = yzm.bz }); } else { string username = System.Configuration.ConfigurationManager.AppSettings["smsusername"]; string userpassword = System.Configuration.ConfigurationManager.AppSettings["smspassword"]; string smsurl = System.Configuration.ConfigurationManager.AppSettings["smsurl"]; string yznr = "你好,欢迎你注册天瑞体检中心会员,你的验证码是:" + yzm.smscode + "。有效期10分钟。回TD退订【天瑞体检】"; //var zysms = new zyer.smsservice.SmsServiceSoapClient("SmsServiceSoap"); //var smsjg = zysms.SendEx(username, userpassword, "808", sjh, "", yznr); var fz = Session["FenZhan"] as Model.FenZhan; Common.SendMsg.Send(sjh, yznr, fz.id); return Json(new OperationResult { State = 1, Message = yzm.id.ToString() }); } } else { return Json(new OperationResult { State = 0, Message = "请输入正确的手机号码!" }); } } [HttpPost] public JsonResult saveHuiYuan(string sjh, string inyzm, string yzmid, string mm, string mmyzm) { if (Session["ValidateCode"].ToString() != mmyzm) { return Json(new { State = 0, Message = "验证码不正确!" }); } var yzmbll = new BLL.DuanXinYanZheng(); int iyzmid; int.TryParse(yzmid, out iyzmid); var yzm = yzmbll.getYZMById(iyzmid); if (yzm == null) { return Json(new { State = 0, Message = "手机验证码不正确!" }); } if (yzm.ShouJiHao != sjh) { return Json(new { State = 0, Message = "手机号码和获取验证码的手机号码不一致!" }); } if ((DateTime.Now - yzm.sendtime).TotalMinutes > yzm.YanZhengYouXiaoQi) { return Json(new { State = 0, Message = "验证码已经超过有效期!" }); } if (yzm.state != 0) { return Json(new { State = 0, Message = "验证码已经使用不能重复验证!" }); } if (yzm.smscode != inyzm) { return Json(new { State = 0, Message = "手机验证码不正确!" }); } yzmbll.YanZhenged(yzm); var hybll = new BLL.HuiYuan(); var h = hybll.getHuiYuanBySJH(sjh); if (h != null) { return Json(new { State = 0, Message = "手机号已经注册不能继续使用!" }); } var hy = new Model.HuiYuan(); hy.MiMa = mm; hy.ShouJiHao = sjh; hy.regIP = Request.UserHostAddress; hy.regShiJian = DateTime.Now; hy.ZhuiHouDengLuShiJian = DateTime.Now; //var hybll = new BLL.HuiYuan(); hy.state = 1; OperationResult or = hybll.save(hy); return Json(or); } */