4 系统设计
4.1系统概要设计
校园悬赏任务平台并没有使用C/S结构,而是基于网络浏览器的方式去访问服务器,进而获取需要的数据信息,这种依靠浏览器进行数据访问的模式就是现在用得比较广泛的适用于广域网并且没有网速限制要求的小程序结构,图4.1就是开发出来的程序工作原理图。
图4.1 程序工作的原理图
4.2系统功能结构设计
校园悬赏任务平台针对管理员设置的功能有:添加并管理各种类型信息,管理用户账户信息,管理任务信息,管理任务资讯公告信息等内容。
校园悬赏任务平台针对用户设置的功能有:查看并修改个人信息,查看任务信息,查看任务资讯公告信息等内容。
4.3数据库设计
4.3.1数据库E-R图设计
程序设计是离不开对应数据库的设计操作的,这样的做法就是减少数据对程序的依赖性,所以数据库的设计也是需要花费大量的日常时间来进行设计的,在设计中对程序开发需要存储的数据信息进行实体划分,先确认实体,然后设计实体的属性等操作,这种设计就是数据库设计里面不能少的必须有的E-R模型设计。为了降低程序设计的对应的数据库设计难度,开发人员也可以使用相应的工具来进行E-R模型设计,现在市面上设计E-R模型的工具有PowerDesigner建模工具,Navicat制作工具,还有微软的Visio绘图工具。为了简便起见,本程序在设计E-R模型的时候,就选用了微软的Visio这款功能强大,操作便利的绘图工具。
(1)下图是论坛实体和其具备的属性。
论坛实体属性图
(2)下图是接取用户实体和其具备的属性。
接取用户实体属性图
(3)下图是任务收藏实体和其具备的属性。
任务收藏实体属性图
(4)下图是任务评价实体和其具备的属性。
任务评价实体属性图
(5)下图是任务订单实体和其具备的属性。
任务订单实体属性图
(6)下图是任务咨询实体和其具备的属性。
任务咨询实体属性图
(7)下图是发布用户实体和其具备的属性。
发布用户实体属性图
(8)下图是任务资讯任务资讯公告实体和其具备的属性。
任务资讯任务资讯公告实体属性图
(9)下图是任务实体和其具备的属性。
任务实体属性图
4.3.2 数据库表结构设计
本次程序开发选用的数据库管理工具是Mysql数据管理工具,使用它存放数据也需要创建程序对应的数据库文件,并命名刚创建的数据库文件,有了数据库也需要创建各种数据表来充实数据库,在数据表的创建中,不仅需要对数据表命名,也需要对数据表的字段进行设计,包括每个数据表里面需要设置的字段名称,字段对应的数据类型信息,字段的主键设置这个也是不可缺少的,因为每个数据表里面的主键就是标记着这个数据表跟其他数据表相区分的唯一标志。就相当于生活中的每个人都有姓名,但是上网搜索自己的名字,会发现全国上下有很多人的名字跟自己的名字一模一样,包括姓氏以及名字,区分每个人的唯一信息就是每个人的身份证号信息,主键在数据表里面也是起着这样的重要作用。下面就介绍本次开发的程序校园悬赏任务平台的数据表结构信息。
表4.1字典表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
dic_code |
String |
字段 |
是 |
3 |
dic_name |
String |
字段名 |
是 |
4 |
code_index |
Integer |
编码 |
是 |
5 |
index_name |
String |
编码名字 |
是 |
6 |
super_id |
Integer |
父字段id |
是 |
7 |
beizhu |
String |
备注 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.2论坛表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
forum_name |
String |
帖子标题 |
是 |
3 |
jiequyonghu_id |
Integer |
接取用户 |
是 |
4 |
fabuyonghu_id |
Integer |
发布用户 |
是 |
5 |
users_id |
Integer |
管理员 |
是 |
6 |
forum_content |
String |
发布内容 |
是 |
7 |
super_ids |
Integer |
父id |
是 |
8 |
forum_types |
Integer |
帖子类型 |
是 |
9 |
forum_state_types |
Integer |
帖子状态 |
是 |
10 |
insert_time |
Date |
发帖时间 |
是 |
11 |
update_time |
Date |
修改时间 |
是 |
12 |
create_time |
Date |
创建时间 |
是 |
表4.3任务资讯任务资讯公告表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
gonggao_name |
String |
任务资讯任务资讯公告名称 |
是 |
3 |
gonggao_photo |
String |
任务资讯任务资讯公告图片 |
是 |
4 |
gonggao_types |
Integer |
任务资讯公告类型 |
是 |
5 |
insert_time |
Date |
任务资讯任务资讯公告发布时间 |
是 |
6 |
gonggao_content |
String |
任务资讯任务资讯公告详情 |
是 |
7 |
create_time |
Date |
创建时间 |
是 |
表4.4接取用户表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
jiequyonghu_name |
String |
接取用户姓名 |
是 |
3 |
jiequyonghu_phone |
String |
接取用户手机号 |
是 |
4 |
jiequyonghu_id_number |
String |
接取用户身份证号 |
是 |
5 |
jiequyonghu_photo |
String |
接取用户头像 |
是 |
6 |
new_money |
BigDecimal |
余额 |
是 |
7 |
wanchenglv |
Integer |
完成率(百分比) |
是 |
8 |
jiequyonghu_email |
String |
接取用户邮箱 |
是 |
9 |
create_time |
Date |
创建时间 |
是 |
表4.5任务表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
fabuyonghu_id |
Integer |
发布用户 |
是 |
3 |
renwu_name |
String |
任务名称 |
是 |
4 |
renwu_uuid_number |
String |
任务编号 |
是 |
5 |
renwu_photo |
String |
任务照片 |
是 |
6 |
renwu_file |
String |
任务附件 |
是 |
7 |
zhixing_time |
Date |
任务执行时间 |
是 |
8 |
renwu_address |
String |
执行地点 |
是 |
9 |
renwu_types |
Integer |
任务类型 |
是 |
10 |
renwu_jine |
BigDecimal |
悬赏金额 |
是 |
11 |
renwu_clicknum |
Integer |
任务热度 |
是 |
12 |
renwu_content |
String |
任务要求 |
是 |
13 |
renwu_zhuangtai_types |
Integer |
任务状态 |
是 |
14 |
renwu_delete |
Integer |
逻辑删除 |
是 |
15 |
insert_time |
Date |
录入时间 |
是 |
16 |
renwu_yesno_types |
Integer |
申请状态 |
是 |
17 |
renwu_yesno_text |
String |
审核意见 |
是 |
18 |
renwu_shenhe_time |
Date |
审核时间 |
是 |
19 |
create_time |
Date |
创建时间 |
是 |
表4.6任务咨询表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
jiequyonghu_id |
Integer |
提问人 |
是 |
3 |
fabuyonghu_id |
Integer |
回答人 |
是 |
4 |
renwu_chat_issue_text |
String |
问题 |
是 |
5 |
issue_time |
Date |
问题时间 |
是 |
6 |
renwu_chat_reply_text |
String |
回复 |
是 |
7 |
reply_time |
Date |
回复时间 |
是 |
8 |
zhuangtai_types |
Integer |
状态 |
是 |
9 |
renwu_chat_types |
Integer |
数据类型 |
是 |
10 |
insert_time |
Date |
提问时间 |
是 |
11 |
create_time |
Date |
创建时间 |
是 |
表4.7任务收藏表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
renwu_id |
Integer |
任务 |
是 |
3 |
jiequyonghu_id |
Integer |
用户 |
是 |
4 |
renwu_collection_types |
Integer |
类型 |
是 |
5 |
insert_time |
Date |
收藏时间 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.8任务评价表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
renwu_id |
Integer |
任务 |
是 |
3 |
jiequyonghu_id |
Integer |
用户 |
是 |
4 |
renwu_commentback_pingfen_number |
Integer |
评分 |
是 |
5 |
renwu_commentback_text |
String |
评价内容 |
是 |
6 |
insert_time |
Date |
评价时间 |
是 |
7 |
reply_text |
String |
回复内容 |
是 |
8 |
update_time |
Date |
回复时间 |
是 |
9 |
create_time |
Date |
创建时间 |
是 |
表4.9任务订单表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
renwu_order_uuid_number |
String |
订单编号 |
是 |
3 |
renwu_id |
Integer |
任务 |
是 |
4 |
jiequyonghu_id |
Integer |
用户 |
是 |
5 |
renwu_order_true_price |
BigDecimal |
悬赏金额 |
是 |
6 |
renwu_order_types |
Integer |
订单类型 |
是 |
7 |
insert_time |
Date |
申请领取时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.10发布用户表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
fabuyonghu_name |
String |
发布用户姓名 |
是 |
3 |
fabuyonghu_phone |
String |
发布用户手机号 |
是 |
4 |
fabuyonghu_id_number |
String |
发布用户身份证号 |
是 |
5 |
fabuyonghu_photo |
String |
发布用户头像 |
是 |
6 |
new_money |
BigDecimal |
余额 |
是 |
7 |
fabuyonghu_email |
String |
发布用户邮箱 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.11管理员表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
username |
String |
老师名 |
是 |
3 |
password |
String |
密码 |
是 |
4 |
role |
String |
角色 |
是 |
5 |
addtime |
Date |
新增时间 |
是 |
5 系统实现
5.1管理员功能介绍
5.1.1管理员登录
系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。下图就是管理员登录页面。
图5.1 管理员登录页面
5.1.2 任务管理
项目管理页面提供的功能操作有:查看任务,删除任务操作,新增任务操作,修改任务操作。下图就是任务管理页面。
图5.2 任务管理页面
5.1.3 任务资讯公告信息管理
任务资讯公告信息管理页面提供的功能操作有:新增任务资讯公告,修改任务资讯公告,删除任务资讯公告操作。下图就是任务资讯公告信息管理页面。
图5.3 任务资讯公告信息管理页面
5.1.4任务资讯公告类型管理
任务资讯公告类型管理页面显示所有任务资讯公告类型,在此页面既可以让管理员添加新的任务资讯公告信息类型,也能对已有的任务资讯公告类型信息执行编辑更新,失效的任务资讯公告类型信息也能让管理员快速删除。下图就是任务资讯公告类型管理页面。
图5.4 任务资讯公告类型列表页面