¡Bienvenido a Inmobosco! Este proyecto tiene como objetivo desarrollar un sistema para la gestión eficiente de una inmobiliaria localizada en España, permitiendo administrar propiedades, clientes, transacciones y más.
API programado en Java con Spring Boot, tienes dos perfiles: dev(base de datos en H2) y un perfil prod con base de datos desplegada en docker PostgresSQL , el cliente está desarrollado en versión movil y versión web.
- Spring: Se ha utilizado el framework de desarrollo de aplicaciones Java Spring para crear la API de backend y gestionar la lógica del negocio y la interacción con la base de datos.
- Flutter: Se ha utilizado el SDK de Flutter para desarrollar la aplicación móvil multiplataforma que interactúa con la API y proporciona una interfaz de usuario atractiva y fácil de usar.
- Angular: Se ha utilizado el framework Angular para desarrollar la aplicación web que se conecta a la API y ofrece una interfaz de usuario completa para la gestión inmobiliaria.
- H2 Database: Se utiliza la base de datos H2 en el perfil de desarrollo.
- PostgreSQL: Se utiliza la base de datos PostgreSQL en el perfil de producción.
-
Gestión de propiedades: podrás registrar y administrar información sobre las propiedades disponibles, como características, ubicación, precio, imágenes, etc.
-
Gestión de clientes: podrás mantener un registro de los clientes interesados en la compra o alquiler de propiedades, incluyendo sus datos personales y preferencias.
-
Gestión de transacciones: podrás gestionar las transacciones relacionadas con la compra o alquiler de propiedades, generando contratos, recibos y facturas.
-
Búsqueda avanzada: podrás realizar búsquedas avanzadas de propiedades utilizando filtros como ubicación, precio, tamaño, etc.
-
Informes y estadísticas: el sistema generará informes y estadísticas sobre las propiedades, clientes y transacciones, brindando una visión completa del negocio inmobiliario.
-
Interfaz intuitiva: la interfaz de usuario ha sido diseñada de forma amigable y fácil de usar, permitiendo una navegación fluida y sencilla.
- Java 17 o superior.
- Docker
- Flutter
- Angular 14.2 (No aseguramos el correcto funcionamiento si se usa una versión inferior.)
- Flutter
- Angular 14.2 (No aseguramos el correcto funcionamiento si se usa una versión inferior.)
- Java 17 o superior.
El Repositorio cuenta con una coleccion de Postman para poder probar todas las peticiones.
-
Clona este repositorio en tu máquina local.
-
Ejecuta el comando
docker-compose up -den la directorio raiz de la carpeta API para iniciar la base de datos en Docker. -
Ejecta el proyecto de spring con el comando
mvn spring-boot:runen caso de que lo estes ejecutando desde la consola, ten en cuenta que el proyecto por defecto viene con el prefil de produccion por lo que si no tienes activada la base de datos realizando el paso anterior no arrancara. -
Ejecuta el comando
npm installen el directorio raiz de la carpeta web para instalar las dependencias necesarias. -
Ejecuta el comando
flutter pub geten el directorio inmobosco para obtener las dependencias requeridas. -
Inicia el frontend web ejecutando el comando
ng serveen el directoriosrc/app/. -
Inicia el frontend móvil ejecutando el comando
flutter runen el directorio raiz de la carpeta inmobosco, en caso de no disponer de emulador puedes usar el comando:flutter run -d wpara abrir el frontend móvil. -
Accede a la interfaz web desde tu navegador en
http://localhost:4200. -
Accede a la aplicación móvil desde un emulador o dispositivo físico.
-
Si tienes la API arrancada podrás ver la documentacion pinchando aqui
-
Con la url: http://localhost:5050/ o Pinchando aquí podrás acceder a un gestor de base de datos como pgAdmin para ver la información guardada en la base de datos, si el proyecto se encuentra en el perfil de desarollo podrás ver la documentacion siguiendo la siguiente url: http://localhost:8080/h2-console
El proyecto cuenta con dos perfiles de usuario: admin (WORKER) y usuario (USER). A continuación se detallan los usuarios predefinidos para cada perfil:
- Usuario: Martinex
- Contraseña: 12345678
Este usuario tiene permisos limitados y acceso restringido a ciertas funcionalidades de la aplicación.
Este usuario en caso de que suba alguna propiedad en nuevas funcionalidades pasará a tener además el rol de OWNER desde el cual podrá ver un poco el estado de su vivienda y los gastos de esta
- Usuario: ElBrujo
- Contraseña: admin
Este usuario tiene privilegios de administrador y acceso completo a todas las funcionalidades de la aplicación.
-
Se ha solucionado un error que existía al querer borrar usuarios que son propietarios de una vivienda.
-
Implementacion de la pantalla detallada de las propiedades.
-
Implementacion de la pantalla del perfil del usuarios con las funcionalidades de editar el usuario tanto la foto de perfil como la información.
-
Implementacion de la funcionalidad de favoritos.
-
Implementacion del filtrado de propiedades por ciudad y por tipo de propiedad.
-
Servicio de mailing cuando un usuario es registrado por un admin.
-
Servicio mailing para avisar a un usuario de suspensión de su cuenta.
- David García María
¡Gracias por utilizar Inmobosco! Si tienes alguna pregunta o sugerencia, no dudes en contactarnos.