Skip to content

Implementar "Gesti贸n de Lista de Seguimiento" (Requerimiento 4)#22

Description

@manuel-galvan

馃摑 Descripci贸n

Esta funcionalidad permitir谩 a los usuarios autenticados guardar los destinos tur铆sticos que buscaron (provenientes de la API externa) en una lista personal para hacerles seguimiento, ver su informaci贸n b谩sica y eliminarlos cuando lo deseen.
Estimaci贸n de horas: 8 horas.

Criterios de Aceptaci贸n.

  • El usuario autenticado debe poder seleccionar un destino desde los resultados de b煤squeda y agregarlo a su lista de seguimiento.
  • El sistema debe persistir en la base de datos interna la informaci贸n del destino (Nombre, pa铆s, poblaci贸n, coordenadas, foto y 煤ltima fecha de actualizaci贸n) vinculado al usuario actual.
  • El usuario debe poder visualizar una vista con su lista personal de destinos agregados, mostrando la informaci贸n b谩sica y la fecha de la 煤ltima actualizaci贸n.
  • El usuario debe poder eliminar cualquier destino previamente agregado a su lista.
  • La lista debe ser privada (cada usuario ve solo sus propios destinos guardados).

Tareas a realizar

Backend (Revisar documentaci贸n de ABP)

  • Crear la entidad TrackedDestination (o similar) en el Dominio asegurando que implemente la interfaz IUserOwned (para filtrado autom谩tico por usuario).
  • Actualizar el DbContext y crear la migraci贸n correspondiente para Entity Framework Core.
  • Crear los DTOs necesarios (ej. AddTrackedDestinationDto, TrackedDestinationDto).
  • Implementar los m茅todos en el Application Service (AddAsync, GetListAsync, DeleteAsync).
  • Crear las pruebas unitarias b谩sicas para estos m茅todos del servicio.

Frontend (Angular)

  • Generar los proxies actualizados en Angular (abp generate-proxy -t ng).
  • Modificar la UI de b煤squeda (TP 08) para agregar un bot贸n/铆cono de "Agregar a la lista" en cada tarjeta de resultado.
  • Crear un nuevo componente/p谩gina TrackingList (Favoritos).
  • Consumir el servicio para listar los destinos guardados y renderizarlos en tarjetas o tabla.
  • Agregar el bot贸n de "Eliminar" en cada 铆tem de la lista personal y conectarlo con el servicio.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions