Commit f2f18994 authored by Lorenzo Trujillo Rojas's avatar Lorenzo Trujillo Rojas
Browse files

Se creó una implementación del datasource de ruta del contexto de producción

parent 304a6905
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
import axios from "axios";
import { ActivityRouteEntity } from "../../../activity/domain/entities/activity_info_entity";
import { RouteDataSource } from "../../../domain/datasources/route_datasource";
import { API_URL } from "../../../common/constants/api";
import { ActivityRouteModel } from "../../models/prod/route_activity_model";
import { activityRouteModelToActivityRouteEntity } from "../../utils/route_utils";

export class RouteDatasourceProd implements RouteDataSource {
    private readonly language: string;
    constructor(language: string) {
        this.language = language;
    }
    async generateRoute(townId: number): Promise<ActivityRouteEntity[]>{
        const {data, status} = await axios.get<ActivityRouteModel[]>(`${API_URL}/route/recommend/${townId}?lang=${this.language}`);
        if (status !== 200) {
            throw new Error('Error fetching route');
        }
        
        return data.map(activityRouteModelToActivityRouteEntity);
    };
    async getRoute(routeId: number): Promise<ActivityRouteEntity[]> {
        throw new Error('Method not implemented.');
    }

} 

// /state/state_id/town/town_id/activity/activity_id/travel?id=id_point_of_interest
 No newline at end of file