TecnoSoluciones RD
Sistema web académico de ventas e inventario desarrollado por el Grupo 9 con una arquitectura basada en software libre y tecnologías de código abierto.
Proyecto de código abierto
TecnoSoluciones RD es un proyecto académico de código abierto creado por el Grupo 9 de la asignatura Desarrollo de Proyectos con Software Libre.
El código desarrollado por el equipo se publica bajo la Licencia MIT. Las bibliotecas y herramientas externas conservan sus respectivas licencias.
La arquitectura principal utiliza Python, Flask, Psycopg, PostgreSQL, Apache HTTP Server, mod_wsgi, HTML, CSS, JavaScript y Git.
La relación de tecnologías y licencias se encuentra en Tecnologías de código abierto.
Información académica
Grupo: 9
Asignatura: Desarrollo de Proyectos con Software Libre
Proyecto: TecnoSoluciones RD
Estado actual
La aplicación cuenta actualmente con:
- Infraestructura Ubuntu Server.
- Apache con HTTPS.
- Flask desplegado mediante mod_wsgi.
- PostgreSQL 18.
- Integración mediante Psycopg.
- Firewall UFW.
- Auditoría automática.
- CRUD completo de categorías.
- CRUD de productos y servicios.
- Inventario automático para productos.
- Diseño adaptable para escritorio y dispositivos móviles.
- Repositorio Git y GitHub.
Tecnologías principales de código abierto
- Python
- Flask
- Psycopg
- PostgreSQL 18
- Apache HTTP Server
- mod_wsgi
- HTML5
- CSS3
- JavaScript
- HTTPS
- Git y GitHub
Arquitectura general
Navegador
|
HTTPS
|
Apache
/ \
Frontend /api
HTML/CSS Flask + mod_wsgi
JavaScript |
Psycopg
|
PostgreSQL 18
Módulos implementados
Categorías
- Listar categorías.
- Buscar por nombre o descripción.
- Filtrar por estado.
- Crear categorías.
- Editar categorías.
- Activar y desactivar.
- Validar nombres duplicados.
- Eliminar registros sin dependencias.
- Registrar operaciones en auditoría.
Productos y servicios
- Listar productos y servicios.
- Buscar por código, nombre, descripción o categoría.
- Filtrar por tipo, categoría y estado.
- Crear productos.
- Crear servicios.
- Editar registros.
- Activar y desactivar.
- Controlar inventario exclusivamente para productos.
- Validar categorías compatibles.
- Impedir la modificación del tipo después de la creación.
- Registrar operaciones en auditoría.
Capturas del sistema
Gestión de categorías
Gestión de productos y servicios
Formulario de productos y servicios
Diseño adaptable
| Categorías | Productos y servicios |
|---|
| |
Endpoints actuales
Sistema
GET /api/salud
GET /api/estado
Categorías
GET /api/categorias
GET /api/categorias/{id}
POST /api/categorias
PUT /api/categorias/{id}
PATCH /api/categorias/{id}
DELETE /api/categorias/{id}
Productos y servicios
GET /api/items
GET /api/items/{id}
POST /api/items
PUT /api/items/{id}
PATCH /api/items/{id}
DELETE /api/items/{id}
Seguridad
- Credenciales fuera del repositorio.
- HTTPS.
- Consultas SQL parametrizadas.
- Usuario técnico de PostgreSQL.
- Permisos mínimos.
- Firewall UFW.
- Auditoría automática.
- Separación entre desarrollo y producción.
Equipo de trabajo
- Eddery Rainiel Cruz Núñez
- Edgar Fermin
- Melvin Pérez Aquino
- Rony Pérez Cruz
- José Jehiel Ulloa Taveras
- Pedro Francisco Breynik
- Arlenny Vargas Bueno
Documentación
Módulos pendientes
- Panel principal.
- Clientes.
- Movimientos de inventario.
- Facturación.
- Detalles de facturas.
- Pagos.
- Proyectos.
- Soporte.
- Autenticación y roles.
Licencia de código abierto
El código desarrollado específicamente para TecnoSoluciones RD se distribuye bajo la Licencia MIT.
Esta licencia permite utilizar, estudiar, modificar y distribuir el código, siempre que se conserve el aviso correspondiente.
Las dependencias externas mantienen sus licencias originales. Consulta Tecnologías de código abierto para conocer los componentes utilizados.
Los autores y colaboradores están identificados en AUTHORS.md.