Skip to content
Snippets Groups Projects
WishlistService.ts 1.49 KiB
/**
 * This class will fetch and send user wishlist data from back end
 */

import * as serverHttpService from "./ServerHttpService";
import { WishlistItemModel } from "@/models/WishlistItemModel";

const baseUrl = "wishlist";

/**
 * This function will fetch users wishlist item list
 * @param userId user's id
 */
export function getUserWishlistInfo(userId: number) {
  return serverHttpService.Get(baseUrl + "/" + userId);
}

/**
 * Send new wishlistItem information to server to create new record
 * @param userId user's id
 * @param wishlistItem  new wishlistItem
 */
export function createNewWishlistItem( userId: number, wishlistItem: WishlistItemModel ) {
  return serverHttpService.Post(baseUrl + "/newWishlistItem/"+userId, wishlistItem);
}

/**
 * Update an sexist wishlistItem
 * @param userId user's id
 * @param wishlistItem changed wishlistItem
 */
export function updateWishlistItem(wishlistItem: WishlistItemModel) {
  return serverHttpService.Post(baseUrl + "/updateWishlistItem", wishlistItem);
}

/**
 * Remove one of user's wishlistItem from DB
 * @param userId user's id
 * @param wishlistItemId wishlist Item's Id
 */
export function deleteWishlistItem(userId: number, wishlistItemId: number) {
  const urlPath =
    baseUrl +
    "/deleteWishlistItem/" +
    userId +
    "?wishlistItemId=" +
    wishlistItemId;
  return serverHttpService.Delete(urlPath);
}


/*
Change logs:
Date        |       Author          |   Description
2022-10-20  |    Fangzheng Zhang    |    create class and init

 */