Files
taller_automotriz/prisma/schema.prisma
T
Beldor c2b0e39b06
Deploy / deploy (push) Failing after 12m35s
feat: comentario al completar turno, Google Sheets corregido, scheduling 8:30-17 5 slots, mejoras responsive
- 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>
2026-06-22 21:57:27 -03:00

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
}