Este proyecto es una aplicaci贸n tipo SaaS, desarrollado bajo la arquitectura Multitenat para permitir en una sola instancia de la aplicaci贸n servir a muchos clientes (Modelo de maduraci贸n Nivel 3 "Configurable y eficiente"). Con respecto al modelo de datos el谩sticos se implemento base de datos compartidas (Shared database-sharded) por medio de la libreria django-tenants-schemas que permite en una sola base de datos generar schemas y asociarlos por medio de la url a un tenant.
- Crear base de datos (revisar settings.py)
- Ejecutar el archivo requirements.txt
python manage.py makemigrationspython manage.py migrate_schemas- ejecutar los archivos sql que est谩n en la carpeta querys en el siguiente orden:
- 00_insertar_superusuario.sql
- 01_insertar_tenant.sql
- 02_relacionar_dominio.sql
- levantar servidor e ingresar a localhost:8000
-
Cree una cuenta en el sistema por medio de un correo y contrase帽a signin
-
Ingrese departamentos y ciudades; para eso dirijase a la siguiente ruta
http://localhost:8000/cities/cities/y cargue el archivo de excel llamado colombia.xls
-
Cree una empresa, la informaci贸n de la empresa es la que se utiliza para crear un tenant en el sistema
-
Ingrese a la nueva url de acuerdo al nombre comercial que haya digitado en el formulario de crear empresa, ejemplo:
http://tenant2.localhost:8000/
- Ingrese con el usuario previamente creado
- Si desea cargar informaci贸n al sistema, lo puede hacer por medio de la opci贸n carga masiva que se encuentra en cada modulo y subiendo los archivos de excel que se encuentran en este repositorio.
- Gesti贸n de usuarios.
- Gesti贸n de clientes.
- Gesti贸n de veh铆culos.
- Gesti贸n de conductores.
- Gesti贸n de rutas
- Gesti贸n de reportes
- Generar un archivo en formato JSON
- Personalizaci贸n de tenant
Este proyecto hace uso de las siguientes librerias de terceros:
- Django JET: Administrador de Django
- Django Custom User: Cambia el comportamiento del usuario por defecto de Django
- Django reCaptcha v2
- Anymail: Django email backends for Mailgun
- Django-Select2 Input select2 for Django
- django-excel