db/db-schema.sql
author Tomas Zeman <tzeman@volny.cz>
Tue, 01 May 2012 23:54:09 +0200
changeset 91 494b3b9db463
parent 85 3ef84ec492fa
permissions -rw-r--r--
Company status
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     1
-- table declarations :
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     2
create table "code_list_item" (
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     3
    "l3" bigint not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     4
    "l1" bigint not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     5
    "i18n" boolean not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     6
    "name" varchar(100) not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
     7
    "updated_at" timestamp not null,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     8
    "ol2" bigint,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     9
    "s3" varchar(200) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    10
    "id" bigint primary key not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    11
    "oi1" integer,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    12
    "rank" integer not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    13
    "code_list" varchar(40) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    14
    "dflt" boolean not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    15
    "s2" varchar(200) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    16
    "i3" integer not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    17
    "os1" varchar(200),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    18
    "ol1" bigint,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    19
    "oi2" integer,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    20
    "i1" integer not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    21
    "s1" varchar(200) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    22
    "note" varchar(10240),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    23
    "os2" varchar(200),
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    24
    "created_at" timestamp not null,
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    25
    "created_by" bigint,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    26
    "i2" integer not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    27
    "oi3" integer,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    28
    "l2" bigint not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    29
    "ol3" bigint,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    30
    "updated_by" bigint,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    31
    "os3" varchar(200),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    32
    "deleted" boolean not null
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    33
  );
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    34
create sequence "code_list_item_id_seq";
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    35
-- indexes on code_list_item
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    36
create index "code_list_item_code_list_idx" on "code_list_item" ("code_list");
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    37
create table "city" (
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    38
    "name" varchar(100) not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    39
    "updated_at" timestamp not null,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    40
    "id" bigint primary key not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    41
    "country_id" bigint not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    42
    "note" varchar(10240),
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    43
    "created_at" timestamp not null,
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    44
    "created_by" bigint,
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    45
    "updated_by" bigint
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    46
  );
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    47
create sequence "city_id_seq";
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    48
create table "address" (
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    49
    "city_id" bigint not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    50
    "name" varchar(100) not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    51
    "updated_at" timestamp not null,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    52
    "id" bigint primary key not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    53
    "zip_code" varchar(100) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    54
    "street_name" varchar(100) not null,
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    55
    "note" varchar(10240),
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    56
    "created_at" timestamp not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    57
    "created_by" bigint,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    58
    "street_num" varchar(100) not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    59
    "updated_by" bigint
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    60
  );
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    61
create sequence "address_id_seq";
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    62
create table "country" (
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    63
    "iso3" varchar(3) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    64
    "name" varchar(100) not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    65
    "updated_at" timestamp not null,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    66
    "id" bigint primary key not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    67
    "iso2" varchar(2) not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    68
    "note" varchar(10240),
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    69
    "created_at" timestamp not null,
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    70
    "created_by" bigint,
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    71
    "updated_by" bigint
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    72
  );
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
    73
create sequence "country_id_seq";
76
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    74
create table "location" (
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    75
    "name" varchar(100) not null,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    76
    "updated_at" timestamp not null,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    77
    "id" bigint primary key not null,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    78
    "latitude" double precision not null,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    79
    "longitude" double precision not null,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    80
    "note" varchar(10240),
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    81
    "created_at" timestamp not null,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    82
    "created_by" bigint,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    83
    "address_id" bigint not null,
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    84
    "updated_by" bigint
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    85
  );
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
    86
