Fix: Solucionados problemas de permisos en Docker y agregada gestion de Webhook de Telegram

This commit is contained in:
2026-04-19 19:23:25 -06:00
parent 249c997257
commit c4bd4b62e3
13 changed files with 615 additions and 98 deletions

159
prompt.txt Normal file
View File

@@ -0,0 +1,159 @@
Crea una aplicación web para el control de ingresos por comisiones y gastos personales con soporte multiusuario y un bot de Telegram integrado.
## Descripción general
La aplicación debe permitir a múltiples usuarios registrar ventas diarias por mes mediante un calendario interactivo, calcular comisiones basadas en un porcentaje configurable, sumar un sueldo mensual fijo, registrar gastos y mostrar el dinero restante tanto mensual como por quincena.
Cada usuario debe tener acceso únicamente a su propia información.
## Funcionalidades principales
### 1. Sistema multiusuario
* Registro e inicio de sesión
* Cada usuario solo puede ver y modificar sus propios datos
* Relación de todos los datos con user_id
### 2. Gestión por mes
* Crear, ver y editar meses por usuario
### 3. Calendario de captura (IMPORTANTE)
* Cada mes debe mostrarse como un calendario visual
* El usuario NO captura la fecha manualmente
* El usuario selecciona un día haciendo clic en el calendario
Al seleccionar un día:
* Se abre un formulario/modal para capturar:
* Ventas registradas por el usuario
* Ventas del sistema de la empresa
El sistema debe:
* Guardar automáticamente la fecha según el día seleccionado
* Mostrar visualmente en el calendario:
* Días con información registrada
* Días sin registrar
* Indicadores rápidos (ej: colores o íconos)
### 4. Registro diario de ventas
Por cada día seleccionado:
* Ventas registradas por el usuario
* Ventas del sistema de la empresa
Cálculos:
* Diferencia entre valores
* Comisión diaria
### 5. Configuración de variables por usuario
Cada usuario puede definir:
* Porcentaje de comisión
* Sueldo mensual
### 6. Cálculos automáticos
* Comisión diaria = ventas del sistema × porcentaje
* Total mensual de comisiones
* Total ingresos = sueldo + comisiones
* Total gastos
* Balance final
### 7. Gestión de gastos
* Agregar múltiples gastos:
* Descripción
* Monto
* Fecha (opcional o seleccionable desde calendario)
### 8. Cálculo por quincena
* Primera quincena (115)
* Segunda quincena (16fin)
Mostrar:
* Ingresos
* Gastos
* Balance
### 9. Dashboard
* Resumen mensual
* Totales
* Vista de calendario
* Tabla opcional de ventas
* Resumen por quincena
## Integración con Telegram
### Vinculación segura
* El usuario inicia sesión en la web
* Genera un código único de vinculación
* En Telegram, el usuario envía ese código al bot
* El bot vincula el chat_id con el usuario
### Funcionalidades del bot
El usuario puede:
* Registrar ventas:
comando: /venta 1500 1400
(el sistema usa automáticamente la fecha actual)
* Registrar gastos:
comando: /gasto comida 200
* Consultar resumen:
comando: /resumen
* Consultar quincena:
comando: /quincena
### Seguridad
* No pedir usuario/contraseña en Telegram
* Validar chat_id vinculado
* Solo permitir acceso a datos del usuario vinculado
## Base de datos (sugerida)
* users (id, name, email, password)
* telegram_accounts (id, user_id, chat_id)
* months (id, user_id, name, year)
* daily_sales (id, user_id, month_id, date, user_sales, system_sales)
* settings (id, user_id, commission_percentage, monthly_salary)
* expenses (id, user_id, month_id, description, amount, date)
## Requisitos técnicos
* Backend: Laravel
* Frontend: Blade o Vue
* Base de datos: MySQL
* Uso de librería de calendario (ej: FullCalendar)
## Extras opcionales
* Exportar a Excel/CSV
* Gráficas
* Notificaciones por Telegram
## UI/UX
* Interfaz tipo dashboard
* Calendario como elemento principal
* Colores para indicar estado de días
* Captura rápida mediante modales
La aplicación debe ser rápida, intuitiva y enfocada en facilitar la captura diaria sin errores y todos los logs se deben de guardar en la carpeta logs de la raiz.