import request from '@/utils/request'; import type { ApiResult, PageResult } from '@/api'; import type { Merchant, MerchantParam } from './model'; import { MODULES_API_URL } from '@/config/setting'; /** * 分页查询商户 */ export async function pageMerchant(params: MerchantParam) { const res = await request.get>>( MODULES_API_URL + '/shop/merchant/page', { params } ); if (res.data.code === 0) { return res.data.data; } return Promise.reject(new Error(res.data.message)); } /** * 查询商户列表 */ export async function listMerchant(params?: MerchantParam) { const res = await request.get>( MODULES_API_URL + '/shop/merchant', { params } ); if (res.data.code === 0 && res.data.data) { return res.data.data; } return Promise.reject(new Error(res.data.message)); } /** * 添加商户 */ export async function addMerchant(data: Merchant) { const res = await request.post>( MODULES_API_URL + '/shop/merchant', data ); if (res.data.code === 0) { return res.data.message; } return Promise.reject(new Error(res.data.message)); } /** * 修改商户 */ export async function updateMerchant(data: Merchant) { const res = await request.put>( MODULES_API_URL + '/shop/merchant', data ); if (res.data.code === 0) { return res.data.message; } return Promise.reject(new Error(res.data.message)); } /** * 删除商户 */ export async function removeMerchant(id?: number) { const res = await request.delete>( MODULES_API_URL + '/shop/merchant/' + id ); if (res.data.code === 0) { return res.data.message; } return Promise.reject(new Error(res.data.message)); } /** * 批量删除商户 */ export async function removeBatchMerchant(data: (number | undefined)[]) { const res = await request.delete>( MODULES_API_URL + '/shop/merchant/batch', { data } ); if (res.data.code === 0) { return res.data.message; } return Promise.reject(new Error(res.data.message)); } /** * 根据id查询商户 */ export async function getMerchant(id: number) { const res = await request.get>( MODULES_API_URL + '/shop/merchant/' + id ); if (res.data.code === 0 && res.data.data) { return res.data.data; } return Promise.reject(new Error(res.data.message)); }