|
|
// 从 "@/utils" 模块导入名为 http 的对象,推测该对象是用于发起 HTTP 请求的工具,可能是对 axios 等请求库的封装
|
|
|
import { http } from "@/utils";
|
|
|
|
|
|
// 定义一个接口 IPageSourceByKey,用于描述分页查询来源渠道时的请求参数结构
|
|
|
interface IPageSourceByKey {
|
|
|
// 名称,用于筛选来源渠道,类型为字符串
|
|
|
name: string;
|
|
|
// 来源渠道名称,用于筛选来源渠道,类型为字符串
|
|
|
sourceName: string;
|
|
|
}
|
|
|
|
|
|
// 定义一个接口 IAddSource,用于描述新增来源渠道时的数据结构
|
|
|
interface IAddSource {
|
|
|
// 来源渠道的 ID,类型为字符串
|
|
|
id: string;
|
|
|
// 来源渠道的名称,类型为字符串
|
|
|
name: string;
|
|
|
}
|
|
|
|
|
|
// 定义一个接口 IGetSourceById,用于描述根据编号查询来源渠道时的请求参数结构
|
|
|
interface IGetSourceById {
|
|
|
// 来源渠道 ID,类型为字符串
|
|
|
sourceId: string;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 定义一个异步函数 pageSourceByKey,用于分页查询来源渠道
|
|
|
* @param data - 一个符合 IPageSourceByKey 接口的对象,包含分页查询所需的参数
|
|
|
* @returns 一个 Promise 对象,解析后得到的是分页查询来源渠道的响应结果
|
|
|
*/
|
|
|
export async function pageSourceByKey(data: IPageSourceByKey) {
|
|
|
// 因为后台返回的字段与前端表单数据的 prop 不一样,
|
|
|
// 但是组件封装需要一样,所以请求前增加一些这两个字段
|
|
|
// 如果 data 对象中有 "name" 字段,则将其值赋给 "sourceName" 字段
|
|
|
Reflect.has(data, "name")? (data.sourceName = data.name) : "";
|
|
|
// 使用导入的 http 对象发起 GET 请求,请求地址为 "/api/source/pageSourceByKey"
|
|
|
// 将处理后的 data 对象展开作为请求的参数
|
|
|
return http.get("/api/source/pageSourceByKey", {
|
|
|
params: {
|
|
|
...data
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 定义一个函数 addSource,用于新增来源渠道
|
|
|
* @param data - 一个符合 IAddSource 接口的对象,包含新增来源渠道所需的数据
|
|
|
* @returns 一个 Promise 对象,解析后得到的是新增来源渠道操作的响应结果
|
|
|
*/
|
|
|
export function addSource(data: IAddSource) {
|
|
|
// 使用导入的 http 对象发起 POST 请求,请求地址为 "/api/source/addSource"
|
|
|
// 将 data 对象作为请求的主体
|
|
|
return http.post("/api/source/addSource", data);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 定义一个异步函数 getSourceById,用于根据编号查询来源渠道
|
|
|
* @param data - 一个符合 IGetSourceById 接口的对象,包含根据编号查询来源渠道所需的参数
|
|
|
* @returns 一个 Promise 对象,解析后得到的是根据编号查询来源渠道的响应结果
|
|
|
*/
|
|
|
export async function getSourceById(data: IGetSourceById) {
|
|
|
// 使用导入的 http 对象发起 GET 请求,请求地址为 "/api/source/getSourceById"
|
|
|
// 将 data 对象展开作为请求的参数
|
|
|
return http.get("/api/source/getSourceById", {
|
|
|
params: {
|
|
|
...data
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 定义一个函数 editSource,用于编辑来源渠道
|
|
|
* @param data - 一个符合 IAddSource 接口的对象,包含编辑来源渠道所需的数据
|
|
|
* @returns 一个 Promise 对象,解析后得到的是编辑来源渠道操作的响应结果
|
|
|
*/
|
|
|
export function editSource(data: IAddSource) {
|
|
|
// 使用导入的 http 对象发起 PUT 请求,请求地址为 "/api/source/editSource"
|
|
|
// 将 data 对象作为请求的主体
|
|
|
return http.put("/api/source/editSource", data);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 定义一个异步函数 deleteSource,用于删除来源渠道
|
|
|
* @param data - 一个符合 IGetSourceById 接口的对象,包含删除来源渠道所需的参数
|
|
|
* @returns 一个 Promise 对象,解析后得到的是删除来源渠道操作的响应结果
|
|
|
*/
|
|
|
export async function deleteSource(data: IGetSourceById) {
|
|
|
// 使用导入的 http 对象发起 DELETE 请求,请求地址为 "/api/source/deleteSource"
|
|
|
// 将 data 对象展开作为请求的参数
|
|
|
return http.delete("/api/source/deleteSource", {
|
|
|
params: {
|
|
|
...data
|
|
|
}
|
|
|
});
|
|
|
}
|