public JsonResult VerificationOTP([FromBody] VerifyModel model)
        {
            var user = _smssender.VerificationOTPLogin(model.otp);

            if (user == null)
            {
                return(Json(JsonResultResponse.ResponseFail("Verification failed. Login failed.")));
            }
            return(Json(JsonResultResponse.ResponseSuccess(user)));
        }
Exemplo n.º 2
0
        public JsonResult filterUserByRole(string role)
        {
            var search = _user.filterUserByRole(role);

            if (search == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }
            return(Json(JsonResultResponse.ResponseSuccess(search)));
        }
Exemplo n.º 3
0
        public JsonResult GetReviewByIdProduct(Review review)
        {
            var search = _review.GetReviewByIdProduct(review.ProductId);

            if (search == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }
            return(Json(JsonResultResponse.ResponseSuccess(search)));
        }
Exemplo n.º 4
0
        public JsonResult SearchUser(string name, string phone)
        {
            var search = _user.searchUser(name, phone);

            if (search == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }

            return(Json(JsonResultResponse.ResponseSuccess(search)));
        }
Exemplo n.º 5
0
        public JsonResult GetUser(int id)
        {
            var user = _user.GetUser(id);

            if (user == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }

            return(Json(JsonResultResponse.ResponseSuccess(user)));
        }
 public JsonResult VerificationOTP([FromBody] VerifyModel model)
 {
     if (ModelState.IsValid)
     {
         if (_optsender.VerificationOTP(model.otp) == true)
         {
             return(Json(JsonResultResponse.ResponseChange("Verification successed.")));
         }
     }
     return(Json(JsonResultResponse.ResponseFail("Verification failed.")));
 }
 public JsonResult SenderOTP([FromBody] OTPModel model)
 {
     if (ModelState.IsValid)
     {
         if (_optsender.OTPSenderUser(model.phone) == true)
         {
             return(Json(JsonResultResponse.ResponseChange("OTP sent successed.")));
         }
     }
     return(Json(JsonResultResponse.ResponseFail("OTP sent failed.")));
 }
Exemplo n.º 8
0
        public JsonResult GetReview(int id)
        {
            var review = _review.GetReview(id);

            if (review == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }

            return(Json(JsonResultResponse.ResponseSuccess(review)));
        }
Exemplo n.º 9
0
 public JsonResult CreateReview(Review review)
 {
     if (ModelState.IsValid)
     {
         if (_review.CrateReview(review) == true)
         {
             return(Json(JsonResultResponse.ResponseSuccess(review)));
         }
     }
     return(Json(JsonResultResponse.ResponseFail("User reviewed. Not Comment")));
 }
Exemplo n.º 10
0
        public JsonResult DeleteReview(int id)
        {
            var review = _review.GetReview(id);

            if (review == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }
            _review.DeleteReview(review);
            return(Json(JsonResultResponse.ResponseChange("Delete successed.")));
        }
Exemplo n.º 11
0
        public JsonResult GetProduct(int id)
        {
            var product = _product.GetProduct(id);

            if (product == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }

            return(Json(JsonResultResponse.ResponseSuccess(product)));
        }
Exemplo n.º 12
0
        public JsonResult DeleteUser(int id)
        {
            var user = _user.GetUser(id);

            if (user == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }
            _user.DeleteUser(user);
            return(Json(JsonResultResponse.ResponseChange("Delete successed.")));
        }
Exemplo n.º 13
0
        public JsonResult DeleteProduct(int id)
        {
            var product = _product.GetProduct(id);

            if (product == null)
            {
                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }
            _product.DeleteProduct(product);
            return(Json(JsonResultResponse.ResponseChange("Delete successed.")));
        }
Exemplo n.º 14
0
 public JsonResult CreateUser(User user)
 {
     if (ModelState.IsValid)
     {
         if (_user.CheckExistProperties(user.user_email, user.user_username, user.user_phone) == true)
         {
             _user.CreateUser(user);
             return(Json(JsonResultResponse.ResponseSuccess(user)));
         }
     }
     return(Json(JsonResultResponse.ResponseFail("Input data already exists.")));
 }
Exemplo n.º 15
0
 public JsonResult CreateProduct(Product product)
 {
     if (ModelState.IsValid)
     {
         if (_product.CheckExistProperties(product.product_name) == true)
         {
             _product.CreateProduct(product);
             return(Json(JsonResultResponse.ResponseSuccess(product)));
         }
     }
     return(Json(JsonResultResponse.ResponseFail("Input data already exists.")));
 }
        public async Task <JsonResult> Login([FromBody] AuthenticateModel login)
        {
            //check user login
            var user = _authen.Login(login.username, login.password);

            if (user == null)
            {
                return(Json(JsonResultResponse.ResponseFail("Username or password incorrect.")));
            }
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseSuccess(user)));
        }
Exemplo n.º 17
0
        public async Task <JsonResult> PaymentByCreditCard(Cart cart)
        {
            var result = _cart.PaymentByCreditCard(cart);

            if (result == false)
            {
                await Task.Delay(1000);

                return(Json(JsonResultResponse.ResponseFail("Send otp failed.")));
            }
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseChange("Send otp successed.")));
        }
