65 lines
3.4 KiB
SQL
65 lines
3.4 KiB
SQL
-- apply changes
|
|
create table incoming_inventory (
|
|
sys_pk bigint generated by default as identity not null,
|
|
deleted_on timestamp,
|
|
current_approval_level integer default 0 not null,
|
|
required_approval_levels integer default 0 not null,
|
|
date date,
|
|
vendor_bill_amount float not null,
|
|
vendor_sys_pk bigint,
|
|
deleted boolean default false not null,
|
|
version integer default 1 not null,
|
|
created_at timestamp default 'now()' not null,
|
|
modified_at timestamp default 'now()' not null,
|
|
deleted_by varchar(255),
|
|
approval_status varchar(8) default 'APPROVED' not null,
|
|
tags varchar[] default '{}' not null,
|
|
comments jsonb default '[]' not null,
|
|
tenant_id varchar(255) not null,
|
|
mdn varchar(255) not null,
|
|
vendor_bil_num varchar(255) not null,
|
|
vehicle varchar(255) not null,
|
|
products jsonb,
|
|
created_by varchar(255) not null,
|
|
modified_by varchar(255) not null,
|
|
constraint ck_incoming_inventory_approval_status check ( approval_status in ('PENDING','APPROVED','REJECTED')),
|
|
constraint pk_incoming_inventory primary key (sys_pk)
|
|
);
|
|
|
|
create table outgoing_inventory (
|
|
sys_pk bigint generated by default as identity not null,
|
|
deleted_on timestamp,
|
|
current_approval_level integer default 0 not null,
|
|
required_approval_levels integer default 0 not null,
|
|
date date,
|
|
deleted boolean default false not null,
|
|
version integer default 1 not null,
|
|
created_at timestamp default 'now()' not null,
|
|
modified_at timestamp default 'now()' not null,
|
|
deleted_by varchar(255),
|
|
approval_status varchar(8) default 'APPROVED' not null,
|
|
tags varchar[] default '{}' not null,
|
|
comments jsonb default '[]' not null,
|
|
tenant_id varchar(255) not null,
|
|
mrn varchar(255) not null,
|
|
purpose varchar(255),
|
|
out_mode varchar(7),
|
|
person varchar(255),
|
|
vehicle varchar(255),
|
|
created_by varchar(255) not null,
|
|
modified_by varchar(255) not null,
|
|
constraint ck_outgoing_inventory_approval_status check ( approval_status in ('PENDING','APPROVED','REJECTED')),
|
|
constraint ck_outgoing_inventory_out_mode check ( out_mode in ('PERSON','VEHICLE','ALL')),
|
|
constraint pk_outgoing_inventory primary key (sys_pk)
|
|
);
|
|
|
|
-- apply alter tables
|
|
alter table product add column if not exists type varchar(12);
|
|
alter table quotation add column if not exists taxes_included boolean;
|
|
-- apply post alter
|
|
alter table product add constraint ck_product_type check ( type in ('RAW_MATERIAL'));
|
|
-- foreign keys and indices
|
|
create index ix_incoming_inventory_vendor_sys_pk on incoming_inventory (vendor_sys_pk);
|
|
alter table incoming_inventory add constraint fk_incoming_inventory_vendor_sys_pk foreign key (vendor_sys_pk) references vendor (sys_pk) on delete restrict on update restrict;
|
|
|