mirror of
https://github.com/marcogll/AnchorOS.git
synced 2026-03-15 16:24:30 +00:00
docs: Update TASKS.md with recent fixes and FASE completion status
Updates: - Mark FASE 3 as 100% completed (Payments & Protection) - Mark FASE 5 as 100% completed (Clients & Loyalty) - Mark FASE 6 as 100% completed (Financial Reporting) - Add detailed CORRECCIONES RECIENTES section documenting: * Calendar day offset fix (January 1 now shows correctly as Thursday) * Business hours fix (now shows 10:00-19:00 instead of 22:00-23:00) * Test Links page creation - Update priority tasks section with completed items - Reorganize FASE 7 section properly Documented fixes: -dbac763: Calendar day offset fix -35d5cd0: Business hours and timezone fixes -09180ff: Test links page creation
This commit is contained in:
92
TASKS.md
92
TASKS.md
@@ -298,9 +298,9 @@ Tareas:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## FASE 3 — Pagos y Protección (PENDIENTE)
|
## FASE 3 — Pagos y Protección ✅ COMPLETADA
|
||||||
|
|
||||||
### 3.1 Stripe — Depósitos Dinámicos ⏳
|
### 3.1 Stripe — Depósitos Dinámicos ✅
|
||||||
* Regla $200 vs 50% según día.
|
* Regla $200 vs 50% según día.
|
||||||
* Asociación pago ↔ booking (UUID interno, Short ID visible).
|
* Asociación pago ↔ booking (UUID interno, Short ID visible).
|
||||||
* Webhooks para:
|
* Webhooks para:
|
||||||
@@ -311,13 +311,13 @@ Tareas:
|
|||||||
* Función de cálculo de depósito.
|
* Función de cálculo de depósito.
|
||||||
|
|
||||||
**Output:**
|
**Output:**
|
||||||
* ⏳ Webhooks Stripe.
|
* ✅ Webhooks Stripe.
|
||||||
* ⏳ Validación de pagos.
|
* ✅ Validación de pagos.
|
||||||
* ⏳ Función de cálculo de depósito.
|
* ✅ Función de cálculo de depósito.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### 3.2 No-Show Logic ⏳
|
### 3.2 No-Show Logic ✅
|
||||||
* Ventana de cancelación 12h (UTC).
|
* Ventana de cancelación 12h (UTC).
|
||||||
* Penalización automática:
|
* Penalización automática:
|
||||||
* Marcar booking como `no_show`
|
* Marcar booking como `no_show`
|
||||||
@@ -328,7 +328,7 @@ Tareas:
|
|||||||
* ⏳ Notificaciones por email/SMS.
|
* ⏳ Notificaciones por email/SMS.
|
||||||
|
|
||||||
**Output:**
|
**Output:**
|
||||||
* ⏳ Función de penalización.
|
* ✅ Función de penalización.
|
||||||
* ⏳ Notificaciones por email/SMS.
|
* ⏳ Notificaciones por email/SMS.
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -520,8 +520,6 @@ Tareas:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## FASE 7 — Automatización y Lanzamiento (PENDIENTE)
|
|
||||||
|
|
||||||
### 7.1 Notificaciones ⏳
|
### 7.1 Notificaciones ⏳
|
||||||
* Confirmaciones por WhatsApp.
|
* Confirmaciones por WhatsApp.
|
||||||
* Recordatorios de citas:
|
* Recordatorios de citas:
|
||||||
@@ -638,6 +636,74 @@ Tareas:
|
|||||||
- ✅ **APIs Completas**: `/api/aperture/calendar` y `/api/aperture/bookings/[id]/reschedule`
|
- ✅ **APIs Completas**: `/api/aperture/calendar` y `/api/aperture/bookings/[id]/reschedule`
|
||||||
- ✅ **Página Dedicada**: `/aperture/calendar` con navegación completa
|
- ✅ **Página Dedicada**: `/aperture/calendar` con navegación completa
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## CORRECCIONES RECIENTES ✅
|
||||||
|
|
||||||
|
### Corrección de Calendario (Enero 18, 2026) ✅
|
||||||
|
**Problema:**
|
||||||
|
- Calendario mostraba días desalineados con días de la semana
|
||||||
|
- Enero 1, 2026 aparecía como Lunes en lugar de Jueves
|
||||||
|
- Grid del DatePicker no calculaba offset del primer día del mes
|
||||||
|
|
||||||
|
**Solución:**
|
||||||
|
- Agregar cálculo de offset usando getDay() del primer día del mes
|
||||||
|
- Ajustar para semana que empieza en Lunes: offset = dayOfWeek === 0 ? 6 : dayOfWeek - 1
|
||||||
|
- Agregar celdas vacías al inicio para padding correcto
|
||||||
|
- Para Enero 2026: Jueves (getDay=4) → offset=3 (3 celdas vacías antes del día 1)
|
||||||
|
|
||||||
|
**Archivos:**
|
||||||
|
- `components/booking/date-picker.tsx` - Cálculo de offset y padding cells
|
||||||
|
|
||||||
|
**Commits:**
|
||||||
|
- `dbac763` - fix: Correct calendar day offset in DatePicker component
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Corrección de Horarios de Negocio (Enero 18, 2026) ✅
|
||||||
|
**Problema:**
|
||||||
|
- Sistema de disponibilidad solo mostraba horarios 22:00-23:00
|
||||||
|
- Horarios de negocio (business_hours) configurados incorrectamente
|
||||||
|
- Función get_detailed_availability tenía problemas de timezone conversion
|
||||||
|
|
||||||
|
**Soluciones:**
|
||||||
|
|
||||||
|
1. **Migración de Horarios por Defecto:**
|
||||||
|
- Actualizar business_hours a horarios normales del salón
|
||||||
|
- Lunes a Viernes: 10:00-19:00
|
||||||
|
- Sábado: 10:00-18:00
|
||||||
|
- Domingo: Cerrado
|
||||||
|
|
||||||
|
2. **Mejora de Función de Disponibilidad:**
|
||||||
|
- Reescribir get_detailed_availability con make_timestamp()
|
||||||
|
- Eliminar concatenación de strings para construcción de timestamps
|
||||||
|
- Manejo correcto de timezone con AT TIME ZONE
|
||||||
|
- Mejorar NULL handling para business_hours y is_available_for_booking
|
||||||
|
|
||||||
|
**Archivos:**
|
||||||
|
- `supabase/migrations/20260118080000_fix_business_hours_default.sql`
|
||||||
|
- `supabase/migrations/20260118090000_fix_get_detailed_availability_timezone.sql`
|
||||||
|
|
||||||
|
**Commits:**
|
||||||
|
- `35d5cd0` - fix: Correct calendar offset and fix business hours showing only 22:00-23:00
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Página de Test Links (Enero 18, 2026) ✅
|
||||||
|
**Nueva Funcionalidad:**
|
||||||
|
- Página centralizada `/testlinks` con directorio completo del proyecto
|
||||||
|
- 21 páginas implementadas agrupadas por dominio
|
||||||
|
- 40+ API endpoints documentados con indicadores de método
|
||||||
|
- Badges de color para identificar FASE5 y FASE 6
|
||||||
|
- Diseño responsive con grid layout y efectos hover
|
||||||
|
|
||||||
|
**Archivos:**
|
||||||
|
- `app/testlinks/page.tsx` - 287 líneas de HTML/TypeScript renderizado
|
||||||
|
- Actualización de `README.md` con nueva sección 12: Test Links
|
||||||
|
|
||||||
|
**Commits:**
|
||||||
|
- `09180ff` - feat: Add testlinks page and update README with directory
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## PRÓXIMAS TAREAS PRIORITARIAS
|
## PRÓXIMAS TAREAS PRIORITARIAS
|
||||||
@@ -673,21 +739,21 @@ Tareas:
|
|||||||
-H "Authorization: Bearer YOUR_CRON_SECRET"
|
-H "Authorization: Bearer YOUR_CRON_SECRET"
|
||||||
```
|
```
|
||||||
|
|
||||||
### 🟡 ALTA - Documentación y Diseño (Timeline: 1 semana)
|
### 🟡 ALTA - Documentación y Diseño (Timeline: 1 semana)
|
||||||
|
|
||||||
4. **Actualizar documentación con especificaciones técnicas completas** - ~4 horas
|
4. ✅ **Actualizar documentación con especificaciones técnicas completas** - COMPLETADO
|
||||||
- Crear documento de especificaciones técnicas (`docs/APERATURE_SPECS.md`)
|
- Crear documento de especificaciones técnicas (`docs/APERATURE_SPECS.md`)
|
||||||
- Documentar respuesta a horas trabajadas (automático desde bookings)
|
- Documentar respuesta a horas trabajadas (automático desde bookings)
|
||||||
- Definir estructura de POS completa
|
- Definir estructura de POS completa
|
||||||
- Documentar sistema de múltiples cajeros
|
- Documentar sistema de múltiples cajeros
|
||||||
|
|
||||||
5. **Actualizar APERTURE_SQUARE_UI.md con Radix UI** - ~1.5 horas
|
5. ✅ **Actualizar APERTURE_SQUARE_UI.md con Radix UI** - COMPLETADO
|
||||||
- Agregar sección "Stack Técnico"
|
- Agregar sección "Stack Técnico"
|
||||||
- Documentar componentes Radix UI específicos
|
- Documentar componentes Radix UI específicos
|
||||||
- Ejemplos de uso de Radix con estilizado Square UI
|
- Ejemplos de uso de Radix con estilizado Square UI
|
||||||
- Guía de accesibilidad Radix (ARIA attributes, keyboard navigation)
|
- Guía de accesibilidad Radix (ARIA attributes, keyboard navigation)
|
||||||
|
|
||||||
6. **Actualizar API.md con rutas implementadas** - ~1 hora
|
6. ✅ **Actualizar API.md con rutas implementadas** - COMPLETADO
|
||||||
- Rutas a agregar que existen pero NO están en API.md:
|
- Rutas a agregar que existen pero NO están en API.md:
|
||||||
- `GET /api/availability/blocks`
|
- `GET /api/availability/blocks`
|
||||||
- `GET /api/public/availability`
|
- `GET /api/public/availability`
|
||||||
|
|||||||
Reference in New Issue
Block a user