index.ts 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. import api from './api';
  2. // Api参数类型
  3. export type LoginApiParams = {
  4. username: string,
  5. password: string,
  6. };
  7. export type FetchRoomDetailApiParams = {
  8. positionId: string,
  9. communityId: string,
  10. roomId: string
  11. };
  12. export type FetchFacilityListApiParams = Partial<{
  13. positionId: string,
  14. communityId: string,
  15. roomId: string,
  16. regionId: string,
  17. pageNum: number,
  18. pageSize: number,
  19. }>;
  20. // Api函数类型
  21. export type LoginApi = (data: LoginApiParams) => Promise<any>;
  22. export type LogoutApi = () => Promise<any>;
  23. export type FetchBannerListApi = (positionId: string) => Promise<any>;
  24. export type FetchProductPositionListApi = () => Promise<any>;
  25. export type FetchRoomInfoApi = (positionId: string) => Promise<any>;
  26. export type FetchRoomDetailApi = (data: FetchRoomDetailApiParams) => Promise<any>;
  27. export type FetchFacilitySearchListApi = () => Promise<any>;
  28. export type FetchFacilityListApi = (data: FetchFacilityListApiParams) => Promise<any>;
  29. export type FetchFacilityDetailApi = (facilitiesId: string) => Promise<any>;
  30. // 登录
  31. const loginApi: LoginApi = async (data) => {
  32. return api.post('/auth/appLogin', data);
  33. };
  34. // 登出
  35. const logoutApi: LogoutApi = async () => {
  36. return api.post('/auth/appLogout');
  37. };
  38. // 获取轮播图列表
  39. const fetchBannerListApi: FetchBannerListApi = async (positionId) => {
  40. return api.get(`/system/img/wximg/${positionId}`);
  41. };
  42. // 获取产品定位列表
  43. const fetchProductPositionListApi: FetchProductPositionListApi = async () => {
  44. return api.get('/system/position/group');
  45. };
  46. // 获取房型信息
  47. const fetchRoomInfoApi: FetchRoomInfoApi = async (positionId) => {
  48. return api.get(`/system/position/room/${positionId}`);
  49. };
  50. // 获取房型详情
  51. const fetchRoomDetailApi: FetchRoomDetailApi = async (data) => {
  52. const { positionId, communityId, roomId } = data;
  53. return api.get(`/system/position/room/detail/${positionId}/${communityId}/${roomId}`);
  54. };
  55. // 获取设施检索列表
  56. const fetchFacilitySearchListApi: FetchFacilitySearchListApi = async () => {
  57. return api.get('/system/position/ficationBtn');
  58. };
  59. // 获取设施列表
  60. const fetchFacilityListApi: FetchFacilityListApi = async (data) => {
  61. return api.post('/system/facilities/facPage', data);
  62. };
  63. // 获取设施详情
  64. const fetchFacilityDetailApi: FetchFacilityDetailApi = async (facilitiesId) => {
  65. return api.get(`/system/facilities/${facilitiesId}`);
  66. };
  67. export const apis = {
  68. login: loginApi,
  69. logout: logoutApi,
  70. fetchBannerList: fetchBannerListApi,
  71. fetchProductPositionList: fetchProductPositionListApi,
  72. fetchRoomInfo: fetchRoomInfoApi,
  73. fetchRoomDetail: fetchRoomDetailApi,
  74. fetchFacilitySearchList: fetchFacilitySearchListApi,
  75. fetchFacilityList: fetchFacilityListApi,
  76. fetchFacilityDetail: fetchFacilityDetailApi,
  77. };