27 lines
1.2 KiB
SQL
27 lines
1.2 KiB
SQL
-- CreateEnum
|
|
CREATE TYPE "StatusAgendamento" AS ENUM ('AGENDADO', 'CONFIRMADO', 'CANCELADO', 'REALIZADO', 'NAO_COMPARECEU');
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "agendamentos_atendimento" (
|
|
"id" UUID NOT NULL DEFAULT gen_random_uuid(),
|
|
"clienteId" UUID NOT NULL,
|
|
"usuarioId" UUID NOT NULL,
|
|
"data" TIMESTAMP NOT NULL,
|
|
"observacoes" TEXT,
|
|
"status" "StatusAgendamento" NOT NULL DEFAULT 'AGENDADO',
|
|
"criadoEm" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"atualizadoEm" TIMESTAMP(3) NOT NULL,
|
|
"atendimentoId" UUID,
|
|
|
|
CONSTRAINT "agendamentos_atendimento_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "agendamentos_atendimento" ADD CONSTRAINT "agendamentos_atendimento_clienteId_fkey" FOREIGN KEY ("clienteId") REFERENCES "clientes"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "agendamentos_atendimento" ADD CONSTRAINT "agendamentos_atendimento_usuarioId_fkey" FOREIGN KEY ("usuarioId") REFERENCES "usuarios"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "agendamentos_atendimento" ADD CONSTRAINT "agendamentos_atendimento_atendimentoId_fkey" FOREIGN KEY ("atendimentoId") REFERENCES "atendimentos"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|