diff options
author | T <t@tjp.lol> | 2025-08-02 17:25:59 -0600 |
---|---|---|
committer | T <t@tjp.lol> | 2025-08-04 09:34:14 -0600 |
commit | 8be5f93f5b2d4b6f438ca84094937a0f7101c59b (patch) | |
tree | 3cedb6379818a28179e269477c12ae06dd57ca36 /internal/database/schema.sql |
Initial commit of punchcard.
Contains working time tracking commands, and the stub of a command to
generate reports.
Diffstat (limited to 'internal/database/schema.sql')
-rw-r--r-- | internal/database/schema.sql | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/internal/database/schema.sql b/internal/database/schema.sql new file mode 100644 index 0000000..a4483e1 --- /dev/null +++ b/internal/database/schema.sql @@ -0,0 +1,28 @@ +create table if not exists client ( + id integer primary key autoincrement, + name text not null unique, + email text, + billable_rate integer, + created_at datetime default current_timestamp +); + +create table if not exists project ( + id integer primary key autoincrement, + name text not null unique, + client_id integer not null, + billable_rate integer, + created_at datetime default current_timestamp, + foreign key (client_id) references client(id) +); + +create table if not exists time_entry ( + id integer primary key autoincrement, + start_time datetime not null, + end_time datetime, + description text, + client_id integer not null, + project_id integer, + billable_rate integer, + foreign key (client_id) references client(id), + foreign key (project_id) references project(id) +); |