initial db

This commit is contained in:
ctengiz
2024-04-14 19:43:23 +03:00
parent e9d8383eaa
commit 19d9d24530
4 changed files with 30 additions and 0 deletions

View File

@@ -2,6 +2,9 @@ create domain dmn_code as text not null;
create domain dmn_money as numeric(22, 4); create domain dmn_money as numeric(22, 4);
create domain dmn_qty numeric(18, 6); create domain dmn_qty numeric(18, 6);
create domain dmn_rate as numeric(5, 2); create domain dmn_rate as numeric(5, 2);
create domain dmn_clid bigint not null check ( value > 0 );
create domain dmn_usrid bigint not null check ( value > 0 );
create function iif(condition boolean, true_result anyelement, false_result anyelement) returns anyelement create function iif(condition boolean, true_result anyelement, false_result anyelement) returns anyelement
immutable immutable

View File

@@ -0,0 +1,26 @@
create table company (
clid dmn_clid,
id bigint generated by default as identity PRIMARY key,
code dmn_code,
title text,
is_active boolean default true not null,
notes text,
zlins_dttm timestamptz,
zlupd_dttm timestamptz,
constraint uq_company unique (clid, code)
);
CREATE TRIGGER zl_company before INSERT or UPDATE ON company
FOR EACH ROW EXECUTE FUNCTION zllog();
create table company_usr (
id bigint generated by default as identity PRIMARY key,
company_id bigint not null,
usr_id dmn_usrid,
constraint uq_company_usr unique (company_id, usr_id),
constraint fk_company_usr_company foreign key (company_id)
references company(id) on update cascade on delete cascade
);

View File

@@ -0,0 +1 @@
alter table company add tmpl jsonb;

0
db/sqls/company.sql Normal file
View File