You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Nursing-home-management-system/client/src/apis/service.ts

196 lines
7.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

// 从 "@/utils" 模块导入名为 http 的对象,推测该对象是用于发起 HTTP 请求的工具,可能是对 axios 等请求库的封装
import { http } from "@/utils";
// 定义一个接口 IGetServiceType用于描述获取服务类型时的请求参数结构
interface IGetServiceType {
// 服务类型名称,用于筛选服务类型,类型为字符串
serviceTypeName: string;
}
// 导出一个接口 IPageServiceByKey用于描述分页查询服务时的请求参数结构
export interface IPageServiceByKey {
// 名称,用于筛选服务,类型为字符串
name: string;
// 服务类型 ID用于筛选属于特定类型的服务类型为数字
typeId: number;
}
// 定义一个接口 IAddServiceType用于描述新增服务类型时的数据结构
interface IAddServiceType {
// 服务类型的 ID类型为数字
id: number;
// 服务类型的名称,类型为字符串
name: string;
}
// 定义一个接口 IGetServiceTypeById用于描述根据编号获取服务类型时的请求参数结构
interface IGetServiceTypeById {
// 服务类型 ID类型为字符串
serviceTypeId: string;
}
// 定义一个接口 IAddService用于描述新增服务时的数据结构
interface IAddService {
// 服务的 ID类型为数字
id: number;
// 服务的名称,类型为字符串
name: string;
// 服务所需日期,类型为字符串
needDate: string;
// 服务价格,类型为字符串
price: string;
// 服务所属类型的 ID类型为数字
typeId: number;
// 收费方式,类型为字符串
chargeMethod: string;
}
// 导出一个接口 IGetServiceById用于描述根据编号获取服务时的请求参数结构
export interface IGetServiceById {
// 服务 ID类型为字符串
serviceId: string;
}
// 定义一个名为 IChargeMethodList 的常量,是一个包含收费方式选项的数组,每个选项有标签和对应的值
export const IChargeMethodList = [
{ label: "按次", value: "按次" },
{ label: "按月", value: "按月" }
];
/**
* 定义一个异步函数 getServiceType用于获取服务类型列表
* @param data - 一个符合 IGetServiceType 接口的对象,包含获取服务类型列表所需的参数
* @returns 一个 Promise 对象,解析后得到的是获取服务类型列表的响应结果
*/
export async function getServiceType(data: IGetServiceType) {
// 使用导入的 http 对象发起 GET 请求,请求地址为 "/api/service/getServiceType"
// 将 data 对象展开作为请求的参数
return http.get("/api/service/getServiceType", {
params: {
...data
}
});
}
/**
* 定义一个异步函数 pageServiceByKey用于分页查询服务
* @param data - 一个符合 IPageServiceByKey 接口的对象,包含分页查询所需的参数
* @returns 一个 Promise 对象,解析后得到的是分页查询服务的响应结果
*/
export async function pageServiceByKey(data: IPageServiceByKey) {
// 因为后台返回的字段与前端表单数据的 prop 不一样,但是组件封装是需要一样的,所以请求前增加一些这两个字段
// 这里注释掉的代码可能是原本用于处理字段的逻辑,但当前未启用
// Reflect.has(data, 'roleName')? (data.roleId = data.roleName) : ''
// 使用导入的 http 对象发起 GET 请求,请求地址为 "/api/service/pageServiceByKey"
// 将 data 对象展开作为请求的参数
return http.get("/api/service/pageServiceByKey", {
params: {
...data
}
});
}
/**
* 定义一个函数 addServiceType用于新增服务类型
* @param data - 一个符合 IAddServiceType 接口的对象,包含新增服务类型所需的数据
* @returns 一个 Promise 对象,解析后得到的是新增服务类型操作的响应结果
*/
export function addServiceType(data: IAddServiceType) {
// 使用导入的 http 对象发起 POST 请求,请求地址为 "/api/service/addServiceType"
// 将 data 对象作为请求的主体
return http.post("/api/service/addServiceType", data);
}
/**
* 定义一个异步函数 getServiceTypeById用于根据编号获取服务类型
* @param data - 一个符合 IGetServiceTypeById 接口的对象,包含根据编号获取服务类型所需的参数
* @returns 一个 Promise 对象,解析后得到的是根据编号获取服务类型的响应结果
*/
export async function getServiceTypeById(data: IGetServiceTypeById) {
// 使用导入的 http 对象发起 GET 请求,请求地址为 "/api/service/getServiceTypeById"
// 将 data 对象展开作为请求的参数
return http.get("/api/service/getServiceTypeById", {
params: {
...data
}
});
}
/**
* 定义一个函数 editServiceType用于编辑服务类型
* @param data - 一个符合 IAddServiceType 接口的对象,包含编辑服务类型所需的数据
* @returns 一个 Promise 对象,解析后得到的是编辑服务类型操作的响应结果
*/
export function editServiceType(data: IAddServiceType) {
// 使用导入的 http 对象发起 PUT 请求,请求地址为 "/api/service/editServiceType"
// 将 data 对象作为请求的主体
return http.put("/api/service/editServiceType", data);
}
/**
* 定义一个异步函数 deleteServiceType用于删除服务类型
* @param data - 一个符合 IGetServiceTypeById 接口的对象,包含删除服务类型所需的参数
* @returns 一个 Promise 对象,解析后得到的是删除服务类型操作的响应结果
*/
export async function deleteServiceType(data: IGetServiceTypeById) {
// 使用导入的 http 对象发起 DELETE 请求,请求地址为 "/api/service/deleteServiceType"
// 将 data 对象展开作为请求的参数
return http.delete("/api/service/deleteServiceType", {
params: {
...data
}
});
}
/**
* 定义一个函数 addService用于新增服务
* @param data - 一个符合 IAddService 接口的对象,包含新增服务所需的数据
* @returns 一个 Promise 对象,解析后得到的是新增服务操作的响应结果
*/
export function addService(data: IAddService) {
// 使用导入的 http 对象发起 POST 请求,请求地址为 "/api/service/addService"
// 将 data 对象作为请求的主体
return http.post("/api/service/addService", data);
}
/**
* 定义一个异步函数 getServiceById用于根据编号获取服务
* @param data - 一个符合 IGetServiceById 接口的对象,包含根据编号获取服务所需的参数
* @returns 一个 Promise 对象,解析后得到的是根据编号获取服务的响应结果
*/
export async function getServiceById(data: IGetServiceById) {
// 使用导入的 http 对象发起 GET 请求,请求地址为 "/api/service/getServiceById"
// 将 data 对象展开作为请求的参数
return http.get("/api/service/getServiceById", {
params: {
...data
}
});
}
/**
* 定义一个函数 editService用于编辑服务
* @param data - 一个符合 IAddService 接口的对象,包含编辑服务所需的数据
* @returns 一个 Promise 对象,解析后得到的是编辑服务操作的响应结果
*/
export function editService(data: IAddService) {
// 使用导入的 http 对象发起 PUT 请求,请求地址为 "/api/service/editService"
// 将 data 对象作为请求的主体
return http.put("/api/service/editService", data);
}
/**
* 定义一个异步函数 deleteService用于删除服务
* @param data - 一个符合 IGetServiceById 接口的对象,包含删除服务所需的参数
* @returns 一个 Promise 对象,解析后得到的是删除服务操作的响应结果
*/
export async function deleteService(data: IGetServiceById) {
// 使用导入的 http 对象发起 DELETE 请求,请求地址为 "/api/service/deleteService"
// 将 data 对象展开作为请求的参数
return http.delete("/api/service/deleteService", {
params: {
...data
}
});
}