c2b0e39b06
Deploy / deploy (push) Failing after 12m35s
- Agrega campo comentario opcional al marcar turno COMPLETADO (textarea en UI, guardado en DB, escrito en col N del sheet) - Corrige mapeo Google Sheets: email→I, telefono→J, vacíos en K-M, comentario→N - Actualiza scheduling: inicio 8:30, fin 17:00, máx 5 turnos simultáneos - entrypoint.sh: migrate deploy → db push para aplicar cambios de schema automáticamente - Historial cliente: tarjetas visuales con header, fecha y observaciones destacadas - Dashboard/turnos cliente: mejoras responsive mobile - Fix display duración: 0.5 hs → "30 min" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
106 lines
2.5 KiB
Plaintext
106 lines
2.5 KiB
Plaintext
generator client {
|
|
provider = "prisma-client-js"
|
|
}
|
|
|
|
datasource db {
|
|
provider = "postgresql"
|
|
}
|
|
|
|
model Cliente {
|
|
id String @id @default(cuid())
|
|
email String @unique
|
|
nombre String
|
|
apellido String
|
|
telefono String
|
|
createdAt DateTime @default(now())
|
|
|
|
autos Auto[]
|
|
turnos Turno[]
|
|
magicTokens MagicToken[]
|
|
}
|
|
|
|
model Auto {
|
|
id String @id @default(cuid())
|
|
clienteId String
|
|
patente String @unique
|
|
marca String
|
|
modelo String
|
|
anio Int
|
|
nroChasis String?
|
|
createdAt DateTime @default(now())
|
|
|
|
cliente Cliente @relation(fields: [clienteId], references: [id])
|
|
turnos Turno[]
|
|
historial HistorialServicio[]
|
|
}
|
|
|
|
model TipoServicio {
|
|
id String @id @default(cuid())
|
|
nombre String
|
|
duracionHoras Float
|
|
activo Boolean @default(true)
|
|
|
|
turnos Turno[]
|
|
historial HistorialServicio[]
|
|
}
|
|
|
|
model Turno {
|
|
id String @id @default(cuid())
|
|
clienteId String
|
|
autoId String
|
|
tipoServicioId String
|
|
fechaInicio DateTime
|
|
fechaFin DateTime
|
|
kilometros Int
|
|
estado EstadoTurno @default(PENDIENTE)
|
|
comentario String?
|
|
createdAt DateTime @default(now())
|
|
|
|
cliente Cliente @relation(fields: [clienteId], references: [id])
|
|
auto Auto @relation(fields: [autoId], references: [id])
|
|
tipoServicio TipoServicio @relation(fields: [tipoServicioId], references: [id])
|
|
}
|
|
|
|
model HistorialServicio {
|
|
id String @id @default(cuid())
|
|
autoId String
|
|
adminId String
|
|
tipoServicioId String?
|
|
descripcion String
|
|
observaciones String?
|
|
fechaRealizado DateTime
|
|
createdAt DateTime @default(now())
|
|
|
|
auto Auto @relation(fields: [autoId], references: [id])
|
|
admin Admin @relation(fields: [adminId], references: [id])
|
|
tipoServicio TipoServicio? @relation(fields: [tipoServicioId], references: [id])
|
|
}
|
|
|
|
model Admin {
|
|
id String @id @default(cuid())
|
|
email String @unique
|
|
nombre String
|
|
passwordHash String
|
|
createdAt DateTime @default(now())
|
|
|
|
historial HistorialServicio[]
|
|
}
|
|
|
|
model MagicToken {
|
|
id String @id @default(cuid())
|
|
clienteId String
|
|
token String @unique
|
|
expiresAt DateTime
|
|
usado Boolean @default(false)
|
|
createdAt DateTime @default(now())
|
|
|
|
cliente Cliente @relation(fields: [clienteId], references: [id])
|
|
}
|
|
|
|
enum EstadoTurno {
|
|
PENDIENTE
|
|
CONFIRMADO
|
|
CANCELADO
|
|
COMPLETADO
|
|
}
|