first commit
This commit is contained in:
@@ -0,0 +1,101 @@
|
||||
DROP SCHEMA IF EXISTS shared CASCADE;
|
||||
CREATE SCHEMA IF NOT EXISTS shared;
|
||||
CREATE TABLE IF NOT EXISTS shared.usuario (
|
||||
"id" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
|
||||
"uuid" UUID NOT NULL UNIQUE,
|
||||
"is_active" SMALLINT NOT NULL DEFAULT 1,
|
||||
"is_root" SMALLINT NOT NULL DEFAULT 0,
|
||||
"nome_completo" VARCHAR(150) NOT NULL,
|
||||
"nome_usuario" VARCHAR(50) NOT NULL UNIQUE,
|
||||
"email" VARCHAR(255) NOT NULL UNIQUE,
|
||||
"senha_hash" VARCHAR(255) NOT NULL,
|
||||
"created_at" TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"updated_at" TIMESTAMP DEFAULT NULL,
|
||||
"deleted_at" TIMESTAMP DEFAULT NULL,
|
||||
PRIMARY KEY("id")
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS shared.empresa (
|
||||
"id" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
|
||||
"uuid" UUID NOT NULL UNIQUE,
|
||||
"is_active" SMALLINT NOT NULL DEFAULT 1,
|
||||
"nome_empresarial" VARCHAR(150) NOT NULL,
|
||||
"nome_fantasia" VARCHAR(60) DEFAULT NULL,
|
||||
"tipo" VARCHAR(50) NOT NULL DEFAULT 'MATRIZ',
|
||||
"matriz_id" INTEGER DEFAULT NULL,
|
||||
"document_cnpj" CHAR(14) NOT NULL UNIQUE,
|
||||
"document_ie" CHAR(14) DEFAULT NULL,
|
||||
"document_im" CHAR(14) DEFAULT NULL,
|
||||
"regime_tributario" CHAR(1) NOT NULL,
|
||||
"end_cep" VARCHAR(8) NOT NULL,
|
||||
"end_ibge" VARCHAR(8) NOT NULL,
|
||||
"end_logradouro" VARCHAR(150) NOT NULL,
|
||||
"end_numero" VARCHAR(20) NOT NULL,
|
||||
"end_complemento" VARCHAR(50) DEFAULT NULL,
|
||||
"end_bairro" VARCHAR(50) NOT NULL,
|
||||
"end_cidade" VARCHAR(150) NOT NULL,
|
||||
"end_uf" CHAR(2) NOT NULL,
|
||||
"created_at" TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"updated_at" TIMESTAMP DEFAULT NULL,
|
||||
"deleted_at" TIMESTAMP DEFAULT NULL,
|
||||
PRIMARY KEY("id")
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS shared.usuario_empresa (
|
||||
"usuario_id" INTEGER NOT NULL,
|
||||
"empresa_id" INTEGER NOT NULL,
|
||||
PRIMARY KEY("usuario_id", "empresa_id")
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS shared.usuario_sessao (
|
||||
"id" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
|
||||
"uuid" UUID NOT NULL UNIQUE,
|
||||
"usuario_id" INTEGER NOT NULL,
|
||||
"user_agent" TEXT DEFAULT NULL,
|
||||
"ip_address" VARCHAR(45) DEFAULT NULL,
|
||||
"created_at" TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"revoked_at" TIMESTAMP DEFAULT NULL,
|
||||
PRIMARY KEY("id")
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS shared.contato (
|
||||
"id" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
|
||||
"uuid" UUID NOT NULL UNIQUE,
|
||||
"empresa_id" INTEGER NOT NULL,
|
||||
"is_active" SMALLINT NOT NULL DEFAULT 1,
|
||||
"tipo" VARCHAR(50) NOT NULL,
|
||||
"nome_empresarial" VARCHAR(150) NOT NULL,
|
||||
"nome_fantasia" VARCHAR(60) DEFAULT NULL,
|
||||
"personalidade" CHAR(2) NOT NULL DEFAULT 'PJ',
|
||||
"document_cpf" CHAR(11) DEFAULT NULL,
|
||||
"document_cnpj" CHAR(14) DEFAULT NULL,
|
||||
"regime_tributario" CHAR(1) DEFAULT NULL,
|
||||
"contribuinte_icms" CHAR(1) DEFAULT NULL,
|
||||
"orgao_publico" VARCHAR(9) NOT NULL DEFAULT 'NAO',
|
||||
"document_ie" CHAR(14) DEFAULT NULL,
|
||||
"document_im" CHAR(14) DEFAULT NULL,
|
||||
"document_is" CHAR(9) DEFAULT NULL,
|
||||
"end_pais" VARCHAR(255) DEFAULT NULL,
|
||||
"end_cep" VARCHAR(8) NOT NULL,
|
||||
"end_ibge" VARCHAR(8) DEFAULT NULL,
|
||||
"end_logradouro" VARCHAR(150) NOT NULL,
|
||||
"end_numero" VARCHAR(20) NOT NULL,
|
||||
"end_complemento" VARCHAR(50) DEFAULT NULL,
|
||||
"end_bairro" VARCHAR(50) NOT NULL,
|
||||
"end_cidade" VARCHAR(150) NOT NULL,
|
||||
"end_uf" CHAR(2) NOT NULL,
|
||||
"info_email" VARCHAR(255) DEFAULT NULL,
|
||||
"info_email_nfe" VARCHAR(80) DEFAULT NULL,
|
||||
"info_observacao" TEXT DEFAULT NULL,
|
||||
"info_telefone" VARCHAR(11) DEFAULT NULL,
|
||||
"info_uso_consumo_ibs_cbs" CHAR(1) NOT NULL DEFAULT '0',
|
||||
"created_at" TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"updated_at" TIMESTAMP DEFAULT NULL,
|
||||
"deleted_at" TIMESTAMP DEFAULT NULL,
|
||||
PRIMARY KEY("id")
|
||||
);
|
||||
|
||||
ALTER TABLE shared.usuario_empresa ADD FOREIGN KEY("usuario_id") REFERENCES shared.usuario("id") ON UPDATE NO ACTION ON DELETE NO ACTION;
|
||||
ALTER TABLE shared.usuario_empresa ADD FOREIGN KEY("empresa_id") REFERENCES shared.empresa("id") ON UPDATE NO ACTION ON DELETE NO ACTION;
|
||||
ALTER TABLE shared.usuario_sessao ADD FOREIGN KEY("usuario_id") REFERENCES shared.usuario("id") ON UPDATE NO ACTION ON DELETE NO ACTION;
|
||||
ALTER TABLE shared.contato ADD FOREIGN KEY("empresa_id") REFERENCES shared.empresa("id") ON UPDATE NO ACTION ON DELETE NO ACTION;
|
||||
Reference in New Issue
Block a user