第17组—第三次团队作业:项目系统设计与数据库设计

这个作业属于哪个课程 [至诚软工实践F班]
这个作业要求在哪里 第三次团队作业——项目系统设计与数据库设计
这个作业的目标 为项目前期做准备,包括项目后序分工、数据库及系统文档的编写
Gitee或Github仓库地址 Github仓库
其他参考文献 ...

一、项目预期开发计划

周数 任务安排 当前进度
第一周 数据库等前期工作准备、项目分工 已完成
第二周 应用端界面、管理端界面开发 开发中
第三周 应用端界面、管理端界面开发 待开发
第四周 应用端界面及接口模块开发 待开发
第五周 前后端数据交互及代码审查 待开发
第六周 优化代码并进行第一阶段功能性测试 待开发
第七周 修复BUG及进行第二阶段功能性测试 待开发
第八周 修复BUG,最终审查及调试 待开发
第九周 总结项目并进行项目上线 待开发

二、项目开发预期分工安排

学号 姓名 角色 预期任务量
212106705 陈明灿 应用端及接口开发 应用端界面设计及开发、后端接口的开发、前后端数据交互
212106756 陈贇 管理端开发 管理端界面设计及开发、前后端数据交互
212106731 沈丹 数据库搭建及项目测试 数据库搭建、文档撰写及对软件进行测试
212106762 黄佳琳 协同开发及项目测试 协同前后端工作、PPT制作及文档撰写、对软件进行功能性测试
212106764 黄智嘉 协同开发及项目测试 协同前后端工作、对软件进行功能性测试

三、项目设计图

该章节内容详情可见:系统开发文档

3.1 系统功能层次图

3.2 类图

3.3 基本设计概念和处理流程

3.3.1 登录流程

3.3.2 配送员申请流程

3.3.3 学生认证流程

3.3.4 二手交易流程

3.3.5 订单接收流程

四、数据库设计

需要确定数据表名称,所包含字段名称,数据类型,宽度以及建立的主键、外键等描述表的属性的内容。本项目全部20个数据表,包括如下:

管理员表、角色表、菜单表、角色菜单表、业务字典表、业务字典内容表、用户表、地址表、商家表、产品类型表、产品表、订单表、轮播图表、广告表、论坛表、评论表、点赞表、闲置物品表、组织表、电话簿表

详情可见:数据库设计文档

4.1 数据库设计

4.1.1 系统管理

表名:admin

说明:管理员表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 admin_id varchar 10 管理员唯一标识
2 admin_account varchar 15 管理员账号
3 admin_password varchar 20 管理员密码
4 admin_name varchar 10 管理员用户名
5 admin_portrait varchar 管理员头像
6 admin_gender int 5 0 管理员性别
7 admin_email varchar 25 管理员邮箱
8 admin_phone varchar 11 管理员手机号
9 admin_permissions varchar 10 管理员权限
10 admin_enableStatus int 5 0 管理员启用状态
11 admin_deleteStatus int 5 0 管理员删除状态

表名:role

说明:角色表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 role_id varchar 10 角色唯一标识
2 role_name varchar 15 角色名称
3 role_deleteStatus int 5 0 角色删除状态

表名:menu

说明:菜单表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 menu_id varchar 10 菜单唯一标识
2 menu_name varchar 15 菜单名称
3 menu_parent varchar 10 父菜单id
4 menu_priority int 5 0 菜单优先级
5 menu_link varchar 链接地址

表名:role_menu

说明:权限分配表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 role_id varchar 10 角色唯一标识
2 menu_id varchar 10 菜单唯一标识

表名:dictionary

说明:业务字典

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 dictionary_id varchar 10 业务字典唯一标识
2 dictionary_name varchar 15 业务字典名称

表名:dictionaryContent

说明:业务字典内容

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 dictionaryContent_id varchar 10 业务字典内容唯一标识
2 dictionaryContent_text varchar 15 业务字典内容文本
3 dictionaryContent_value int 5 0 业务字典内容值
4 dictionary_id varchar 10 业务字典唯一标识

4.1.2 用户管理

表名:user

说明:用户表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 user_id varchar 10 用户唯一标识
2 user_account varchar 15 用户账号
3 user_password varchar 20 用户密码
4 user_name varchar 10 用户名
5 user_portrait varchar 用户头像
6 user_gender int 5 0 用户性别
7 user_email varchar 25 用户邮箱
8 user_phone varchar 11 用户手机号
9 user_stuID varchar 10 学号绑定
10 user_wxID varchar 30 绑定微信
11 user_isStudent int 5 0 学生认证是否通过
12 user_isMerchant int 5 0 是否为商家
13 user_isPartTime int 5 0 是否为兼职
14 user_balance double 9 2 0 用户余额
15 user_status int 5 0 用户状态

表名:address

说明:地址表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 address_id varchar 10 地址ID
2 address_details varchar 地址名称
3 address_linkman varchar 10 联系人
4 address_phone varchar 11 联系电话
5 address_gender int 5 0 联系人性别
6 user_id varchar 10 用户唯一标识

4.1.3 商家管理

表名:merchant

说明:商家表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 merchant_id varchar 10 商家唯一标识
2 merchant_name varchar 50 商家名称
3 merchant_type int 5 0 商铺类型
4 merchant_portrait varchar 商家图标
5 merchant_address varchar 商家地址
6 merchant_notice varchar 商家公告
7 merchant_createTime datetime 商家入驻时间
8 merchant_enbleStatus int 5 0 商家启用状态
9 merchant_deleteStatus int 5 0 商家删除状态
10 user_id varchar 10 商铺负责人(用户id)