create sequence "location_id_seq";
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    87
create table "contact" (
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    88
    "name" varchar(100) not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    89
    "updated_at" timestamp not null,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    90
    "id" bigint primary key not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    91
    "work_mobile" varchar(40) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    92
    "private_mail" varchar(256),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    93
    "last_name" varchar(80) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    94
    "work_mail" varchar(256) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    95
    "first_name" varchar(80) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    96
    "fax" varchar(40),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    97
    "note" varchar(10240),
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    98
    "created_at" timestamp not null,
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
    99
    "created_by" bigint,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   100
    "other_mail" varchar(256),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   101
    "position" varchar(40),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   102
    "other_mobile" varchar(40),
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
   103
    "updated_by" bigint,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   104
    "private_mobile" varchar(40),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   105
    "private_phone" varchar(40),
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   106
    "work_phone" varchar(40)
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   107
  );
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   108
create sequence "contact_id_seq";
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   109
create table "company" (
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   110
    "name" varchar(100) not null,
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   111
    "dic" varchar(40) not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
   112
    "updated_at" timestamp not null,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   113
    "id" bigint primary key not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   114
    "ico" varchar(40) not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   115
    "note" varchar(10240),
91
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   116
    "status" bigint not null,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
   117
    "created_at" timestamp not null,
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
   118
    "created_by" bigint,
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   119
    "address_id" bigint not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   120
    "post_adress_id" bigint,
61
b65843860274 Trackable entity: created/updated fields
Tomas Zeman <tzeman@volny.cz>
parents: 56
diff changeset
   121
    "updated_by" bigint,
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   122
    "pin" integer not null
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   123
  );
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   124
create sequence "company_id_seq";
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   125
create table "bank_account" (
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   126
    "number" bigint not null,
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   127
    "name" varchar(100) not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   128
    "updated_at" timestamp not null,
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   129
    "id" bigint primary key not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   130
    "prefix" bigint not null,
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   131
    "bank_code" varchar(100) not null,
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   132
    "company_id" bigint not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   133
    "note" varchar(10240),
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   134
    "created_at" timestamp not null,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   135
    "created_by" bigint,
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   136
    "updated_by" bigint
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   137
  );
65
a35a0edf9ddd Geo+Company record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 61
diff changeset
   138
create sequence "bank_account_id_seq";
72
077b875a2a0c Company contacts
Tomas Zeman <tzeman@volny.cz>
parents: 69
diff changeset
   139
create table "company_contact" (
077b875a2a0c Company contacts
Tomas Zeman <tzeman@volny.cz>
parents: 69
diff changeset
   140
    "contact" bigint not null,
077b875a2a0c Company contacts
Tomas Zeman <tzeman@volny.cz>
parents: 69
diff changeset
   141
    "entity" bigint not null
077b875a2a0c Company contacts
Tomas Zeman <tzeman@volny.cz>
parents: 69
diff changeset
   142
  );
73
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   143
create table "user" (
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   144
    "name" varchar(100) not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   145
    "updated_at" timestamp not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   146
    "id" bigint primary key not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   147
    "note" varchar(10240),
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   148
    "created_at" timestamp not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   149
    "created_by" bigint,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   150
    "login" varchar(40) not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   151
    "updated_by" bigint,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   152
    "deleted" boolean not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   153
    "active" boolean not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   154
    "password" varchar(128) not null
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   155
  );
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   156
create sequence "user_id_seq";
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   157
-- indexes on user
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   158
create index "user_login_idx" on "user" ("login");
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   159
create table "user_contact" (
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   160
    "contact" bigint not null,
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   161
    "entity" bigint not null
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   162
  );
79
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   163
create table "project" (
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   164
    "name" varchar(100) not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   165
    "updated_at" timestamp not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   166
    "id" bigint primary key not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   167
    "description" varchar(40960) not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   168
    "responsible" bigint not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   169
    "deadline" timestamp not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   170
    "ident_s" varchar(256) not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   171
    "state" bigint not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   172
    "note" varchar(10240),
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   173
    "product_line" bigint,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   174
    "created_at" timestamp not null,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   175
    "created_by" bigint,
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   176
    "updated_by" bigint
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   177
  );
25392159b6ca Project
Tomas Zeman <tzeman@volny.cz>
parents: 76
diff changeset
   178
create sequence "project_id_seq";
81
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   179
create table "task" (
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   180
    "name" varchar(100) not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   181
    "updated_at" timestamp not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   182
    "id" bigint primary key not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   183
    "project_id" bigint not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   184
    "responsible" bigint not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   185
    "deadline" timestamp not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   186
    "state" bigint not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   187
    "note" varchar(10240),
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   188
    "created_at" timestamp not null,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   189
    "created_by" bigint,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   190
    "task_type" bigint,
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   191
    "updated_by" bigint
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   192
  );
Tomas Zeman <tzeman@volny.cz>
parents: 79
diff changeset
   193
create sequence "task_id_seq";
83
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   194
create table "comment" (
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   195
    "name" varchar(100) not null,
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   196
    "updated_at" timestamp not null,
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   197
    "task_id" bigint not null,
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   198
    "id" bigint primary key not null,
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   199
    "note" varchar(10240),
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   200
    "created_at" timestamp not null,
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   201
    "created_by" bigint,
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   202
    "updated_by" bigint
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   203
  );
f7553032b302 Comment
Tomas Zeman <tzeman@volny.cz>
parents: 81
diff changeset
   204
