youdas/common/server/product.js
2025-06-24 00:34:39 +08:00

114 lines
2.7 KiB
JavaScript

import HttpRequest from "../system/request";
/**
* 获取banner列表
* @returns {Promise} banner列表
*/
export const getBannerList = async () => {
const res = await HttpRequest.get('/get_banner_list');
if (res.status == 1) {
return res.data;
}
return [];
}
/**
* 获取商品列表
* @param {number} pageNo 页码
* @param {number} pageSize 每页条数
* @param {string} searchKeyword 搜索关键词
* @returns {Promise} 商品列表
*/
export const getProductList = async (pageNo, pageSize, searchKeyword) => {
const res = await HttpRequest.get('/get_product_list', {
page: pageNo,
limit: pageSize,
title: searchKeyword
});
if (res.status == 1) {
return res.data;
}
}
/**
* 获取商品详情
* @param {number} id 商品id
* @returns {Promise} 商品详情
*/
export const getProductDetail = async (id) => {
const res = await HttpRequest.get('/get_product_detail', {
id: id
});
if (res.status == 1) {
return res.data;
}
return null;
}
/**
* 获取用户收藏商品列表
* @param {Number} page 页码
* @param {Number} limit 每页条数
* @returns {Promise} 收藏商品列表
*/
export const getFavoriteList = async (page = 1, limit = 10) => {
const res = await HttpRequest.get('/get_favorite_list', {
page: page,
limit: limit
});
if (res.status == 1) {
return res.data;
}
return [];
}
/**
* 添加商品收藏
* @param {Number} product_id 商品ID
* @returns {Promise} 收藏结果
*/
export const addFavorite = async (product_id) => {
const res = await HttpRequest.post('/add_favorite', {
product_id: product_id
});
return res.status == 1;
}
/**
* 取消商品收藏
* @param {Number} product_id 商品ID
* @returns {Promise} 取消收藏结果
*/
export const cancelFavorite = async (product_id) => {
const res = await HttpRequest.post('/cancel_favorite', {
product_id: product_id
});
return res.status == 1;
}
/**
* 批量取消商品收藏
* @param {Array} product_ids 商品ID数组
* @returns {Promise} 批量取消收藏结果
*/
export const batchCancelFavorite = async (product_ids) => {
const res = await HttpRequest.post('/batch_cancel_favorite', {
product_ids: product_ids
});
return res.status == 1;
}
/**
* 检查商品是否已收藏
* @param {Number} product_id 商品ID
* @returns {Promise} 是否已收藏
*/
export const checkIsFavorite = async (product_id) => {
const res = await HttpRequest.get('/check_is_favorite', {
product_id: product_id
});
if (res.status == 1) {
return res.data.is_favorite;
}
return false;
}