表名:goodsClassify

说明:产品类型表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 goodsClassify_id varchar 10 产品类型唯一标识
2 goodsClassify_name varchar 10 类型名称
3 merchant_id varchar 10 商家id

表名:goods

说明:产品表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 goods_id varchar 10 产品唯一标识
2 goods_name varchar 50 产品名称
3 goods_portrait varchar 产品图片
4 goods_price double 9 2 产品价格
5 goods_abstract varchar 产品简介
6 goods_status int 5 0 产品状态
7 goods_inventory int 9 0 产品库存
8 merchant_id varchar 10 商家id
9 goodsClassify_id varchar 10 产品类型id

表名:order

说明:订单表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 order_id varchar 20 订单唯一标识
2 order_number varchar 20 订单编号
3 order_type int 5 0 订单类型
4 order_goods varchar 订单商品
5 order_status int 5 0 订单状态
6 order_price double 9 2 订单金额
7 order_createTime datetime 订单创建时间
8 order_successTime datetime 订单完成时间
9 order_deleteStatus 订单删除状态
10 address_id varchar 10 地址唯一标识
11 merchant_id varchar 10 商家id
12 user_id varchar 10 兼职跑腿员id

4.1.4 推送管理

表名:slide

说明:轮播图表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 slide_id varchar 10 轮播图id
2 slide_picture varchar 轮播图图片
3 slide_link varchar 链接地址
4 slide_note varchar 轮播图备注
5 slide_createTime datetime 轮播图创建时间
6 slide_priority int 5 0 轮播图优先级
7 slide_status int 5 0 轮播图状态
8 slide_module int 5 0 轮播图所属模块

表名:advertising

说明:广告表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 advertising_id varchar 10 广告id
2 advertising_source varchar 50 广告来源
3 advertising_title varchar 50 广告标题
4 advertising_link varchar 广告链接
5 advertising_picture varchar 广告图片
6 advertising_createTime datetime 广告创建时间
7 advertising_expireTime datetime 广告到期时间
8 advertising_status int 5 0 广告状态

4.1.5 论坛管理

表名:forum

说明:论坛表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 forum_id varchar 10 帖子id
2 forum_contentJson varchar 帖子数据内容
3 forum_createTime datetime 帖子创建时间
4 forum_classify int 5 帖子分类
5 user_id varchar 10 发布人(用户id)

表名:comments

说明:评论表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 comments_id varchar 10 评论id
2 comments_contentJson varchar 评论内容
3 comments_createTime datetime 评论时间
4 user_id varchar 10 评论人(用户id)
5 forum_id varchar 10 回复帖子(帖子id)

表名:like

说明:点赞表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 like_id varchar 10 点赞id
2 forum_id varchar 10 帖子id
3 user_id varchar 10 点赞用户id

4.1.6 二手市场管理

表名:idle

说明:闲置物品表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 idle_id varchar 10 闲置物品id
2 idle_title varchar 20 闲置物品标题
3 idle_contentJson varchar 闲置物品json数据
4 idle_price double 9 2 闲置物品价格
5 idle_status int 5 0 闲置物品交易状态
6 user_id varchar 10 发布人(用户id)

4.1.7 校园服务

表名:organization

说明:组织表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 organization_id varchar 10 组织id
2 organization_name varchar 20 组织名称
3 organization_logo varchar 组织Logo
4 organization_contentJson varchar 组织风采
5 organization_quantity int 10 组织人数
6 organization_type int 5 组织类型

表名:phoneBook

说明:电话簿表

数据列:

序号 名称 数据类型 长度 小数位 允许空 主键 默认值 说明
1 phoneBook_id varchar 10 电话簿id
2 phoneBook_name varchar 20 电话簿名称
3 phoneBook_phone varchar 11 电话簿号码
4 phoneBook_type int 5 电话簿类型

4.2 数据库E-R图

4.2.1 总图

4.2.2 管理员、权限分配模块

4.2.3 业务字典模块

4.2.4 用户及地址模块

4.2.5 商家模块

4.2.6 帖子模块

4.2.7 推送模块

4.2.8 二手市场模块

4.2.9 校内服务模块

五、接口设计

对于接口的设计,详情可查看Github仓库中的:接口开发文档

六、系统安全与权限设计

6.1 系统安全

  • 在对于前后端分离的接口设计时,应当考虑接口安全性,用户是否有足够的权限可以调用或访问接口,我们将使用JsonWebToken生成用户token,在调用接口时将用户token以请求头的形式进行上传,进行验证用户权限,当用户有权限或在token规定的时间中开发对接口的使用

  • 对于数据库安全性,以定时任务将数据库进行备份

6.2 权限设计

  • 通过对登录的验证返回token,将权限加密存储至token中,在使用时进行权限验证

七、工作流程及分工、贡献度比例

  • 分工贡献度

    学号 姓名 工作内容 贡献度
    212106705 陈明灿 数据库文档、接口文档编写、博客的编写及发布 25%
    212106756 陈贇 系统开发文档编写及图例绘制 25%
    212106731 沈丹 E-R图绘制及数据库创建 18%
    212106764 黄智嘉 文档整理、协同开发 14%
    212106762 黄佳琳 PPT制作及答辩准备、协同开发 18%

八、Github-commit记录

九、Github地址及文档

posted @ 2022-05-01 23:11  比奇堡的小机灵鬼  阅读(90)  评论(0编辑  收藏  举报