public LacesResponse ProcessTransaction(ProcessTransactionRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.User.User buyer = new LacesDataModel.User.User(request.BuyerId); LacesDataModel.User.User seller = new LacesDataModel.User.User(request.SellerId); LacesDataModel.Product.Product product = new LacesDataModel.Product.Product(request.ProductId); Transaction trans = new Transaction(); trans.Amount = request.Amount; trans.BuyerId = buyer.UserId; trans.ProductId = product.ProductId; trans.ReferenceNumber = request.ReferenceNumber; trans.SellerId = seller.UserId; trans.CreatedDate = DateTime.Now; if (trans.Add()) { product.ProductStatusId = (int)ProductStatusOptions.Sold; product.Update(); response.Success = true; response.Message = "Transaction data saved succesfully."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find user") || ex.Message.Contains("find product")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse UnfollowUser(UserFollowRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.User.User followedUser = new LacesDataModel.User.User(request.FollowedUserId); LacesDataModel.User.User followingUser = new LacesDataModel.User.User(request.UserId); UserFollow follow = new UserFollow(); follow.LoadByUserids(followingUser.UserId, followedUser.UserId); if (follow.UserFollowId > 0 && follow.Delete()) { followedUser.UsersFollowing--; followedUser.Update(); followingUser.UsersFollowed--; followingUser.Update(); response.Success = true; response.Message = "Operation completed successfully"; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response.Success = false; if (ex.Message.Contains("find user")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse LikeProduct(ProductRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { // Confirm user and product exist LacesDataModel.User.User user = new LacesDataModel.User.User(request.UserId); LacesDataModel.Product.Product product = new LacesDataModel.Product.Product(request.ProductId); UserLike like = new UserLike(); like.UserId = user.UserId; like.ProductId = product.ProductId; like.CreatedDate = DateTime.Now; if (like.Add()) { response.Success = true; response.Message = "Operation completed."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find user") || ex.Message.Contains("find product") || ex.Message.Contains("find like")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse AddTag(AddTagRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.Product.Product product = new LacesDataModel.Product.Product(request.ProductId); // Verify product exists LacesDataModel.Product.Tag tag = new LacesDataModel.Product.Tag(); tag.ProductId = product.ProductId; tag.Description = request.Description; if (tag.Add()) { response.Success = true; response.Message = "Tag succesfully added."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find product")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse UpdateComment(UpdateCommentRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { Comment comment = new Comment(request.CommentId); comment.Text = request.Text; comment.UpdatedDate = DateTime.Now; if (comment.Update()) { response.Success = true; response.Message = "Comment updated succesfully."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find comment")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse AddComment(AddCommentRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { Comment comment = new Comment(); // Confirm user and product exist LacesDataModel.User.User user = new LacesDataModel.User.User(request.UserId); LacesDataModel.Product.Product product = new LacesDataModel.Product.Product(request.ProductId); comment.CreatedDate = DateTime.Now; comment.ProductId = product.ProductId; comment.Text = request.Text; comment.UpdatedDate = DateTime.Now; comment.UserId = user.UserId; if (comment.Add()) { response.Success = true; response.Message = "Comment added succesfully."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch { response = new LacesResponse(); response.Success = false; response.Message = "An unexpected error has occurred; please verify the format of your request."; } return(response); }
public LacesResponse UpdateAlertCheckTime(LacesRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.User.User user = new LacesDataModel.User.User(request.UserId); user.LastAlertCheck = DateTime.Now; if (user.Update()) { response.Success = true; response.Message = "Operation complete."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find user")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse RemoveProduct(ProductRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.Product.Product product = new LacesDataModel.Product.Product(request.ProductId); product.ProductStatusId = (int)ProductStatusOptions.Removed; if (product.Update()) { response.Success = true; response.Message = "Product succesfully removed."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find product")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse ChangeUserPassword(UpdatePasswordRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.User.User user = new LacesDataModel.User.User(request.UserId); user.Password = request.NewPassword; if (user.UpdatePassword(request.OldPassword)) { response.Success = true; response.Message = "Update complete."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response.Success = false; if (ex.Message.Contains("incorrect") || ex.Message.Contains("find user")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse RemoveLike(RemoveLikeRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { UserLike like = new UserLike(request.UserLikeId); if (like.Delete()) { response.Success = true; response.Message = "Operation completed."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response.Success = false; if (ex.Message.Contains("find like")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse RemoveFromInterestQueue(ProductRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { // Confirm user and product exist LacesDataModel.User.User user = new LacesDataModel.User.User(request.UserId); LacesDataModel.Product.Product product = new LacesDataModel.Product.Product(request.ProductId); UserInterestQueue userInterest = new UserInterestQueue(); userInterest.LoadByUserAndProductIds(user.UserId, product.ProductId); if (userInterest.UserInterestQueueId == 0) { userInterest.UserId = user.UserId; userInterest.ProductId = product.ProductId; userInterest.Interested = false; if (userInterest.Add()) { response.Success = true; response.Message = "Operation completed."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else if (userInterest.Interested == true) { userInterest.Interested = false; if (userInterest.Update()) { response.Success = true; response.Message = "Operation completed."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = true; response.Message = "Operation completed."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find user") || ex.Message.Contains("find product") || ex.Message.Contains("find like")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse UpdateProfileImage(AddImageRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.User.User user = new LacesDataModel.User.User(request.AssociatedEntityId); string fileName = user.UserName + "." + request.ImageInfo.FileFormat; string filePath = ConfigurationManager.AppSettings[Constants.APP_SETTING_USER_AVATAR_DIRECTORY] + fileName; File.WriteAllBytes(filePath, request.ImageInfo.ImageData); Image userAvatar = new Image(); bool success; if (userAvatar.LoadAvatarByUserId(user.UserId)) { userAvatar.FileFormat = request.ImageInfo.FileFormat; userAvatar.UpdatedDate = DateTime.Now; success = userAvatar.Update(); } else { userAvatar.AssociatedEntityId = user.UserId; userAvatar.FileFormat = request.ImageInfo.FileFormat; userAvatar.FileName = fileName; userAvatar.FilePath = filePath; userAvatar.ImageEntityTypeId = (int)ImageEntityTypeOptions.User; userAvatar.CreatedDate = DateTime.Now; userAvatar.UpdatedDate = DateTime.Now; success = userAvatar.Add(); } if (success) { response.Success = true; response.Message = "User profile picture succesfully updated."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response.Success = false; if (ex.Message.Contains("find user")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse FollowUser(UserFollowRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.User.User followedUser = new LacesDataModel.User.User(request.FollowedUserId); LacesDataModel.User.User followingUser = new LacesDataModel.User.User(request.UserId); UserFollow follow = new UserFollow(); follow.LoadByUserids(followingUser.UserId, followedUser.UserId); // Make sure follow does not already exist. if (follow.UserFollowId == 0) { follow.FollowedUserId = followedUser.UserId; follow.FollowingUserId = followingUser.UserId; follow.CreatedDate = DateTime.Now; if (follow.Add()) { followedUser.UsersFollowing++; followedUser.Update(); followingUser.UsersFollowed++; followingUser.Update(); response.Success = true; response.Message = "Operation completed successfully."; } else { response.Success = false; response.Message = "Failed to add user follow."; } } else { response.Success = true; response.Message = "User is already being followed."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response.Success = false; if (ex.Message.Contains("find user")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse UpdateUserInfo(UpdateUserInfoRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.User.User user = new LacesDataModel.User.User(request.UserId); bool changed = false; if (request.Description != null && request.Description != user.Description) { user.Description = request.Description; changed = true; } if (request.DisplayName != null && request.DisplayName != user.DisplayName) { user.DisplayName = request.DisplayName; changed = true; } if (changed) { if (user.Update()) { response.Success = true; response.Message = "User updated succesfully."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = true; response.Message = "No changes made."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find user")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }
public LacesResponse UpdateProduct(UpdateProductRequest request) { LacesResponse response = new LacesResponse(); try { if (request.SecurityString == ConfigurationManager.AppSettings[Constants.APP_SETTING_SECURITY_TOKEN]) { LacesDataModel.Product.Product product = new LacesDataModel.Product.Product(request.ProductId); if (product.SellerId == request.UserId) { bool changed = false; if (request.AskingPrice > 0) { product.AskingPrice = request.AskingPrice; changed = true; } if (request.Brand != null) { product.Brand = request.Brand; changed = true; } if (request.ConditionId > 0) { product.ConditionId = request.ConditionId; changed = true; } if (request.Description != null) { product.Description = request.Description; changed = true; } if (request.ProductName != null) { product.Name = request.ProductName; changed = true; } if (request.ProductStatusId > 0) { product.ProductStatusId = request.ProductStatusId; changed = true; } if (request.ProductTypeId > 0) { product.ProductTypeId = request.ProductTypeId; changed = true; } if (request.Size != null) { product.Size = request.Size; changed = true; } if (changed) { product.UpdatedDate = DateTime.Now; if (product.Update()) { response.Success = true; response.Message = "Product successfully updated."; } else { response.Success = false; response.Message = "An error occurred when communicating with the database."; } } else { response.Success = true; response.Message = "No changes were made."; } } else { response.Success = false; response.Message = "User cannot update this product."; } } else { response.Success = false; response.Message = "Invalid security token."; } } catch (Exception ex) { response = new LacesResponse(); response.Success = false; if (ex.Message.Contains("find product")) { response.Message = ex.Message; } else { response.Message = "An unexpected error has occurred; please verify the format of your request."; } } return(response); }