Files
template-10490/api/shop/goodsAttr/index.ts
2025-01-27 23:24:42 +08:00

107 lines
2.5 KiB
TypeScript

import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { GoodsAttr, GoodsAttrParam } from './model';
import { MODULES_API_URL } from '@/config';
/**
* 分页查询商品属性表
*/
export async function pageGoodsAttr(params: GoodsAttrParam) {
const res = await request.get<ApiResult<PageResult<GoodsAttr>>>(
MODULES_API_URL + '/shop/goods-attr/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询商品属性表列表
*/
export async function listGoodsAttr(params?: GoodsAttrParam) {
const res = await request.get<ApiResult<GoodsAttr[]>>(
MODULES_API_URL + '/shop/goods-attr',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加商品属性表
*/
export async function addGoodsAttr(data: GoodsAttr) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/shop/goods-attr',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改商品属性表
*/
export async function updateGoodsAttr(data: GoodsAttr) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/shop/goods-attr',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除商品属性表
*/
export async function removeGoodsAttr(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/shop/goods-attr/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除商品属性表
*/
export async function removeBatchGoodsAttr(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/shop/goods-attr/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询商品属性表
*/
export async function getGoodsAttr(id: number) {
const res = await request.get<ApiResult<GoodsAttr>>(
MODULES_API_URL + '/shop/goods-attr/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}