regions-api.tsx 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. import { request } from '../../../utils';
  2. import { API } from '../../../types';
  3. import { ResponseType } from '../response-type';
  4. export interface PostGetMegaReturn extends ResponseType {
  5. data: {
  6. id: number;
  7. name: string;
  8. }[];
  9. }
  10. export interface PostGetRegionsQeReturn extends ResponseType {
  11. data: {
  12. out_regs: {
  13. id: number;
  14. flag_1: string;
  15. flag_2: string;
  16. region_name: string;
  17. essential: 0 | 1;
  18. quality: number;
  19. year: number;
  20. last: number;
  21. visits: number;
  22. }[];
  23. out_tcc: {
  24. id: number;
  25. flag: string;
  26. flag2: string;
  27. name: string;
  28. visited: number;
  29. }[];
  30. out_mtp: {
  31. mtp_id: number;
  32. flag: string;
  33. flag2: string;
  34. name: string;
  35. visited: number;
  36. }[];
  37. };
  38. }
  39. export interface PostSetNmRegion {
  40. token: string;
  41. region: number;
  42. first: number;
  43. last: number;
  44. visits: number;
  45. quality: number;
  46. }
  47. export interface PostSetTCCRegion {
  48. token: string;
  49. region: number;
  50. visits: 0 | 1;
  51. }
  52. export const regionsApi = {
  53. getMegaregions: (token: string) =>
  54. request.postForm<PostGetMegaReturn>(API.GET_MEGAREGIONS, { token }),
  55. getRegionsQe: (megaregion: number, token: string) =>
  56. request.postForm<PostGetRegionsQeReturn>(API.GET_REGIONS_QE, { megaregion, token }),
  57. setNmRegion: (data: PostSetNmRegion) => request.postForm<ResponseType>(API.SET_NM_REGION, data),
  58. setTCCRegion: (data: PostSetTCCRegion) => request.postForm<ResponseType>(API.SET_TCC_REGION, data)
  59. };