124 lines
4.4 KiB
SQL
124 lines
4.4 KiB
SQL
/*
|
|
Warnings:
|
|
|
|
- You are about to drop the column `advogadoResponsavelId` on the `processos` table. All the data in the column will be lost.
|
|
- You are about to drop the column `descricao` on the `processos` table. All the data in the column will be lost.
|
|
- You are about to drop the column `titulo` on the `processos` table. All the data in the column will be lost.
|
|
- The `status` column on the `processos` table would be dropped and recreated. This will lead to data loss if there is data in the column.
|
|
- A unique constraint covering the columns `[numero]` on the table `processos` will be added. If there are existing duplicate values, this will fail.
|
|
|
|
*/
|
|
-- CreateEnum
|
|
CREATE TYPE "NaturezaProcesso" AS ENUM ('CIVEL', 'CRIMINAL', 'PREVIDENCIARIO', 'TRABALHISTA', 'FAMILIA', 'TRIBUTARIO', 'ADMINISTRATIVO');
|
|
|
|
-- CreateEnum
|
|
CREATE TYPE "TipoParte" AS ENUM ('AUTOR', 'REU');
|
|
|
|
-- CreateEnum
|
|
CREATE TYPE "StatusProcesso" AS ENUM ('INICIAL', 'EM_ANDAMENTO', 'SUSPENSO', 'RECURSO', 'CONCLUSO', 'ARQUIVADO');
|
|
|
|
-- CreateEnum
|
|
CREATE TYPE "TipoDiligencia" AS ENUM ('CITACAO', 'INTIMACAO', 'NOTIFICACAO', 'PERICIA', 'OFICIAL_JUSTICA', 'CARTA_PRECATORIA', 'OUTROS');
|
|
|
|
-- CreateEnum
|
|
CREATE TYPE "TipoAudiencia" AS ENUM ('CONCILIACAO', 'INSTRUCAO', 'INICIAL', 'JULGAMENTO', 'MEDIACAO');
|
|
|
|
-- AlterTable
|
|
ALTER TABLE "processos" DROP COLUMN "advogadoResponsavelId",
|
|
DROP COLUMN "descricao",
|
|
DROP COLUMN "titulo",
|
|
ADD COLUMN "natureza" "NaturezaProcesso",
|
|
ADD COLUMN "nomeContraparte" VARCHAR(100),
|
|
ADD COLUMN "orgaoJulgador" VARCHAR(100),
|
|
ADD COLUMN "orgaoOrigem" VARCHAR(100),
|
|
ADD COLUMN "tipoParteCliente" "TipoParte",
|
|
ADD COLUMN "valorCausa" DECIMAL(15,2),
|
|
DROP COLUMN "status",
|
|
ADD COLUMN "status" "StatusProcesso" NOT NULL DEFAULT 'INICIAL';
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "documentos" (
|
|
"id" TEXT NOT NULL,
|
|
"processoId" TEXT NOT NULL,
|
|
"nome" VARCHAR(200) NOT NULL,
|
|
"tipo" VARCHAR(50) NOT NULL,
|
|
"url" TEXT NOT NULL,
|
|
"dataCriacao" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "documentos_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "diligencias" (
|
|
"id" TEXT NOT NULL,
|
|
"processoId" TEXT NOT NULL,
|
|
"tipo" "TipoDiligencia" NOT NULL,
|
|
"descricao" TEXT NOT NULL,
|
|
"dataLimite" TIMESTAMP(3) NOT NULL,
|
|
"status" TEXT DEFAULT 'PENDENTE',
|
|
"responsavel" VARCHAR(100),
|
|
"observacoes" TEXT,
|
|
"dataCriacao" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "diligencias_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "audiencias" (
|
|
"id" TEXT NOT NULL,
|
|
"processoId" TEXT NOT NULL,
|
|
"tipo" "TipoAudiencia" NOT NULL,
|
|
"data" TIMESTAMP(3) NOT NULL,
|
|
"local" VARCHAR(200) NOT NULL,
|
|
"modalidade" TEXT DEFAULT 'PRESENCIAL',
|
|
"linkVirtual" TEXT,
|
|
"observacoes" TEXT,
|
|
"status" TEXT DEFAULT 'AGENDADA',
|
|
"dataCriacao" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "audiencias_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "movimentacoes" (
|
|
"id" TEXT NOT NULL,
|
|
"processoId" TEXT NOT NULL,
|
|
"data" TIMESTAMP(3) NOT NULL,
|
|
"descricao" TEXT NOT NULL,
|
|
"tipo" VARCHAR(50) NOT NULL,
|
|
"documento" TEXT,
|
|
"dataCriacao" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "movimentacoes_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "documentos_processoId_idx" ON "documentos"("processoId");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "diligencias_dataLimite_idx" ON "diligencias"("dataLimite");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "audiencias_data_idx" ON "audiencias"("data");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "movimentacoes_data_idx" ON "movimentacoes"("data");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "processos_numero_key" ON "processos"("numero");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "processos_numero_idx" ON "processos"("numero");
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "documentos" ADD CONSTRAINT "documentos_processoId_fkey" FOREIGN KEY ("processoId") REFERENCES "processos"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "diligencias" ADD CONSTRAINT "diligencias_processoId_fkey" FOREIGN KEY ("processoId") REFERENCES "processos"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "audiencias" ADD CONSTRAINT "audiencias_processoId_fkey" FOREIGN KEY ("processoId") REFERENCES "processos"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "movimentacoes" ADD CONSTRAINT "movimentacoes_processoId_fkey" FOREIGN KEY ("processoId") REFERENCES "processos"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|