tijian_tieying/web/dccdc.Models/DuanXinYanZheng.cs
2025-02-20 12:14:39 +08:00

191 lines
7.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace dccdc.Models
{
public class DuanXinYanZheng
{
/// <summary>
/// 主键
/// </summary>
public int id { get; set; }
/// <summary>
/// 状态
/// </summary>
public byte state { get; set; }
/// <summary>
/// 用户IP
/// </summary>
public string IP { get; set; }
/// <summary>
/// SessionID
/// </summary>
public string SessionID { get; set; }
/// <summary>
/// cookie
/// </summary>
public string cookie { get; set; }
/// <summary>
/// 验证码内容
/// </summary>
public string smscode { get; set; }
/// <summary>
/// 发送时间
/// </summary>
public DateTime sendtime { get; set; }
/// <summary>
/// 验证时间
/// </summary>
public DateTime? YanZhengShiJian { get; set; }
/// <summary>
/// 验证有效期分钟
/// </summary>
public int YanZhengYouXiaoQi { get; set; }
/// <summary>
/// 备注
/// </summary>
public string bz { get; set; }
/// <summary>
/// 手机号
/// </summary>
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);
}
*/