fixes
This commit is contained in:
@ -7,9 +7,12 @@
|
||||
|
||||
CREATE TABLE account_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128) not null
|
||||
,description varchar(128) not null unique
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON account_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON account_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE tenant_t (
|
||||
id serial not null primary key
|
||||
,salutation varchar(128)
|
||||
@ -23,87 +26,136 @@ CREATE TABLE tenant_t (
|
||||
,phone1 varchar(64)
|
||||
,phone2 varchar(64)
|
||||
,iban varchar(64)
|
||||
,account integer not null references account_t (id)
|
||||
,account integer not null references account_t (id) unique
|
||||
,unique(firstname, lastname)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON tenant_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON tenant_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE premise_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128)
|
||||
,description varchar(128) unique
|
||||
,street varchar(128) not null
|
||||
,zip varchar(10) not null
|
||||
,city varchar(128) not null
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON premise_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON premise_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE flat_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128)
|
||||
,premise integer references premise_t (id)
|
||||
,area numeric(10,2) not null
|
||||
,flat_no integer
|
||||
,unique(description, premise)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON flat_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON flat_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE overhead_advance_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128)
|
||||
,description varchar(128) unique
|
||||
,amount numeric(10,4) not null
|
||||
,startdate date
|
||||
,enddate date
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON overhead_advance_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON overhead_advance_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE overhead_advance_flat_mapping_t (
|
||||
id serial not null primary key
|
||||
,overhead_advance integer not null references overhead_advance_t (id)
|
||||
,flat integer not null references flat_t (id)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT ON overhead_advance_flat_mapping_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON overhead_advance_flat_mapping_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE parking_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128)
|
||||
,premise integer references premise_t (id)
|
||||
,unique(description, premise)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON parking_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON parking_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE commercial_premise_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128)
|
||||
,premise integer references premise_t (id)
|
||||
,unique(description, premise)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON commercial_premise_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON commercial_premise_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE tenancy_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128)
|
||||
,description varchar(128) unique
|
||||
,tenant integer not null references tenant_t (id)
|
||||
,flat integer references flat_t (id)
|
||||
,parking integer references parking_t (id)
|
||||
,commercial_premise integer references commercial_premise_t (id)
|
||||
,startdate date not null
|
||||
,enddate date
|
||||
,constraint tenancy_only_one_object check ((flat is not null and parking is null and commercial_premise is null) or (flat is null and parking is not null and commercial_premise is null) or (flat is null and parking is null and commercial_premise is not null))
|
||||
,check ((flat is not null and parking is null and commercial_premise is null) or (flat is null and parking is not null and commercial_premise is null) or (flat is null and parking is null and commercial_premise is not null))
|
||||
,unique(flat, parking, commercial_premise, startdate)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON tenancy_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON tenancy_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE fee_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128)
|
||||
,description varchar(128) unique
|
||||
,amount numeric(10,2) not null
|
||||
,fee_type varchar(10) not null
|
||||
,startdate date
|
||||
,enddate date
|
||||
,constraint fee_fee_type check (fee_type = 'per_area' or fee_type = 'total')
|
||||
,check (fee_type = 'per_area' or fee_type = 'total')
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE ON fee_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON fee_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE tenancy_fee_mapping_t (
|
||||
id serial not null primary key
|
||||
,tenancy integer not null references tenancy_t (id)
|
||||
,fee integer not null references fee_t (id)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT ON tenancy_fee_mapping_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON tenancy_fee_mapping_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE account_entry_category_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128) not null unique
|
||||
,overhead_relevant boolean not null default true
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT ON account_entry_category_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON account_entry_category_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE account_entry_t (
|
||||
id serial not null primary key
|
||||
,description varchar(128) not null
|
||||
,account integer not null references account_t (id)
|
||||
,created_at timestamp not null default now()
|
||||
,amount numeric(10,2) not null
|
||||
,account_entry_category integer not null references account_entry_category_t (id)
|
||||
,unique(description, account, created_at)
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT ON account_entry_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON account_entry_t_id_seq TO hv2;
|
||||
|
||||
CREATE TABLE note_t (
|
||||
id serial not null primary key
|
||||
,created_at timestamp not null default now()
|
||||
@ -111,5 +163,9 @@ CREATE TABLE note_t (
|
||||
,note varchar(4096) not null
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT ON note_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON note_t_id_seq TO hv2;
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -14,6 +14,9 @@ CREATE TABLE ${table.name}_t (
|
||||
#if (('foreignkey' in $column) and $column.foreignkey)
|
||||
references ${column.name}_t (id) #slurp
|
||||
#end if
|
||||
#if (('unique' in $column) and $column.unique)
|
||||
unique #slurp
|
||||
#end if
|
||||
#if ('default' in $column)
|
||||
default $column.default #slurp
|
||||
#end if
|
||||
@ -26,6 +29,14 @@ CREATE TABLE ${table.name}_t (
|
||||
#end if
|
||||
);
|
||||
|
||||
GRANT SELECT, INSERT#slurp
|
||||
#if (('immutable' not in $table) or (not $table.immutable))
|
||||
, UPDATE#slurp
|
||||
#end if
|
||||
ON ${table.name}_t TO hv2;
|
||||
GRANT SELECT, UPDATE ON ${table.name}_t_id_seq TO hv2;
|
||||
|
||||
#end for
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user