97 lines
3.2 KiB
SQL
97 lines
3.2 KiB
SQL
create table "user"
|
|
(
|
|
id bigint not null
|
|
primary key,
|
|
nickname varchar(255) not null,
|
|
avatar varchar(255) not null,
|
|
status smallint default 0 not null,
|
|
last_login_time timestamp with time zone,
|
|
create_time timestamp with time zone default now(),
|
|
update_time timestamp with time zone default now()
|
|
);
|
|
|
|
create table user_oauth
|
|
(
|
|
id bigint not null
|
|
primary key,
|
|
user_id bigint not null,
|
|
type smallint default 0 not null,
|
|
openid varchar(255) not null,
|
|
create_time timestamp with time zone default now(),
|
|
update_time timestamp with time zone default now()
|
|
);
|
|
|
|
create table space
|
|
(
|
|
id bigint primary key,
|
|
|
|
-- 核心业务字段
|
|
name varchar(255) not null,
|
|
invite_code varchar(30) not null unique,
|
|
owner_id bigint not null,
|
|
|
|
-- 状态字段
|
|
status smallint default 0 not null, -- 0 active 1 disabled 2 dissolved
|
|
disabled_time timestamp with time zone,
|
|
dissolve_time timestamp with time zone,
|
|
|
|
-- 时间字段
|
|
create_time timestamp with time zone default now() not null,
|
|
update_time timestamp with time zone default now() not null
|
|
);
|
|
|
|
create table space_member
|
|
(
|
|
id bigint primary key,
|
|
|
|
-- 关系核心字段
|
|
space_id bigint not null,
|
|
user_id bigint not null,
|
|
|
|
-- 角色 & 默认
|
|
role smallint default 2 not null,
|
|
is_default smallint default 0 not null,
|
|
sort_number integer default 0 not null,
|
|
member_name varchar(255) not null,
|
|
|
|
-- 成员状态
|
|
status smallint default 0 not null, -- 0 active 1 disabled 2 exited
|
|
disabled_time timestamp with time zone,
|
|
exit_time timestamp with time zone,
|
|
|
|
-- 时间字段
|
|
join_time timestamp with time zone default now() not null,
|
|
update_time timestamp with time zone default now() not null,
|
|
|
|
unique (space_id, user_id)
|
|
);
|
|
|
|
create table finance_category_default
|
|
(
|
|
id bigint not null
|
|
primary key,
|
|
name varchar(64) not null,
|
|
icon varchar(64) not null,
|
|
type smallint default 0 not null,
|
|
sort_number integer default 0 not null,
|
|
create_time timestamp with time zone default now(),
|
|
update_time timestamp with time zone default now()
|
|
);
|
|
|
|
create table finance_category_space
|
|
(
|
|
id bigint not null
|
|
primary key,
|
|
space_id bigint not null,
|
|
name varchar(64) not null,
|
|
icon varchar(64) not null,
|
|
type smallint default 0 not null,
|
|
sort_number integer default 0 not null,
|
|
create_by bigint not null,
|
|
create_time timestamp with time zone default now(),
|
|
update_by bigint not null,
|
|
update_time timestamp with time zone default now()
|
|
);
|
|
|
|
|