2025120522364362点击下载
2025120522385963点击下载
淘宝购买一个viso软件,5块钱,
然后结合下面所有完整的图来,图右击,viso对象
系统设计
1.1 系统需求概述
本系统是B/S典型框架,前端技术框架是通过业界主流框架VUE来实现,后端技术实现框架是通过Spring、Spring MVC、MyBatis来实现的,数据库选型为MySQL。
Service层主要负责处理核心的逻辑功能。为了实现Service层的功能,通常将Service定义为一个接口(服务接口),然后创建该接口的实现类(服务实现)。这种设计模式被称为“服务接口和实现类”模式。
使用Service接口和实现类的好处:使用Service接口和实现类的优势在于提高代码的可维护性。通过将业务逻辑与数据访问分离,代码更易理解和修改,并且可以在不影响其他部分的情况下对业务逻辑进行调整或优化。此外,实现了面向接口编程,Service接口定义了服务功能,而实现类负责具体实现,使系统更加灵活和可扩展。同时,支持单元测试也是一个重要优点。由于业务逻辑与数据访问分离,可以更容易地编写单元测试并进行测试驱动开发,并且可以针对Service接口编写Mock对象来模拟各种场景以验证业务逻辑是否正确。最后,在降低耦合度方面也有显著效果。Service层与DAO层之间通过接口进行交互减少了直接依赖关系,有利于系统各个模块之间相互独立、松耦合,并且易于维护和升级。使用Service接口和实现类能够提高代码质量、可维护性,并支持系统扩展和单元测试。整体技术结构图如下3-1所示。
图3-1 整体技术结构图
1.2 功能详细设计
本系统主要功能分为4大模块,包括用户注册登录模块、个体用户求职模块、企业用户招聘模块和系统管理模块。其中,用户注册登录模块涵盖了用户注册、用户登录和登录验证三大功能;个体用户求职模块包含了我的简历、用户设置、消息通知和岗位申请四大功能;企业用户招聘模块则包括了企业信息、用户设置、岗位发布、岗位设置和消息通知五大功能;最后,系统管理模块涉及到了用户管理、系统设置和企业管理三大功能。其中,用户注册根据不同的账号类型来区分,在注册时可以选择是求职者还是企业招聘,根据不同的账号类型分别呈现不同的功能,登录同理。系统管理员有独立的登录域名地址,从页面上不会对外呈现注册登录信息。系统功能模块图如下3-2所示。
3-2 系统整体功能模块图
如图4-2所示,用户在进入登录系统之后,输入账号密码,系统核对是否有账号,如果有,且用户输入正确,则用户成功登录,如果没有,用户则进入注册页面,进行注册,注册成功后再进行登录。
图4-2 用户端系统登录注册流程图
如图4-3所示,志愿者发起添加互助信息,填写相应信息,系统判定信息是否填写完整,如果信息填写完整,用户提交后操作成功。如果信息没有填写完整,则返回信息填写界面。
图4-3 志愿者端添加互助信息流程图
如图4-4所示,管理员查看志愿者信息,点击添加,填写相应信息,系统审核信息填写是否完整且符合格式,若填写完整且符合格式,则操作成功,如果信息填写不完整或不符合格式,返回填写相应信息处。
图4-4 管理员端添加志愿者信息流程图
如图4-5所示,用户发起添加服务项目信息,填写相应信息,系统判定信息是否填写完整,如果信息填写完整,用户提交后操作成功。如果信息没有填写完整,则返回信息填写界面。
图4-5 用户添加服务项目信息流程图
1.1.1 注册功能详细设计
对于本系统而言,注册是使用本系统的第一步。游客访问具体内容需要注册一个账号才能进行正常的使用,注册时需要输入以下信息:账号名称、设置密码、重复确认密码、注册用户类型以及验证码。系统会首先验证用户的合法性和验证码的准确性,然后检查两次输入的密码是否一致。如果验证通过,系统将向后端发送注册请求。将注册用户的基本信息存入到数据库,存储成功即给用户返回成功注册信息,并跳转到登录页面,默认填充已经填写的用户名称和密码,输入验证码即可进入到系统首页。如下图3-3所示为注册功能详细设计图。
图3-3 注册功能详细设计图
1.1.2 登录功能详细设计
注册成功的用户在本系统中需进行登录才能使用。首先需要输入用户名称、密码以及验证码,前端会验证验证码是否通过,若验证通过则向后端发送申请。后端会通过用户名称查询对应的用户名和密码,并将结果返回到service方法中进行校验,最终返回用户。如果整个过程都顺利通过,则用户可以进入对应类型的首页,即求职者或企业招聘者的首页。如下图3-4所示为登录功能详细设计图。
图3-4 登录功能详细设计图
1.1.3 简历编辑功能详细设计
求职者登录到系统后,可以在个人信息中创建、编辑、查看、删除自己的求职简历。在简历的增删改查中,以编辑简历为例,求职者在前端的简历中更新自己的简历信息,前端校验对应字段的长度、字符格式是否符合要求,即长度是否在一定范围内, 每一个字段的字符串里是否包含一些非法的特殊字符,在验证通过后向后端请求更新简历内容,UserResumeController里对每一个字段进行校验,也同时校验长度以及特殊字符,并进行安全校验。在通过验证后通过用户id、简历id更新对应的数据库表的数据,并将操作成功或者失败信息返回给前端展示。如下图3-5所示为简历编辑功能详细设计。
图3-5 简历编辑功能详细设计
1.1.4 岗位投递功能详细设计
求职者在创建完或者编辑完简历后,会在众多发布岗位的公司里进行投递。前端收到客户点击对于某一个公司的岗位进行投递后,默认校验数据本身的合法性。在验证通过后向后端发送简历投递请求,UserResemeApplyController方法对默认对请求的数据进行字符串合法性校验。
在校验通过后,在对应公司的岗位id中新增关联该用户id的简历id,若企业招聘者查看该简历,则根据该简历id查询该简历的所有数据返回给企业招聘者。如下图3-6所示为岗位投递功能详细设计图。
图3-6 岗位投递功能详细设计图
1.1.5 岗位发布功能详细设计
企业招聘者在登录后,可以新增岗位信息,并进行发布。企业招聘者在前端填写完岗位信息并点击发布,前端默认校验字符串合法性,验证通过后,向后端发送岗位发布请求。JobPostingController方法默认对请求数据的合法性进行校验,验证通过后向对应公司id 的岗位信息列表中新增一个岗位信息,并且将发布状态置为发布中。如下图3-7所示为岗位发布功能详细设计图。
图3-7 岗位发布功能详细设计图
1.1.6 企业信息编辑功能详细设计
企业招聘者登录后,可以在自己的主页上更新企业信息。点击前端的“更新数据”按钮后,在对应的数据栏输入所需更新的字段。输入完成后,默认对数据进行字符合法性校验,验证通过后发送更新企业信息的请求。EnterpriseInfoController方法默认对字符串进行合法性校验,校验通过后,更新企业信息表对应企业id的数据,并返回更新成功或失败结果。如下图3-8所示为企业信息编辑功能详细设计图。
图3-8 企业信息编辑功能详细设计图
1.1.7 用户管理功能详细设计
系统管理员在登录后可以对企业用户以及求职者用户进行日常管理。如下图3-9所示为用户拉黑管理功能详细设计图。
图3-9 用户拉黑管理功能详细设计图
1.3 数据库表的设计
1.1.8 数据库概念设计
系统实体范围主要包含:求职者、简历、岗位、企业招聘人员;核心实体联系E-R图如下图3-10所示。
图3-10 系统E-R图
用户实体描述了不同用户注册登录及信息,招聘者和求职者没有管理员所拥有的权限,其实体图如3-11所示。
图3-11 用户实体图
招聘者实体主要包括上传企业信息,查看求职者简历,修改岗位信息等,其实体图如3-12所示。
图3-12 招聘者实体图
求职实体主要包括编辑简历信息、上传简历、查看岗位信息、接受消息通知、投递简历其实体图如3-13所示。
图3-13 求职者实体图
3.4 用例图
3.4.1 管理员用例图
管理员处理的事务如下:
登录:管理员输入用户名,密码来执行登录操作。
个人中心:成功登入帐户后,管理员的个人信息将会被显示出来,包含管理员用户名、密码等。
图3.1 管理员用例图
3.4.2 捐赠者用例图
捐赠者:
注册登录:如果企业是首次登录,需要在注册成功后执行登录操作。
个人中心:登录后可以查看和修改个人信息。其中包括我的收藏,还能查看收藏碳商品等信息。
图3.2 捐赠者用例图
3.4.3 捐赠机构用例图
捐赠机构:
个人中心:在登录后,可以看到并修改您的个人信息。
……….
图3.3 捐赠机构用例图
3.5 用例描述
3.5.1捐赠者捐赠用例描述
表3.2 捐赠者“在捐赠项目中进行捐赠”的用例文档
| 用例名称:捐赠者在捐赠项目中进行捐赠 |
| 执行者:捐赠者 |
| 简要说明:
捐赠者在捐赠项目中进行捐赠操作 |
| 基本事件流:
1. 捐赠者登录系统后进入首页,点击捐赠项目。 2. 系统跳转到捐赠项目详情页 3. 调整商品数量,点击“添加到购物车” 4. 显示“添加成功”,将商品添加到购物车 5. 点击“购物车”页面 6. 系统跳转到购物车页面,显示购物车信息 |
3.5.2捐赠者查看捐赠记录用例描述
表3.3 捐赠者“查看捐赠记录”的用例文档
| 用例名称:捐赠者查看捐赠记录 |
| 执行者:捐赠者 |
| 简要说明:
|
| 基本事件流:
1. |
3.5.3 捐赠机构发布捐赠项目用例描述
表3.4 捐赠机构“发布捐赠项目”的用例文档
| 用例名称: |
| 执行者:捐赠机构 |
| 简要说明:
|
| 基本事件流:
1. |
3.5.4 管理员审核项目用例描述
表3.5 管理员“”的用例文档
| 用例名称: |
| 执行者:管理员 |
| 简要说明:
|
| 基本事件流:
1. |
3.3 数据流图、数据字典及UML模型
3.3.1 数据流图
本系统数据流图如图3.1及图3.2所示。
图3.1 顶层数据流图
图3.2 1层数据流图
第4章 系统设计
4.1 系统功能设计
在系统开发前,我们需要对系统进行全面的需求分析,在此基础上,再根据具体的功能来进行开发。每一个角色都有自己的职责,有自己的编程逻辑。在最后实现之前,一些复杂的要求必须进行修订和改进。本系统设计初衷是为了政府及企业进行碳交易使用研发的,通过交易的碳量来实现“碳中和”这一目标。从过程上看,通过互联网技术实现碳的网上交易,方便企业定制节能减排方案,也便于政府管理。
图4.1 功能模块图01
图4.2 功能模块图02
图4.3 功能模块图03
4.2 核心类图
经过之前的系统分析设计,确定了碳交易系统的9个主要类对象。即“用户(user)”、“管理员(admin)”、“企业(enterprise)”、“碳供应商(Carbon supplier)”、“留言反馈(messages)”、“碳商品分类(Carbon class)”、“碳商品(Carbon commodities)”、“购物车(cart)”、“订单(order)”。其中管理员和留言反馈、公告信息、碳量交易、订单之间有关系;管理员和企业、碳供应商之间也存在着关系;企业和留言反馈、公告信息、碳量交易、订单之间存在关系;碳供应商和订单、碳商品之间存在关系;订单和碳量交易之间存在关系。根据这些类之间的关系可以详细的画出系统的类图,如图4.3所示。
图4.3 系统类图
4.3 序列图
4.3.1 捐赠者捐款序列图
- 企业输入登录信息,进行验证后登录。
- ……
图4.4序列图
4.3.2 捐赠者查看捐赠记录序列图
- 企业输入登录信息,进行验证后登录。
图4.5序列图
4.3.3 管理员审核项目序列图
图4.6序列图
4.3.4 管理员修改公告信息序列图
- 管理员输入信息登录,验证成功后登录。
图4.7序列图
4.3.5 捐赠机构发布捐赠项目序列图
图4.8序列图
4.4 活动图
4.4.1 捐赠者捐款活动图
- 企业进入登录显示页面输入用户名密码信息,判断登录的账号是否正确。
- ……
图4.9 企业购买碳商品活动图
4.4.2 捐赠者查看捐款记录活动图
- 企业输入登录信息,进行验证后登录。
图4.10活动图
4.4.3 管理员审核项目活动图
图4.11活动图
4.4.4 管理员修改公告信息活动图
- 管理员登入系统管理端界面,点击进入企业信息模块。
图4.12 活动图
4.4.5 捐赠机构发布捐赠项目活动图
图4.13活动图
4.5 数据库设计
4.5.1 数据库概念设计
在深入分析了系统的数据库之后,得出了关于用户的一些关键信息。这些用户数据的核心特征包括有用户id、用户名、密码、头像、角色、新增时间。用户实体图见图4.14用户实体图。
图4.14 用户实体图
图4.15 碳供应商实体图
图4.16 企业实体图
图4.17 碳商品类别图
图4.18 留言反馈实体图
图4.19 碳商品实体图
图4.20 公告信息实体图
图4.21 碳交易量统计实体图
图4.22 购物车实体图
碳排放交易系统通过将实体、属性和关系进行结合,E-R图能够清楚地反映出数据模型的结构以及数据间的关系,有助于数据库设计者和开发者更好地理解和沟通数据需求。系统用户E-R图见图4.23数据库E-R图。
图4.23 数据库E-R图
功能性测试主要针对系统对用户提供的功能进行测试,如下为核心功能的测试用例设计以及执行结果。
功能描述为注册功能测试,前提条件是环境已经正确部署。注册功能测试数据表,如表5-1所示。
表5-1 注册功能测试表
| 序号 | 输入/动作 | 期望结果 | 实际结果 | 是否正确 | 报错现象 |
| 1 | 登录注册页面并填写信息 | 页面成功打开无报错,信息可以正常填写 | 无报错信息,信息可以正常填写 | 正确 | 无 |
| 2 | 点击注册按钮 | 成功注册并跳转到登录页面 | 成功跳转到登录页面并记录注册的信息 | 正确 | 无 |
登录系统后,输入的账号密码会到后台进行验证,验证通过后则可以正常登录。登录功能测试表,登录成功则自动跳转到相对应的用户界面,前提条件是必须为该系统已注册的用户,在输入正确的账号密码后验证通过即可打开相对界面,反之没有通过系统验证的用户无法进入系统。
功能描述为求职者、企业招聘者、超级管理员登录功能测试;前提条件为已经注册账号。登录功能测试表如5-2所示。
表5-2 登录功能测试表
|
|||||||||||
| 1 | 打开登录页面无报错 | 页面成功打开无报错,信息可以正常填写 | 无报错信息,信息可以正常填写 | 正确 | 无 | ||||||
| 2 | 点击登录按钮 | 1、求职者成功登录并跳转到求职者信息管理页面
2、企业招聘者成功登录并跳转到企业招聘者信息管理页面 |
1、求职者成功登录并跳转到对应页面
2、企业招聘者成功登录并跳转到对应页面
|
正确 | 无 | ||||||
求职者在进入系统后会对简历进行编辑和保存。功能描述为求职者个人简历编写用例。前提条件为求职者成功登录。表5-3为求职者编辑简历测试。
表5-3 简历编辑测试表
| 序号 | 输入/动作 | 期望结果 | 实际结果 | 是否正确 | 报错现象 |
| 1 | 打开个人信息管理页面无报错 | 页面成功打开无报错 | 无报错信息 | 正确 | 无 |
| 2 | 点击“我的简历”按钮,并在对应板块进行信息填写 | 信息可以正常填写
|
信息可以正常填写
|
正确 | 无 |
| 3 | 保存简历信息 | 保存无报错,且正常保存结果信息 | 信息填写完成后可以保存 | 正确 | 无 |
求职者在填写完简历后求职者进行简历的投递。
功能描述为求职者投递简历用例。前提条件为求职者成功登录。表5-4为简历投递功能测试表。
表5-4 求职者投递简历测试表
| 序号 | 输入/动作 | 期望结果 | 实际结果 | 是否正确 | 报错现象 |
| 1 | 打开某个职位 | 页面成功打开无报错 | 无报错信息 | 正确 | 无 |
| 2 | 点击简历投递 | 成功投递无报错 | 可以正常投递
|
正确 | 无 |
| 3 | 登录对应企业账号,查看消息 | 找到投递的简历信息 | 成功找到投递的简历信息 | 正确 | 无 |
企业编写在招岗位信息,也可以设置岗位要求。功能描述为企业招聘者编写岗位信息用例。前提条件为企业招聘者成功登录。表5-5为企业招聘者编写岗位信息测试表。
表5-5 企业招聘者编写岗位信息测试
| 序号 | 输入/动作 | 期望结果 | 实际结果 | 是否正确 | 报错现象 |
| 1 | 打开岗位设置 | 页面成功打开无报错 | 无报错信息 | 正确 | 无 |
| 2 | 新建岗位信息并填写 | 成功新建无报错 | 可以正常新建
|
正确 | 无 |
| 3 | 编辑刚刚新建的岗位信息 | 可以正常编辑 | 可以正常编辑 | 正确 | 无 |
企业在成功编写岗位信息后要进行岗位信息发布。功能描述为企业招聘者发布岗位信息用例。前提条件为企业招聘者成功登录。表5-6为企业招聘者发布岗位信息测试表。
表5-6 企业招聘者发布岗位信息测试
|
|||||||||||
| 1 | 打开岗位设置 | 页面成功打开无报错 | 无报错信息 | 正确 | 无 | ||||||
| 2 | 点击发布 | 成功发布无报错 | 可以发布新建 | 正确 | 无 | ||||||
| 3 | 登录求职者账号可以搜到对应的职位信息 | 可以搜到对应的职位信息 | 可以搜到对应的职位信息 | 正确 | 无 | ||||||
管理员有权限对于求职者和招聘者进行管理。功能描述为超级统管理员用户管理用例。前提条件为超级统管理员成功登录。
管理员也和其他用户一样有登录和注册功能等。表5-7为管理员用户管理测试。
表5-7 管理员用户管理表
|
|||||||||||
| 1 | 超级管理员账号登录 | 页面成功打开无报错 | 无报错信息 | 正确 | 无 | ||||||
| 2 | 点击用户管理 | 成功打开无报错 | 可以成功打开 | 正确 | 无 | ||||||
| 3 | 选择其中一个账号进行禁言 | 可以按照指定的时间期间内对用户禁言 | 可以对客户进行禁言 | 正确 | 无 | ||||||
| 4 | 登录求职者账号查看账号状态 | 状态为禁言中,并且无法对企业进行投递 | 状态为禁言中,并且无法对企业进行投递 | 正确 | 无 | ||||||
| 5 | 选择其中一个账号进行封号 | 成功封号 | 操作成功无报错 | 正确 | 无 | ||||||
| 6 | 登录对应的账号 | 登录报错,无法登录 | 显示已被封号,无法登录 | 正确 | 无 | ||||||
| 7 | 选择已经被禁言的账号,点击解禁 | 成功解禁 | 操作成功无报错 | 正确 | 无 | ||||||
| 8 | 登录对应求职者账号查看账号状态 | 状态为正常,并且可以对企业进行投递 | 状态为正常,可以对企业进行投递 | 正确 | 无 | ||||||
| 9 | 选择已经被封号的账号,点击解封 | 成功解封 | 操作成功无报错 | 正确 | 无 | ||||||
求职者和招聘者之间的重要桥梁就是公告表,它帮助求职者获取职位信息;它帮助招聘者招贤纳士。它也可以给求职者和应聘者提供最新的岗位信息和求职信息,给求职者和招聘者提供及时的系统信息。
功能描述为超级管理员发布公告用例。前提条件为超级管理员成功登录。表5-8为管理员发布公告测试。
表5-8 管理员发布公告测试
|
|||||||||||
| 1 | 打开公告管理 | 页面成功打开无报错 | 无报错信息 | 正确 | 无 | ||||||
| 2 | 新建一条公告并发布 | 成功发布无报错 | 可以发布公告
|
正确 | 无 | ||||||
| 3 | 登录求职者账号 | 可以看到发布的公告信息 | 可以看到发布的公告信息 | 正确 | 无 | ||||||
