blob: c42eb0f596207eb3b5af5c05872ff3b948f8cc75 [file] [log] [blame]
-- ---------------------------------------------------------------------------------------------------------------
-- This script creates tables for the ONAP Operations Manager Dashboard web app.
-- Same tables for both internal and external use.
-- ------------------------------------------------------------------------------------------------------------------
-- Assumes no schema name for maximum flexibility
-- CREATE SCHEMA (schema name);
-- SET SEARCH_PATH = (schema name);
create table fn_lu_timezone (
timezone_id serial primary key,
timezone_name character varying(100) not null,
timezone_value character varying(100) not null
);
-- this sequence is named in Fusion.hbm.xml
create sequence seq_fn_user;
create table fn_user (
user_id serial primary key,
org_id int,
manager_id int,
first_name character varying(25),
middle_name character varying(25),
last_name character varying(25),
phone character varying(25),
fax character varying(25),
cellular character varying(25),
email character varying(50),
address_id int,
alert_method_cd character varying(10),
hrid character varying(20),
org_user_id character varying(20),
org_code character varying(30),
login_id character varying(25),
login_pwd character varying(25),
last_login_date timestamp,
active_yn character varying(1) default 'y' not null,
created_id int,
created_date timestamp default now(),
modified_id int,
modified_date timestamp default now(),
is_internal_yn character(1) default 'n' not null,
address_line_1 character varying(100),
address_line_2 character varying(100),
city character varying(50),
state_cd character varying(3),
zip_code character varying(11),
country_cd character varying(3),
location_clli character varying(8),
org_manager_userid character varying(6),
company character varying(100),
department_name character varying(100),
job_title character varying(100),
timezone int,
department character varying(25),
business_unit character varying(25),
business_unit_name character varying(100),
cost_center character varying(25),
fin_loc_code character varying(10),
silo_status character varying(10)
);
-- this sequence is named in Fusion.hbm.xml
create sequence seq_fn_role;
create table fn_role (
role_id serial primary key,
role_name character varying(50) not null,
active_yn character varying(1) default 'y' not null,
priority numeric(4,0)
);
create table fn_audit_action (
audit_action_id integer primary key,
class_name character varying(500) not null,
method_name character varying(50) not null,
audit_action_cd character varying(20) not null,
audit_action_desc character varying(200),
active_yn character varying(1)
);
create table fn_audit_action_log (
audit_log_id serial primary key,
audit_action_cd character varying(200),
action_time timestamp,
user_id int,
class_name character varying(100),
method_name character varying(50),
success_msg character varying(20),
error_msg character varying(500)
);
create table fn_lu_activity (
activity_cd character varying(50) not null primary key,
activity character varying(50) not null
);
-- this sequence is named in Fusion.hbm.xml
create sequence seq_fn_audit_log;
create table fn_audit_log (
log_id serial primary key,
user_id int not null,
activity_cd character varying(50) not null,
audit_date timestamp default now() not null,
comments character varying(1000),
affected_record_id_bk character varying(500),
affected_record_id character varying(4000),
constraint fk_fn_audit_ref_209_fn_user foreign key (user_id) references fn_user(user_id)
);
create table fn_datasource (
id serial primary key,
name character varying(50),
driver_name character varying(256),
server character varying(256),
port integer,
user_name character varying(256),
password character varying(256),
url character varying(256),
min_pool_size integer,
max_pool_size integer,
adapter_id integer,
ds_type character varying(20)
);
create table fn_function (
function_cd character varying(30) not null primary key,
function_name character varying(50) not null
);
create table fn_lu_alert_method (
alert_method_cd character varying(10) not null,
alert_method character varying(50) not null
);
create table fn_lu_broadcast_site (
broadcast_site_cd character varying(50) not null,
broadcast_site_descr character varying(100)
);
create table fn_lu_call_times (
call_time_id int not null,
call_time_amount int not null,
call_time_display character varying(50) not null
);
create table fn_lu_city (
city_cd character varying(2) not null,
city character varying(100) not null,
state_cd character varying(2) not null,
primary key (city_cd, state_cd)
);
create table fn_lu_country (
country_cd character varying(3) not null primary key,
country character varying(100) not null,
full_name character varying(100),
webphone_country_label character varying(30)
);
create table fn_lu_menu_set (
menu_set_cd character varying(10) not null primary key,
menu_set_name character varying(50) not null
);
create table fn_lu_priority (
priority_id int not null,
priority character varying(50) not null,
active_yn character(1) not null,
sort_order numeric(5,0)
);
create table fn_lu_role_type (
role_type_id int not null,
role_type character varying(50) not null
);
create table fn_lu_state (
state_cd character varying(2) not null,
state character varying(100) not null
);
create table fn_lu_tab_set (
tab_set_cd character varying(30) not null,
tab_set_name character varying(50) not null
);
-- this sequence is named in Fusion.hbm.xml
create sequence seq_fn_menu;
create table fn_menu (
menu_id serial primary key,
label character varying(100),
parent_id int,
sort_order numeric(4,0),
action character varying(200),
function_cd character varying(30),
active_yn character varying(1) default 'y' not null,
servlet character varying(50),
query_string character varying(200),
external_url character varying(200),
target character varying(25),
menu_set_cd character varying(10) default 'app',
separator_yn character(1) default 'n',
image_src character varying(100),
constraint fk_fn_menu_ref_196_fn_menu foreign key (parent_id) references fn_menu(menu_id),
constraint fk_fn_menu_menu_set_cd foreign key (menu_set_cd) references fn_lu_menu_set(menu_set_cd),
constraint fk_fn_menu_ref_223_fn_funct foreign key (function_cd) references fn_function(function_cd)
);
create table fn_org (
org_id int not null,
org_name character varying(50) not null,
access_cd character varying(10)
);
create table fn_restricted_url (
restricted_url character varying(250) not null,
function_cd character varying(30) not null
);
create table fn_role_composite (
parent_role_id int not null,
child_role_id int not null,
constraint fk_fn_role_composite_child foreign key (child_role_id) references fn_role(role_id),
constraint fk_fn_role_composite_parent foreign key (parent_role_id) references fn_role(role_id)
);
create table fn_role_function (
role_id int not null,
function_cd character varying(30) not null,
constraint fk_fn_role__ref_198_fn_role foreign key (role_id) references fn_role(role_id)
);
create table fn_tab (
tab_cd character varying(30) not null,
tab_name character varying(50) not null,
tab_descr character varying(100),
action character varying(100) not null,
function_cd character varying(30) not null,
active_yn character(1) not null,
sort_order int not null,
parent_tab_cd character varying(30),
tab_set_cd character varying(30)
);
create table fn_tab_selected (
selected_tab_cd character varying(30) not null,
tab_uri character varying(40) not null
);
create table fn_user_pseudo_role (
pseudo_role_id int not null,
user_id int not null
);
create table fn_user_role (
user_id int not null,
role_id int not null,
priority numeric(4,0),
app_id int default 1,
constraint fk_fn_user__ref_172_fn_user foreign key (user_id) references fn_user(user_id),
constraint fk_fn_user__ref_175_fn_role foreign key (role_id) references fn_role(role_id)
);
create table fn_xmltype (
id int not null,
xml_document text
);
create table schema_info (
schema_id character varying(25) not null,
schema_desc character varying(75) not null,
datasource_type character varying(100),
connection_url varchar(200) not null,
user_name varchar(45) not null,
password varchar(45) null default null,
driver_class varchar(100) not null,
min_pool_size int not null,
max_pool_size int not null,
idle_connection_test_period int not null
);
create table fn_app (
app_id serial primary key,
app_name varchar(100) not null default '?',
app_image_url varchar(256) default null,
app_description varchar(512) default null,
app_notes varchar(4096) default null,
app_url varchar(256) default null,
app_alternate_url varchar(256) default null,
app_rest_endpoint varchar(2000) default null,
ml_app_name varchar(50) not null default '?',
ml_app_admin_id varchar(7) not null default '?',
mots_id int default null,
app_password varchar(256) not null default '?',
open char(1) default 'n',
enabled char(1) default 'y',
thumbnail bytea,
app_username varchar(50),
ueb_key varchar(256) default null,
ueb_secret varchar(256) default null,
ueb_topic_name varchar(256) default null
);
create table fn_workflow (
id serial primary key,
name varchar(20) NOT NULL unique,
description varchar(500) DEFAULT NULL,
run_link varchar(300) DEFAULT NULL,
suspend_link varchar(300) DEFAULT NULL,
modified_link varchar(300) DEFAULT NULL,
active_yn varchar(300) DEFAULT NULL,
created varchar(300) DEFAULT NULL,
created_by int DEFAULT NULL,
modified varchar(300) DEFAULT NULL,
modified_by int DEFAULT NULL,
workflow_key varchar(50) DEFAULT NULL
);
create table fn_schedule_workflows (
id_schedule_workflows serial primary key,
workflow_server_url varchar(45) default null,
workflow_key varchar(45) not null,
workflow_arguments varchar(45) default null,
startdatetimecron varchar(45) default null,
enddatetime timestamp default now(),
start_date_time timestamp default now(),
recurrence varchar(45) default null
);
create table fn_license (
id int not null,
app_id int not null,
ip_address character varying(100) not null,
quantum_version_id int not null,
created_date timestamp default now(),
modified_date timestamp default now(),
created_id int,
modified_id int,
end_date timestamp default '2036-01-19 03:14:07'
);
create table fn_license_app (
id int not null,
app_name character varying(100) not null,
ctxt_name character varying(100)
);
create table fn_license_contact (
id int not null,
license_id integer,
sbcid character varying(20)
);
create table fn_license_history (
id int not null,
license_id int,
app_id int,
ip_address character varying(100),
quantum_version_id int,
created_date timestamp default now(),
modified_date timestamp default now(),
created_id int,
modified_id int
);
create table fn_license_version (
id int not null,
quantum_version character varying(25)
);
create table fn_lu_message_location (
message_location_id int primary key,
message_location_descr character varying(30) not null
);
create table ecd_endpoint (
user_id int not null primary key,
name character varying(64),
url character varying(512)
);
alter table ecd_endpoint
add constraint fk_ecd_endpoint_ref_fn_user foreign key (user_id) references fn_user(user_id);
create view v_url_access as
select distinct m.action as url,
m.function_cd
from fn_menu m
where (m.action is not null)
union
select distinct t.action as url,
t.function_cd
from fn_tab t
where (t.action is not null)
union
select r.restricted_url as url,
r.function_cd
from fn_restricted_url r;
alter table fn_audit_log
add constraint fk_fn_audit_ref_205_fn_lu_ac foreign key (activity_cd) references fn_lu_activity(activity_cd);
alter table fn_role_function
add constraint fk_fn_role__ref_201_fn_funct foreign key (function_cd) references fn_function(function_cd);
alter table fn_lu_alert_method
add constraint fn_lu_alert_method_alert_method_cd primary key (alert_method_cd);
alter table fn_lu_broadcast_site
add constraint fn_lu_broadcast_site_broadcast_site_cd primary key (broadcast_site_cd);
alter table fn_lu_call_times
add constraint fn_lu_call_times_call_time_id primary key (call_time_id);
alter table fn_lu_priority
add constraint fn_lu_priority_priority_id primary key (priority_id);
alter table fn_lu_role_type
add constraint fn_lu_role_type_role_type_id primary key (role_type_id);
alter table fn_lu_state
add constraint fn_lu_state_state_cd primary key (state_cd);
alter table fn_lu_tab_set
add constraint fn_lu_tab_set_tab_set_cd primary key (tab_set_cd);
alter table fn_org
add constraint fn_org_org_id primary key (org_id);
alter table fn_restricted_url
add constraint fn_restricted_url_restricted_urlfunction_cd primary key (restricted_url, function_cd);
alter table fn_role_composite
add constraint fn_role_composite_parent_role_idchild_role_id primary key (parent_role_id, child_role_id);
alter table fn_role_function
add constraint fn_role_function_role_idfunction_cd primary key (role_id, function_cd);
alter table fn_tab
add constraint fn_tab_tab_cd primary key (tab_cd);
alter table fn_tab_selected
add constraint fn_tab_selected_selected_tab_cdtab_uri primary key (selected_tab_cd, tab_uri);
alter table fn_user_pseudo_role
add constraint fn_user_pseudo_role_pseudo_role_iduser_id primary key (pseudo_role_id, user_id);
alter table fn_user_role
add constraint fn_user_role_user_idrole_id primary key (user_id, role_id, app_id);
alter table fn_license
add constraint fn_license_id primary key (id);
alter table fn_license_contact
add constraint fn_license_contact_id primary key (id);
alter table fn_license_history
add constraint fn_license_history_id primary key (id);
alter table fn_license_version
add constraint fn_license_version_id primary key (id);
create index fn_audit_log_activity_cd on fn_audit_log using btree(activity_cd);
create index fn_audit_log_user_id on fn_audit_log using btree(user_id);
create index fn_menu_function_cd on fn_menu using btree(function_cd);
create index fn_org_access_cd on fn_org using btree(access_cd);
create index fn_role_function_function_cd on fn_role_function using btree (function_cd);
create index fn_role_function_role_id on fn_role_function using btree(role_id);
create index fn_user_address_id on fn_user using btree(address_id);
create index fn_user_alert_method_cd on fn_user using btree (alert_method_cd);
create unique index fn_user_hrid on fn_user using btree (hrid);
create unique index fn_user_login_id on fn_user using btree(login_id);
create index fn_user_org_id on fn_user using btree(org_id);
create index fn_user_role_role_id on fn_user_role using btree(role_id);
create index fn_user_role_user_id on fn_user_role using btree(user_id);
create unique index fn_xmltype_id on fn_xmltype using btree(id);
create index fk_fn_user__ref_178_fn_app_IDX on fn_user_role using btree(app_id);
create index fn_license_app_id on fn_license_app using btree(id);
alter table fn_user_role
add constraint fk_fn_user__ref_178_fn_app foreign key (app_id) references fn_app(app_id);
alter table fn_tab
add constraint fk_fn_tab_function_cd foreign key (function_cd) references fn_function(function_cd);
alter table fn_tab_selected
add constraint fk_fn_tab_selected_tab_cd foreign key (selected_tab_cd) references fn_tab(tab_cd);
alter table fn_tab
add constraint fk_fn_tab_set_cd foreign key (tab_set_cd) references fn_lu_tab_set(tab_set_cd);
alter table fn_user
add constraint fk_fn_user_ref_110_fn_org foreign key (org_id) references fn_org(org_id);
alter table fn_user
add constraint fk_fn_user_ref_123_fn_lu_al foreign key (alert_method_cd) references fn_lu_alert_method(alert_method_cd);
alter table fn_user
add constraint fk_fn_user_ref_197_fn_user foreign key (manager_id) references fn_user(user_id);
alter table fn_user
add constraint fk_fn_user_ref_198_fn_user foreign key (created_id) references fn_user(user_id);
alter table fn_user
add constraint fk_fn_user_ref_199_fn_user foreign key (modified_id) references fn_user(user_id);
alter table fn_user_pseudo_role
add constraint fk_pseudo_role_pseudo_role_id foreign key (pseudo_role_id) references fn_role(role_id);
alter table fn_user_pseudo_role
add constraint fk_pseudo_role_user_id foreign key (user_id) references fn_user(user_id);
alter table fn_restricted_url
add constraint fk_restricted_url_function_cd foreign key (function_cd) references fn_function(function_cd);
alter table fn_license
add constraint fn_license_r02 foreign key (quantum_version_id) references fn_license_version(id);