模仿南航登录

public ActionResult LoginCode(string Account, string Password)
{// Cell-Phone number/Mailbox/membership number/ID number can be login.
将账号密码去空格
string Acc = Account.Trim(), Pass = Password.Trim();
初始化消息对象
ReturnJson MSG = new ReturnJson();
MSG.Code = 505;
MSG.State = false;
判断账号是否为空
// Determine if this is empty.
if (String.IsNullOrEmpty(Acc))
{
MSG.messages = “账号不能为空!”;
return Json(MSG, JsonRequestBehavior.AllowGet);
}
判断密码是否为空
if (String.IsNullOrEmpty(Pass))
{
MSG.messages = “密码不能为空!”;
return Json(MSG, JsonRequestBehavior.AllowGet);
}
账号密码都不为空时,将密码加密
string AESPass = AESEncryptHelper.AESEncrypt(Pass);
判断账号是否有@符号,如果有将它视为邮箱
if (Account.IndexOf("@") > -1)
{
try
{
通过邮箱查询,如果没有邮箱提示"邮箱错误!"
var User = (from tbCertificationMsg in MyModels.PW_CertificationMsg
join tbUser in MyModels.PW_User on tbCertificationMsg.User_id equals tbUser.User_id
where tbCertificationMsg.UserMailbox == Account
select tbUser).Single();

通过该邮箱的密码和加密的密码进行比较
if (User.User_password.Equals(AESPass))
{
登录成功,用Session保存用户信息
Session[“VerifyLogin”] = User;
MSG.Code = 200;
MSG.State = true;
MSG.messages = “登录成功!”;
}
else
{
MSG.messages = “密码错误!”;
}
}
catch (Exception e)
{
MSG.messages = “邮箱错误!”;
}
}
else
{
try
{
//手机号登录
由于手机号和密码同在一张表,所以只要通过手机号查询一张表
PW_User User = MyModels.PW_User.Where(m => m.User_phone == Account).Single();
if (User.User_password.Equals(AESPass))
{
Session[“VerifyLogin”] = User;
MSG.Code = 200;
MSG.State = true;
MSG.messages = “登录成功!”;
}
else
{
MSG.messages = “密码错误!”;
}
}
catch (Exception e)
{
try
{
通过卡号查找
var User = (from tbCertificationMsg in MyModels.PW_CertificationMsg
join tbUser in MyModels.PW_User on tbCertificationMsg.User_id equals tbUser.User_id
where tbCertificationMsg.UserNumber == Account
select tbUser).Single();

                    if (User.User_password.Equals(_AESPass_))
                    {
                        Session["VerifyLogin"] = User;
                        MSG.Code = 200;
                        MSG.State = true;
                        MSG.messages = "登录成功!";
                    }
                    else
                    {
                        MSG.messages = "密码错误!";
                    }
                }
                catch (Exception a)
                {

通过证件查找(不考虑类型)
var User = (from tbCertificationMsg in MyModels.PW_CertificationMsg
join tbUser in MyModels.PW_User on tbCertificationMsg.User_id equals tbUser.User_id
join tbCredentials in MyModels.PW_Credentials on tbCertificationMsg.Credentials_id equals tbCredentials.Credentials_id
where tbCredentials.CredentialsCode == Account
select tbUser).Single();
if (User.User_password.Equals(AESPass))
{
Session[“VerifyLogin”] = User;
MSG.Code = 200;
MSG.State = true;
MSG.messages = “登录成功!”;
}
else
{
MSG.messages = “密码错误!”;
}
}
}
}
最后返回状态
return Json(MSG, JsonRequestBehavior.AllowGet); }
证件登录
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值