Files
2024-08-23 22:28:24 +08:00

107 lines
2.4 KiB
TypeScript

import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { Field, FieldParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询场馆场地
*/
export async function pageField(params: FieldParam) {
const res = await request.get<ApiResult<PageResult<Field>>>(
MODULES_API_URL + '/booking/field/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询场馆场地列表
*/
export async function listField(params?: FieldParam) {
const res = await request.get<ApiResult<Field[]>>(
MODULES_API_URL + '/booking/field',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加场馆场地
*/
export async function addField(data: Field) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/booking/field',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改场馆场地
*/
export async function updateField(data: Field) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/booking/field',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除场馆场地
*/
export async function removeField(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/booking/field/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除场馆场地
*/
export async function removeBatchField(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/booking/field/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询场馆场地
*/
export async function getField(id: number) {
const res = await request.get<ApiResult<Field>>(
MODULES_API_URL + '/booking/field/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}