create sequence "comment_id_seq";
85
3ef84ec492fa Project - company relation
Tomas Zeman <tzeman@volny.cz>
parents: 83
diff changeset
   205
create table "project_company" (
3ef84ec492fa Project - company relation
Tomas Zeman <tzeman@volny.cz>
parents: 83
diff changeset
   206
    "project" bigint not null,
3ef84ec492fa Project - company relation
Tomas Zeman <tzeman@volny.cz>
parents: 83
diff changeset
   207
    "company" bigint not null
3ef84ec492fa Project - company relation
Tomas Zeman <tzeman@volny.cz>
parents: 83
diff changeset
   208
  );
36
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   209
-- foreign key constraints :
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   210
alter table "address" add constraint "addressFK1" foreign key ("city_id") references "city"("id");
5ae643e27ef9 Initial db schema
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   211
alter table "city" add constraint "cityFK2" foreign key ("country_id") references "country"("id");
76
2ba4569f2bd6 Location + GPS
Tomas Zeman <tzeman@volny.cz>
parents: 73
diff changeset
   212
alter table "location" add constraint "locationFK3" foreign key ("address_id") references "address"("id");
91
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   213
alter table "company" add constraint "companyFK4" foreign key ("status") references "code_list_item"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   214
alter table "company" add constraint "companyFK5" foreign key ("address_id") references "address"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   215
alter table "company" add constraint "companyFK6" foreign key ("post_adress_id") references "address"("id") on delete set null;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   216
alter table "bank_account" add constraint "bank_accountFK7" foreign key ("company_id") references "company"("id") on delete cascade;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   217
alter table "project" add constraint "projectFK12" foreign key ("responsible") references "user"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   218
alter table "project" add constraint "projectFK13" foreign key ("product_line") references "code_list_item"("id") on delete set null;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   219
alter table "project" add constraint "projectFK14" foreign key ("state") references "code_list_item"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   220
alter table "task" add constraint "taskFK15" foreign key ("responsible") references "user"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   221
alter table "task" add constraint "taskFK16" foreign key ("task_type") references "code_list_item"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   222
alter table "task" add constraint "taskFK17" foreign key ("state") references "code_list_item"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   223
alter table "task" add constraint "taskFK18" foreign key ("project_id") references "project"("id");
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   224
alter table "comment" add constraint "commentFK19" foreign key ("task_id") references "task"("id") on delete cascade;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   225
alter table "company_contact" add constraint "company_contactFK8" foreign key ("entity") references "company"("id") on delete cascade;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   226
alter table "company_contact" add constraint "company_contactFK9" foreign key ("contact") references "contact"("id") on delete cascade;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   227
alter table "user_contact" add constraint "user_contactFK10" foreign key ("entity") references "user"("id") on delete cascade;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   228
alter table "user_contact" add constraint "user_contactFK11" foreign key ("contact") references "contact"("id") on delete cascade;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   229
alter table "project_company" add constraint "project_companyFK20" foreign key ("project") references "project"("id") on delete cascade;
494b3b9db463 Company status
Tomas Zeman <tzeman@volny.cz>
parents: 85
diff changeset
   230
alter table "project_company" add constraint "project_companyFK21" foreign key ("company") references "company"("id") on delete cascade;
72
077b875a2a0c Company contacts
Tomas Zeman <tzeman@volny.cz>
parents: 69
diff changeset
   231
-- composite key indexes :
077b875a2a0c Company contacts
Tomas Zeman <tzeman@volny.cz>
parents: 69
diff changeset
   232
alter table "company_contact" add constraint "company_contactCPK" unique("entity","contact");
73
4bcb7deedd3f User contacts
Tomas Zeman <tzeman@volny.cz>
parents: 72
diff changeset
   233
alter table "user_contact" add constraint "user_contactCPK" unique("entity","contact");
85
3ef84ec492fa Project - company relation
Tomas Zeman <tzeman@volny.cz>
parents: 83
diff changeset
   234
alter table "project_company" add constraint "project_companyCPK" unique("project","company");
56
9409e7ab3f9d User record, mixins
Tomas Zeman <tzeman@volny.cz>
parents: 36
diff changeset
   235
-- column group indexes :
9409e7ab3f9d User record, mixins
Tomas Zeman <tzeman@volny.cz>
parents: 36
diff changeset
   236
create index "user_deleted_active_idx" on "user" ("deleted","active");