cash-stacks/server/database-docs.md

66 lines
862 B
Markdown
Raw Normal View History

2021-04-14 20:47:53 +00:00
# User
```ts
type User = {
id: uuid
name: string
email: string
password: string
}
```
# UserAccount
```ts
type UserAcccount = {
user_id: uuid
account_id: uuid
}
```
- join table between User <-> Account.
- use case: account belongs to more than 1 person
# Account
```ts
type Account = {
id: uuid
name: string // example: Household Expenses
details: string
income: integer // cents // total income
expenses: integer // cents // total expenses
}
```
- belongs to User
- has many transactions
# Stack
- belongs to account
```ts
type Stack = {
id: uuid
account_id: uuid
name: string
details: string
amount: integer
}
```
# Transaction
- belongs to Stack
```ts
type Transaction = {
id: uuid
stack_id: string
amount: integer // cents
details: string
2021-04-15 00:07:12 +00:00
created_at: UTC datetime ie: 2021-04-15T00:06:21.852620Z
2021-04-14 20:47:53 +00:00
}
```