Exemplo n.º 1
0
        public HttpResponseMessage AddRecentProduct(int userId, int productId)
        {
            var httpResponse = new HttpResponseMessage();

            try
            {
                using (var recentEntity = new RepositoryDataAccessLayer <RecentEntity>())
                {
                    var isItemAlreadyExists =
                        recentEntity.FindBy(a => a.UserId == userId && a.ProductId == productId).Any();
                    if (!isItemAlreadyExists)
                    {
                        var recent = new RecentEntity
                        {
                            UserId     = userId,
                            ProductId  = productId,
                            ViewedDate = DateTime.Now
                        };
                        recentEntity.Add(recent);
                        return(httpResponse = Request.CreateResponse(HttpStatusCode.OK, new Status {
                            IsSuccess = true
                        }));
                    }
                }
            }
            catch (Exception ex)
            {
                httpResponse = Request.CreateResponse(HttpStatusCode.OK,
                                                      new Status {
                    IsSuccess = false, Message = ex.Message
                });
            }

            return(httpResponse);
        }
        public HttpResponseMessage SignUp(User user)
        {
            var httpResponse = new HttpResponseMessage();

            try
            {
                using (var userEntity = new RepositoryDataAccessLayer <UserEntity>())
                {
                    var isEmailAlreadyRegistered = userEntity.FindBy(a =>
                                                                     a.EmailId.Trim().ToLower() == user.EmailId.Trim().ToLower() && !a.IsDeleted).Any();
                    if (isEmailAlreadyRegistered)
                    {
                        return(httpResponse = Request.CreateResponse(HttpStatusCode.OK,
                                                                     new Status {
                            IsSuccess = false, Message = "This email is already registered."
                        }));
                    }

                    if (user != null)
                    {
                        var newEntity = new UserEntity
                        {
                            Name    = user.Name,
                            EmailId = user.EmailId,
                            Salt    = GenerateSalt(8)
                        };
                        if (!string.IsNullOrEmpty(newEntity.Salt))
                        {
                            newEntity.Password = EncryptPassword(user.Password, newEntity.Salt);
                        }
                        newEntity.IsDeleted   = false;
                        newEntity.CreatedDate = DateTime.Now;
                        newEntity.UpdatedDate = DateTime.Now;
                        userEntity.Add(newEntity);
                        httpResponse = Request.CreateResponse(HttpStatusCode.OK,
                                                              new Status {
                            IsSuccess = true, Message = "Signed up successfully"
                        });
                    }
                }
            }
            catch (Exception ex)
            {
                httpResponse = Request.CreateResponse(HttpStatusCode.OK,
                                                      new Status {
                    IsSuccess = false, Message = ex.Message
                });
            }

            return(httpResponse);
        }
        public HttpResponseMessage AddOrUpdateUserWishlist(int userId, int productId, bool isFavorite)
        {
            var httpResponse = new HttpResponseMessage();

            try
            {
                using (var userWishlistEntity = new RepositoryDataAccessLayer <UserWishlistEntity>())
                {
                    var userWishlist = userWishlistEntity.FindBy(a => a.UserId == userId && a.ProductId == productId)
                                       .FirstOrDefault();
                    if (userWishlist != null)
                    {
                        userWishlist.IsFavorite = isFavorite;
                        userWishlistEntity.Update(userWishlist);
                        return(httpResponse = Request.CreateResponse(HttpStatusCode.OK, new Status {
                            IsSuccess = true
                        }));
                    }

                    var newProduct = new UserWishlistEntity
                    {
                        UserId     = userId,
                        ProductId  = productId,
                        IsFavorite = true
                    };
                    userWishlistEntity.Add(newProduct);
                    return(httpResponse = Request.CreateResponse(HttpStatusCode.OK, new Status {
                        IsSuccess = true
                    }));
                }
            }
            catch (Exception ex)
            {
                httpResponse = Request.CreateResponse(HttpStatusCode.OK,
                                                      new Status {
                    IsSuccess = false, Message = ex.Message
                });
            }

            return(httpResponse);
        }
Exemplo n.º 4
0
        public HttpResponseMessage AddOrderedItem(int userId, int productId)
        {
            HttpResponseMessage response = null;

            try
            {
                using (var userCartEntity = new RepositoryDataAccessLayer <MyOrderEntity>())
                {
                    var isProductAlreadyAdded = userCartEntity
                                                .FindBy(a => a.UserId == userId && a.ProductId == productId && !a.IsDeleted).Any();
                    if (!isProductAlreadyAdded)
                    {
                        var userCart = new MyOrderEntity()
                        {
                            UserId        = userId,
                            TotalQuantity = 1,
                            AddedDateTime = DateTime.Now,
                            IsDeleted     = false,
                            ProductId     = productId
                        };
                        userCartEntity.Add(userCart);
                        return(response = Request.CreateResponse(HttpStatusCode.OK,
                                                                 new Status {
                            IsSuccess = true, Message = "Item added to cart successfully."
                        }));
                    }
                }
            }
            catch (Exception ex)
            {
                response = Request.CreateResponse(HttpStatusCode.OK,
                                                  new Status {
                    IsSuccess = false, Message = ex.Message
                });
            }

            return(response);
        }