BEGIN; CREATE TABLE "anuencias_tecnicas_proyectos" ( "id" serial NOT NULL PRIMARY KEY, "fecha_registro" timestamp with time zone NOT NULL, "fecha_ultimo_cambio" timestamp with time zone NOT NULL, "activo" boolean NOT NULL, "usuario_id" integer NOT NULL REFERENCES "auth_user" ("id") DEFERRABLE INITIALLY DEFERRED, "clave" varchar(10) NOT NULL, "nombre" varchar(150) NOT NULL, "descripcion" varchar(100) NOT NULL, UNIQUE ("clave", "nombre") ) ; CREATE TABLE "anuencias_tecnicas_partidas_partidas" ( "id" serial NOT NULL PRIMARY KEY, "partidas_id" integer NOT NULL, "proyectos_id" integer NOT NULL REFERENCES "anuencias_tecnicas_proyectos" ("id") DEFERRABLE INITIALLY DEFERRED, UNIQUE ("partidas_id", "proyectos_id") ) ; CREATE TABLE "anuencias_tecnicas_partidas" ( "id" serial NOT NULL PRIMARY KEY, "fecha_registro" timestamp with time zone NOT NULL, "fecha_ultimo_cambio" timestamp with time zone NOT NULL, "activo" boolean NOT NULL, "usuario_id" integer NOT NULL REFERENCES "auth_user" ("id") DEFERRABLE INITIALLY DEFERRED, "clave" varchar(10) NOT NULL, "nombre" varchar(150) NOT NULL, "descripcion" varchar(100) NOT NULL ) ; ALTER TABLE "anuencias_tecnicas_partidas_partidas" ADD CONSTRAINT "partidas_id_refs_id_9d24cc64" FOREIGN KEY ("partidas_id") REFERENCES "anuencias_tecnicas_partidas" ("id") DEFERRABLE INITIALLY DEFERRED; CREATE TABLE "anuencias_tecnicas_estatus" ( "id" serial NOT NULL PRIMARY KEY, "fecha_registro" timestamp with time zone NOT NULL, "fecha_ultimo_cambio" timestamp with time zone NOT NULL, "activo" boolean NOT NULL, "usuario_id" integer NOT NULL REFERENCES "auth_user" ("id") DEFERRABLE INITIALLY DEFERRED, "clave" varchar(10) NOT NULL, "nombre" varchar(150) NOT NULL, "descripcion" varchar(100) NOT NULL, "color" varchar(17) NOT NULL, "secuencia" integer NOT NULL ) ; CREATE TABLE "anuencias_tecnicas_catalogodependencias" ( "id" serial NOT NULL PRIMARY KEY, "clave" varchar(150) NOT NULL, "nombre" varchar(150) NOT NULL ) ; CREATE TABLE "anuencias_tecnicas_anuencia_datos" ( "id" serial NOT NULL PRIMARY KEY, "fecha_registro" timestamp with time zone NOT NULL, "fecha_ultimo_cambio" timestamp with time zone NOT NULL, "activo" boolean NOT NULL, "usuario_id" integer NOT NULL REFERENCES "auth_user" ("id") DEFERRABLE INITIALLY DEFERRED, "fecha_solicitud" timestamp with time zone, "fecha_recepcion" timestamp with time zone, "dependencias_id" integer NOT NULL REFERENCES "anuencias_tecnicas_catalogodependencias" ("id") DEFERRABLE INITIALLY DEFERRED, "no_oficio" varchar(70) NOT NULL, "contacto_tecnico" varchar(150) NOT NULL, "telefono_fax" varchar(15) NOT NULL, "extension" varchar(6), "correo_electronico" varchar(30), "no_requisicion" varchar(15), "estatus_id" integer NOT NULL REFERENCES "anuencias_tecnicas_estatus" ("id") DEFERRABLE INITIALLY DEFERRED, "autorizacion_presupuesto" varchar(100), "autorizacion_tecnica" varchar(100), "cotizaciones" varchar(100), "justificacion" text NOT NULL ) ; CREATE TABLE "anuencias_tecnicas_addproyectos" ( "id" serial NOT NULL PRIMARY KEY, "clave" varchar(100) NOT NULL, "nombre" varchar(200) NOT NULL ) ; CREATE TABLE "anuencias_tecnicas_addpartidas_proyectos" ( "id" serial NOT NULL PRIMARY KEY, "addpartidas_id" integer NOT NULL, "addproyectos_id" integer NOT NULL REFERENCES "anuencias_tecnicas_addproyectos" ("id") DEFERRABLE INITIALLY DEFERRED, UNIQUE ("addpartidas_id", "addproyectos_id") ) ; CREATE TABLE "anuencias_tecnicas_addpartidas" ( "id" serial NOT NULL PRIMARY KEY, "clave" varchar(100) NOT NULL, "nombre" varchar(200) NOT NULL ) ; ALTER TABLE "anuencias_tecnicas_addpartidas_proyectos" ADD CONSTRAINT "addpartidas_id_refs_id_7ef15694" FOREIGN KEY ("addpartidas_id") REFERENCES "anuencias_tecnicas_addpartidas" ("id") DEFERRABLE INITIALLY DEFERRED; CREATE TABLE "anuencias_tecnicas_anuencia_detalle" ( "id" serial NOT NULL PRIMARY KEY, "fecha_registro" timestamp with time zone NOT NULL, "fecha_ultimo_cambio" timestamp with time zone NOT NULL, "activo" boolean NOT NULL, "usuario_id" integer NOT NULL REFERENCES "auth_user" ("id") DEFERRABLE INITIALLY DEFERRED, "anuencia_id" integer NOT NULL REFERENCES "anuencias_tecnicas_anuencia_datos" ("id") DEFERRABLE INITIALLY DEFERRED, "proyecto_id" integer NOT NULL REFERENCES "anuencias_tecnicas_addproyectos" ("id") DEFERRABLE INITIALLY DEFERRED, "partida_id" integer NOT NULL REFERENCES "anuencias_tecnicas_addpartidas" ("id") DEFERRABLE INITIALLY DEFERRED, "no_lote" varchar(3), "articulo" varchar(300) NOT NULL, "categoria" varchar(100) NOT NULL, "descripcion" text NOT NULL, "cantidad" integer NOT NULL, "precio" numeric(20, 2) NOT NULL, "url" varchar(200), "autorizado" boolean NOT NULL, "observaciones" text, UNIQUE ("proyecto_id", "partida_id", "articulo", "anuencia_id") ) ; CREATE TABLE "anuencias_tecnicas_revision" ( "id" serial NOT NULL PRIMARY KEY, "fecha_registro" timestamp with time zone NOT NULL, "fecha_ultimo_cambio" timestamp with time zone NOT NULL, "activo" boolean NOT NULL, "usuario_id" integer NOT NULL REFERENCES "auth_user" ("id") DEFERRABLE INITIALLY DEFERRED, "anuencia_id" integer NOT NULL REFERENCES "anuencias_tecnicas_anuencia_datos" ("id") DEFERRABLE INITIALLY DEFERRED ) ; CREATE TABLE "anuencias_tecnicas_autorizacion" ( "id" serial NOT NULL PRIMARY KEY, "fecha_registro" timestamp with time zone NOT NULL, "fecha_ultimo_cambio" timestamp with time zone NOT NULL, "activo" boolean NOT NULL, "usuario_id" integer NOT NULL REFERENCES "auth_user" ("id") DEFERRABLE INITIALLY DEFERRED, "anuencia_id" integer NOT NULL REFERENCES "anuencias_tecnicas_anuencia_datos" ("id") DEFERRABLE INITIALLY DEFERRED ) ; CREATE INDEX "anuencias_tecnicas_proyectos_usuario_id" ON "anuencias_tecnicas_proyectos" ("usuario_id"); CREATE INDEX "anuencias_tecnicas_partidas_usuario_id" ON "anuencias_tecnicas_partidas" ("usuario_id"); CREATE INDEX "anuencias_tecnicas_estatus_usuario_id" ON "anuencias_tecnicas_estatus" ("usuario_id"); CREATE INDEX "anuencias_tecnicas_anuencia_datos_usuario_id" ON "anuencias_tecnicas_anuencia_datos" ("usuario_id"); CREATE INDEX "anuencias_tecnicas_anuencia_datos_dependencias_id" ON "anuencias_tecnicas_anuencia_datos" ("dependencias_id"); CREATE INDEX "anuencias_tecnicas_anuencia_datos_estatus_id" ON "anuencias_tecnicas_anuencia_datos" ("estatus_id"); CREATE INDEX "anuencias_tecnicas_anuencia_detalle_usuario_id" ON "anuencias_tecnicas_anuencia_detalle" ("usuario_id"); CREATE INDEX "anuencias_tecnicas_anuencia_detalle_anuencia_id" ON "anuencias_tecnicas_anuencia_detalle" ("anuencia_id"); CREATE INDEX "anuencias_tecnicas_anuencia_detalle_proyecto_id" ON "anuencias_tecnicas_anuencia_detalle" ("proyecto_id"); CREATE INDEX "anuencias_tecnicas_anuencia_detalle_partida_id" ON "anuencias_tecnicas_anuencia_detalle" ("partida_id"); CREATE INDEX "anuencias_tecnicas_revision_usuario_id" ON "anuencias_tecnicas_revision" ("usuario_id"); CREATE INDEX "anuencias_tecnicas_revision_anuencia_id" ON "anuencias_tecnicas_revision" ("anuencia_id"); CREATE INDEX "anuencias_tecnicas_autorizacion_usuario_id" ON "anuencias_tecnicas_autorizacion" ("usuario_id"); CREATE INDEX "anuencias_tecnicas_autorizacion_anuencia_id" ON "anuencias_tecnicas_autorizacion" ("anuencia_id"); COMMIT;