Exemplo n.º 18
0
        public async Task <JsonResult> PayOnDelivery([FromBody] VerifyModel verify)
        {
            var result = _cart.PayOnDelivery(verify.UserId);

            if (result == false)
            {
                await Task.Delay(1000);

                return(Json(JsonResultResponse.ResponseFail("Payment failed.")));
            }
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseChange("Payment successed.")));
        }
Exemplo n.º 19
0
        public async Task <JsonResult> TotalValuePayment(Cart cart)
        {
            var result = _cart.TotalValuePayment(cart.UserId);

            if (result == 0)
            {
                await Task.Delay(1000);

                return(Json(JsonResultResponse.ResponseFail("Payment not exist.")));
            }
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseSuccess(result)));
        }
Exemplo n.º 20
0
        public async Task <JsonResult> GetListCartByIdUser(Cart cart)
        {
            var result = _cart.GetListCartByIdUser(cart);

            if (result == null)
            {
                await Task.Delay(1000);

                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseSuccess(result)));
        }
Exemplo n.º 21
0
        public async Task <JsonResult> VerificationPaymentByOTP([FromBody] VerifyModel verify)
        {
            var result = _cart.VerificationPaymentByOTP(verify.otp, verify.UserId);

            if (result == false)
            {
                await Task.Delay(1000);

                return(Json(JsonResultResponse.ResponseFail("Verify failed.")));
            }
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseChange("Verify otp successed.")));
        }
Exemplo n.º 22
0
        public async Task <JsonResult> DeleteCart(int id)
        {
            var result = _cart.GetCart(id);

            if (result == null)
            {
                await Task.Delay(1000);

                return(Json(JsonResultResponse.ResponseFail("No matching results were found.")));
            }
            _cart.DeleteCart(result);
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseChange("Delete successed.")));
        }
Exemplo n.º 23
0
        public async Task <JsonResult> CreateCart(Cart cart)
        {
            if (ModelState.IsValid)
            {
                if (_cart.CheckQuantityCart(cart.Quantity, cart.UserId, cart.ProductId.ToString()) == true)
                {
                    _cart.AddCart(cart);
                    await Task.Delay(1000);

                    return(Json(JsonResultResponse.ResponseSuccess(cart)));
                }
            }
            await Task.Delay(1000);

            return(Json(JsonResultResponse.ResponseFail("Input data already exists.")));
        }
        public async Task <JsonResult> Revoke([FromBody] TokenRequest tokenRequest)
        {
            var storedRefreshToken = _db.RefreshTokens.FirstOrDefault(x => x.Token == tokenRequest.RefreshToken);

            string username = User.Identity.Name;
            var    user     = _db.Users.SingleOrDefault(u => u.user_username == username);

            if (user == null)
            {
                return(Json(JsonResultResponse.ResponseFail("Revoke failed.")));
            }

            user.user_refreshToken       = null;
            user.user_token              = null;
            storedRefreshToken.IsRevoked = true;

            await _db.SaveChangesAsync();

            await Task.Delay(500);

            return(Json(JsonResultResponse.ResponseChange("Revoke successed.")));
        }
        private async Task <JsonResult> VerifyToken(TokenRequest tokenRequest)
        {
            var principal = GetPrincipalFromExpiredToken(tokenRequest.Token);

            string nameUnique = principal.Identity.Name;

            var identityName = _db.Users.SingleOrDefault(u => u.user_username == nameUnique);

            if (identityName == null)
            {
                throw new SecurityTokenException("Invalid token");
            }

            try
            {
                // Check the refresh token we got if its saved in the db
                var storedRefreshToken = _db.RefreshTokens.FirstOrDefault(x => x.Token == tokenRequest.RefreshToken);

                //Check the refresh is null
                if (storedRefreshToken == null)
                {
                    return(Json(JsonResultResponse.ResponseFail("Refresh token doesn't exist.")));
                }

                // Check the date of the saved token if it has expired
                if (DateTime.UtcNow > storedRefreshToken.ExpiryDate)
                {
                    return(Json(JsonResultResponse.ResponseFail("Refresh token has expired, user needs to relogin.")));
                }

                // check if the refresh token has been used
                if (storedRefreshToken.IsUsed)
                {
                    return(Json(JsonResultResponse.ResponseFail("Refresh token has been used.")));
                }

                // Check if the token is revoked
                if (storedRefreshToken.IsRevoked)
                {
                    return(Json(JsonResultResponse.ResponseFail("Token has been revoked.")));
                }

                storedRefreshToken.IsUsed = true;
                _db.RefreshTokens.Update(storedRefreshToken);
                await _db.SaveChangesAsync();

                var userUpdate = _db.Users.Find(storedRefreshToken.UserId);
                var user       = _authen.GenerateJwtToken(userUpdate);

                string refreshtoken = _authen.GenerateRefreshToken(userUpdate);

                return(Json(new
                {
                    accessToken = user.user_token,
                    refreshToken = refreshtoken
                }));
            }
            catch (Exception)
            {
                throw new SecurityTokenException("Invalid token");
            }
        }