| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- import { request } from '../../../utils';
- import { API } from '../../../types';
- import { ResponseType } from '../response-type';
- export interface PostGetTripsYearsReturn extends ResponseType {
- data: string[];
- }
- export interface PostGetTripsForYearReturn extends ResponseType {
- trips: {
- id: number;
- date_from: string;
- date_to: string;
- description: string;
- regions: {
- region_name: string;
- flag1: string;
- flag2: string | null;
- status: 0 | 1;
- id: number;
- }[];
- }[];
- statistics: {
- countries: {
- description: string;
- list: {
- country: string;
- days_spent: number;
- flag: string | null;
- }[];
- };
- general: [string];
- regions: {
- description: string;
- list: {
- days_spent: number;
- flag: string | null;
- region: string;
- }[];
- };
- };
- }
- export interface RegionData {
- id: number;
- quality: number;
- // status: 0 | 1;
- hidden: boolean;
- year_from: number;
- year_to: number;
- month_from: number;
- month_to: number;
- day_from: number | null;
- day_to: number | null;
- }
- export interface PostSetNewTrip {
- token: string;
- date_from: string | null;
- date_to: string | null;
- description: string;
- regions: RegionData[];
- }
- export interface PostSetNewTripReturn extends ResponseType {
- trip_id: number;
- }
- export interface PostUpdateTrip {
- token: string;
- trip_id: number;
- date_from: string | null;
- date_to: string | null;
- description: string;
- regions: RegionData[];
- }
- export interface PostGetTripReturn extends ResponseType {
- trip: {
- id: number;
- date_from: string;
- date_to: string;
- description: string;
- regions: {
- id: number;
- region: number;
- region_name: string;
- flag1: string;
- flag2: string | null;
- quality: number;
- // status: 0 | 1;
- hidden: boolean;
- can_be_hidden: boolean;
- year_from: number;
- year_to: number;
- month_from: number;
- month_to: number;
- day_from: number | null;
- day_to: number | null;
- }[];
- };
- }
- export interface PostGetRegionsForTripsReturn extends ResponseType {
- regions: {
- id: number;
- region_name: string;
- flag1: string;
- flag2: string | null;
- hidden: boolean;
- }[];
- }
- export const tripsApi = {
- getTripsYears: (token: string) =>
- request.postForm<PostGetTripsYearsReturn>(API.GET_TRIPS_YEARS, { token }),
- getTripsForYear: (token: string, year: string) =>
- request.postForm<PostGetTripsForYearReturn>(API.GET_TRIPS_FOR_YEAR, { token, year }),
- setNewTrip: (data: PostSetNewTrip) =>
- request.postForm<PostSetNewTripReturn>(API.SET_NEW_TRIP, data),
- updateTrip: (data: PostUpdateTrip) => request.postForm<ResponseType>(API.UPDATE_TRIP, data),
- deleteTrip: (token: string, trip_id: number) =>
- request.postForm<ResponseType>(API.DELETE_TRIP, { token, trip_id }),
- getTrip: (token: string, trip_id: number) =>
- request.postForm<PostGetTripReturn>(API.GET_TRIP, { token, trip_id }),
- getRegionsForTrips: () => request.get<PostGetRegionsForTripsReturn>(API.GET_REGIONS_FOR_TRIPS)
- };
|