refactor travel
This commit is contained in:
70
miniprogram/api/TravelLocationApi.ts
Normal file
70
miniprogram/api/TravelLocationApi.ts
Normal file
@ -0,0 +1,70 @@
|
||||
import { Network } from "../utils/Network";
|
||||
import { TravelLocation } from "../types/Travel";
|
||||
import { QueryPage, QueryPageResult } from "../types/Model";
|
||||
|
||||
/**
|
||||
* TravelLocation 旅行地点 API
|
||||
*
|
||||
* 按业务模块封装网络请求,使代码更清晰、可维护
|
||||
*/
|
||||
export class TravelLocationApi {
|
||||
/**
|
||||
* 获取旅行地点详情
|
||||
*
|
||||
* @param id - 地点 ID
|
||||
*/
|
||||
static getDetail(id: number | string): Promise<TravelLocation> {
|
||||
return Network.get<TravelLocation>(`/journal/travel/location/${id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取旅行地点分页列表
|
||||
*
|
||||
* @param pageParams - 分页参数(通常包含 travelId 筛选)
|
||||
*/
|
||||
static getList(pageParams: QueryPage): Promise<QueryPageResult<TravelLocation>> {
|
||||
return Network.page<TravelLocation>("/journal/travel/location/list", pageParams);
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建旅行地点
|
||||
*
|
||||
* @param data - 地点数据
|
||||
*/
|
||||
static create(data: Partial<TravelLocation>): Promise<TravelLocation> {
|
||||
return Network.post<TravelLocation>("/journal/travel/location/create", data, {
|
||||
showLoading: true,
|
||||
loadingText: "正在保存.."
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新旅行地点
|
||||
*
|
||||
* @param data - 地点数据(必须包含 id)
|
||||
*/
|
||||
static update(data: Partial<TravelLocation> & { id: number }): Promise<TravelLocation> {
|
||||
return Network.post<TravelLocation>("/journal/travel/location/update", data, {
|
||||
showLoading: true,
|
||||
loadingText: "正在保存.."
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除旅行地点
|
||||
*
|
||||
* @param id - 地点 ID
|
||||
*/
|
||||
static delete(id: number): Promise<void> {
|
||||
return Network.post<void>("/journal/travel/location/delete", { id });
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量获取旅行地点
|
||||
*
|
||||
* @param ids - 地点 ID 数组
|
||||
*/
|
||||
static getListByIds(ids: number[]): Promise<TravelLocation[]> {
|
||||
return Network.post<TravelLocation[]>("/journal/travel/location/list/ids", ids);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user