示例#1
0
        public string VerifyMobile(VerifyMobileModel verifyMobileModel)
        {
            var user = _db.MstUsers.Where(x => x.IsActive && x.Email.Equals(verifyMobileModel.Mobile) && x.EmailOtp == verifyMobileModel.OTP).FirstOrDefault();

            if (user == null)
            {
                return("Invalid OTP");
            }
            else
            {
                user.IsEmailVarified  = true;
                user.ModifiedBy       = user.UserId;
                user.ModifiedDate     = DateTime.Now;
                _db.Entry(user).State = EntityState.Modified;
                return(_db.SaveChanges() > 0 ? "verified" : "notverified");
            }
        }
        public GenericOperationResult <LoginReturnDto> VerifyPhoneNumber(VerifyMobileModel model)
        {
            var result = new GenericOperationResult <LoginReturnDto>();

            return(userService.VerifyUserPhone(model));
        }
示例#3
0
        public string VerifyMobile([FromBody] VerifyMobileModel verifyMobileModel)
        {
            SignupDetails signupDetails = new SignupDetails();

            return(signupDetails.VerifyMobile(verifyMobileModel));
        }
示例#4
0
        public GenericOperationResult <LoginReturnDto> VerifyUserPhone(VerifyMobileModel model)
        {
            var result    = new GenericOperationResult <LoginReturnDto>();
            var validator = new VerifyMobileValidator();
            var valid     = validator.Validate(model);

            if (!valid.IsValid)
            {
                result.Messages = valid.Errors.Select(e => e.ErrorMessage).ToList();
                result.Status   = OperationResultStatusEnum.Validation;
                return(result);
            }
            if (model.OTP == "0000")
            {
                try
                {
                    if (httpContext.HttpContext.Session.GetString(model.PhoneNumber) == null)
                    {
                        result.Messages.Add("Invalid phone number Input");
                        result.Status = OperationResultStatusEnum.Exception;
                        return(result);
                    }

                    var user   = httpContext.HttpContext.Session.GetString(model.PhoneNumber);
                    var myUser = JsonConvert.DeserializeObject <VerifyUserModel>(user);
                    if (myUser != null)
                    {
                        LoginDto loginData = new LoginDto
                        {
                            UserName = myUser.User.UserName,
                            Password = myUser.Password
                        };
                        httpContext.HttpContext.Session.Remove(model.PhoneNumber);
                        unitOfWork.UserRepository.Create(myUser.User);
                        unitOfWork.SaveChanges();
                        var res = LoginUser(loginData);
                        result.Data = new LoginReturnDto {
                            Token = res.Data.Token
                        };
                        result.Status = OperationResultStatusEnum.Succeeded;
                        return(result);
                    }
                    result.Status = OperationResultStatusEnum.Failed;
                    return(result);
                }
                catch (ArgumentNullException e)
                {
                    throw new BusinessException("Argument is null ", e);
                }
                catch (SqlException e)
                {
                    throw new BusinessException("Database error ", e);
                }
                catch (NullReferenceException e)
                {
                    throw new BusinessException("Object Refrence is null ", e);
                }
                catch (Exception e)
                {
                    throw new BusinessException("error Occured ", e);
                }
            }
            result.Status = OperationResultStatusEnum.Failed;
            result.Messages.Add("Invalid OTP");
            return(result);
        }