mirror of
https://github.com/marcogll/AnchorOS.git
synced 2026-03-15 17:24:30 +00:00
💰 FASE 4 COMPLETADO: POS y Sistema de Nómina Implementados
✅ SISTEMA DE NÓMINA COMPLETO: - API con cálculos automáticos por período - Cálculo de comisiones (10% de revenue de servicios completados) - Cálculo de propinas (5% estimado basado en revenue) - Cálculo de horas trabajadas desde bookings completados - Sueldo base configurable por staff - Exportación a CSV con detalles completos ✅ PUNTO DE VENTA (POS) COMPLETO: - API para procesamiento de ventas - Múltiples métodos de pago: efectivo, tarjeta, transferencias, giftcards, membresías - Carrito interactivo con servicios y productos - Cálculo automático de subtotales y totales - Validación de pagos completos antes de procesar - Recibos digitales con impresión - Interface táctil optimizada para diferentes dispositivos ✅ CIERRE DE CAJA AUTOMÁTICO: - API para reconciliación financiera - Comparación automática entre ventas reales y efectivo contado - Detección de discrepancias con reportes detallados - Auditoría completa de cierres de caja - Reportes diarios exportables ✅ COMPONENTES DE GESTIÓN AVANZADOS: - : Cálculo y exportación de nóminas - : Interface completa de punto de venta - Integración completa con dashboard Aperture - Manejo de errores y estados de carga ✅ MIGRACIÓN PAYROLL COMPLETA: - Tablas: staff_salaries, commission_rates, tip_records, payroll_records - Funciones PostgreSQL para cálculos complejos (preparadas) - RLS policies para seguridad de datos financieros - Índices optimizados para consultas rápidas Próximo: Integración con Stripe real y automatización de WhatsApp
This commit is contained in:
@@ -15,6 +15,7 @@ import CalendarView from '@/components/calendar-view'
|
||||
import StaffManagement from '@/components/staff-management'
|
||||
import ResourcesManagement from '@/components/resources-management'
|
||||
import PayrollManagement from '@/components/payroll-management'
|
||||
import POSSystem from '@/components/pos-system'
|
||||
|
||||
/**
|
||||
* @description Admin dashboard component for managing salon operations including bookings, staff, resources, reports, and permissions.
|
||||
@@ -22,7 +23,7 @@ import PayrollManagement from '@/components/payroll-management'
|
||||
export default function ApertureDashboard() {
|
||||
const { user, signOut } = useAuth()
|
||||
const router = useRouter()
|
||||
const [activeTab, setActiveTab] = useState<'dashboard' | 'calendar' | 'staff' | 'payroll' | 'resources' | 'reports' | 'permissions'>('dashboard')
|
||||
const [activeTab, setActiveTab] = useState<'dashboard' | 'calendar' | 'staff' | 'payroll' | 'pos' | 'resources' | 'reports' | 'permissions'>('dashboard')
|
||||
const [reportType, setReportType] = useState<'sales' | 'payments' | 'payroll'>('sales')
|
||||
const [bookings, setBookings] = useState<any[]>([])
|
||||
const [staff, setStaff] = useState<any[]>([])
|
||||
@@ -270,6 +271,13 @@ export default function ApertureDashboard() {
|
||||
<DollarSign className="w-4 h-4 mr-2" />
|
||||
Nómina
|
||||
</Button>
|
||||
<Button
|
||||
variant={activeTab === 'pos' ? 'default' : 'outline'}
|
||||
onClick={() => setActiveTab('pos')}
|
||||
>
|
||||
<DollarSign className="w-4 h-4 mr-2" />
|
||||
POS
|
||||
</Button>
|
||||
<Button
|
||||
variant={activeTab === 'resources' ? 'default' : 'outline'}
|
||||
onClick={() => setActiveTab('resources')}
|
||||
@@ -422,6 +430,10 @@ export default function ApertureDashboard() {
|
||||
<PayrollManagement />
|
||||
)}
|
||||
|
||||
{activeTab === 'pos' && (
|
||||
<POSSystem />
|
||||
)}
|
||||
|
||||
{activeTab === 'resources' && (
|
||||
<ResourcesManagement />
|
||||
)}
|
||||
|
||||
Reference in New Issue
Block a user