Exemple #1
0
        public async Task <JsonResult <bool> > RegisterShopMall([FromBody] RegisterParameterModel obj)
        {
            var result = new JsonResult <bool>()
            {
                ret     = 0,
                Success = true
            };

            #region 参数校验
            if (string.IsNullOrWhiteSpace(obj.loginName) || string.IsNullOrWhiteSpace(obj.code) || string.IsNullOrWhiteSpace(obj.passWord) || string.IsNullOrWhiteSpace(obj.repass))
            {
                result.ret     = 1;
                result.Result  = "请填写完整信息!";
                result.Content = false;
                return(result);
            }
            if (obj.loginName.Length >= 20)
            {
                result.ret     = 1;
                result.Result  = "用户名太长!";
                result.Content = false;
                return(result);
            }
            if (!obj.passWord.Equals(obj.repass) && obj.repass.Length >= 20)
            {
                result.ret     = 1;
                result.Result  = "输入的密码不一致,或密码过长!";
                result.Content = false;
                return(result);
            }
            #endregion

            var isAny = await _userServices.IsAny(t => t.loginName == obj.loginName);

            if (isAny)
            {
                result.ret     = 1;
                result.Result  = "已存在该用户名!";
                result.Content = false;
                return(result);
            }
            var codeAny = await _CodeServices.QueryByLately(t => t.code == obj.code && t.codeType == 1 && t.state == 0);

            if (codeAny == null || !Utils.CompanyDate(codeAny.creatTime.AddMinutes(codeAny.effectMinutes), DateTime.Now).Equals(">"))
            {
                result.ret     = 1;
                result.Result  = "验证码不存在或已失效!";
                result.Content = false;
                return(result);
            }

            var           passkey   = RandomHelper.GetRandomString(6, true, true, true, true, "");
            var           passvalue = MD5Helper.MD5Encrypt32($"{obj.repass}{passkey}");
            Shop_sys_user _user     = new Shop_sys_user()
            {
                birthday     = DateTime.Now,
                creatTime    = DateTime.Now,
                Email        = obj.loginName,
                LastLogin    = DateTime.Now,
                loginName    = obj.loginName,
                headPortrait = "",
                LoginNum     = 0,
                Mobile       = "",
                nickName     = obj.loginName,
                passkey      = passkey,
                passValue    = passvalue,
                qq_code      = "",
                realName     = obj.loginName,
                regRemarks   = "",
                sex          = 1,
                uStatus      = 1,
                wx_openid    = "",
            };
            var uid = await _userServices.Add(_user);

            if (uid != 0)
            {
                //插入
                await _User_LogServices.AddUserLogAsync(uid, 2, $"{obj.loginName}注册用户", obj.source, true);

                await _CodeServices.updateCodeStatus(obj.code, codeAny.toName);

                result.ret     = 0;
                result.Result  = "注册成功!";
                result.Content = true;
            }
            else
            {
                result.ret     = 3;
                result.Result  = "系统繁忙,稍后再试!";
                result.Content = false;
            }
            return(result);
        }