Fix: Solucionados problemas de permisos en Docker y agregada gestion de Webhook de Telegram
This commit is contained in:
159
prompt.txt
Normal file
159
prompt.txt
Normal 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 (1–15)
|
||||
* Segunda quincena (16–fin)
|
||||
|
||||
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.
|
||||
|
||||
Reference in New Issue
Block a user