mirror of
https://github.com/marcogll/AnchorOS.git
synced 2026-03-15 14:24:27 +00:00
feat: implement customer registration flow and business hours system
Major changes: - Add customer registration with email/phone lookup (app/booking/registro) - Add customers API endpoint (app/api/customers/route) - Implement business hours for locations (mon-fri 10-7, sat 10-6, sun closed) - Fix availability function type casting issues - Add business hours utilities (lib/utils/business-hours.ts) - Update Location type to include business_hours JSONB - Add mock payment component for testing - Remove Supabase auth from booking flow - Fix /cita redirect path in booking flow Database migrations: - Add category column to services table - Add business_hours JSONB column to locations table - Fix availability functions with proper type casting - Update get_detailed_availability to use business_hours Features: - Customer lookup by email or phone - Auto-redirect to registration if customer not found - Pre-fill customer data if exists - Business hours per day of week - Location-specific opening/closing times
This commit is contained in:
@@ -8,6 +8,22 @@ export type InvitationStatus = 'pending' | 'used' | 'expired'
|
||||
export type ResourceType = 'station' | 'room' | 'equipment'
|
||||
export type AuditAction = 'create' | 'update' | 'delete' | 'reset_invitations' | 'payment' | 'status_change'
|
||||
|
||||
export interface DayHours {
|
||||
open: string
|
||||
close: string
|
||||
is_closed: boolean
|
||||
}
|
||||
|
||||
export interface BusinessHours {
|
||||
monday: DayHours
|
||||
tuesday: DayHours
|
||||
wednesday: DayHours
|
||||
thursday: DayHours
|
||||
friday: DayHours
|
||||
saturday: DayHours
|
||||
sunday: DayHours
|
||||
}
|
||||
|
||||
/** Represents a salon location with timezone and contact info */
|
||||
export interface Location {
|
||||
id: string
|
||||
@@ -16,6 +32,7 @@ export interface Location {
|
||||
address?: string
|
||||
phone?: string
|
||||
is_active: boolean
|
||||
business_hours?: BusinessHours
|
||||
created_at: string
|
||||
updated_at: string
|
||||
}
|
||||
@@ -151,8 +168,8 @@ export type Database = {
|
||||
Tables: {
|
||||
locations: {
|
||||
Row: Location
|
||||
Insert: Omit<Location, 'id' | 'created_at' | 'updated_at'>
|
||||
Update: Partial<Omit<Location, 'id' | 'created_at'>>
|
||||
Insert: Omit<Location, 'id' | 'created_at' | 'updated_at'> & { business_hours?: BusinessHours }
|
||||
Update: Partial<Omit<Location, 'id' | 'created_at'> & { business_hours?: BusinessHours }>
|
||||
}
|
||||
resources: {
|
||||
Row: Resource
|
||||
|
||||
Reference in New Issue
Block a user