设计数据库表:用于 eggjs 实现记账本

Posted 凯小默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计数据库表:用于 eggjs 实现记账本相关的知识,希望对你有一定的参考价值。

用户模块

用户名用于登录使用,具有唯一性

  • 用户可以设置自己的头像
  • 用户名不能修改
  • 用户可以设置个性签名
  • 创建时间

设计用户表 user

  • id:自增主键。
  • username:用于存储用户登录名称。
  • password:用于存储用户登录密码。
  • signature:用于存储用户个性签名。
  • avatar:用于存储用户头像信息。
  • ctime:用于存储用户创建时间字段。

在 DBeaver 中新建 user 表如下:

账单模块

一笔账单记为一项,每一项账单包括几个关键属性,分别是账单的类型(收入或指出)、账单的种类(服饰、交通、奖金等)、账单的金额、账单的日期时间、账单的备注等。

设计账单表 bill

  • id:主键。
  • pay_type:账单类型(1 为支出,2 为收入)。
  • amount:账单价格。
  • date:账单日期(以时间戳的形式存储)。
  • type_id:账单标签 id(如:餐饮、交通、日用、学习、购物等)。
  • type_name:账单标签名称(如:餐饮、交通、日用、学习、购物等)。
  • user_id:账单归属的用户 id。
  • remark:账单备注。

在 DBeaver 中新建 bill 表如下:

设计账单标签 type

如:餐饮、交通、日用、学习、购物等这类账单种类,设置一张 type 表,让用户可以灵活的设置属于自己的自定义标签。

  • id:主键。
  • name:标签名称,如餐饮、交通、日用、学习、购物等。
  • type:标签类型(1 为支出,2 为收入)。
  • user_id:默认 0 为全部用户可见,某个用户单独设置的标签,user_id 就是该用户的用户 id,在获取列表的时候,方便过滤。

在 DBeaver 中新建 type 表如下:

以上是关于设计数据库表:用于 eggjs 实现记账本的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio--家庭记账本

eggjs 怎么实现账单详情页的删除接口?

eggjs 怎么实现账单详情页的获取详情接口?

管家婆家庭记账软件

支付业务的数据库表的设计

牛腩记账本core版本源码