出版社图书订购管理系统的设计与实现
1. 绪论
1.1 研究背景
1.1.1 出版业的发展与挑战
- 随着数字化阅读的普及,出版社面临的市场竞争日益激烈。
- 传统图书订购方式效率低下,难以满足现代市场的快速响应需求。
- 大数据和人工智能技术为出版社提供了优化订购流程的新机遇。
1.1.2 Java技术在出版业中的应用
- Java语言因其稳定性和跨平台特性,在企业级应用开发中广受欢迎。
- Java面向对象的特点使其在开发复杂管理系统时具有优势。
- Java技术可以帮助出版社实现更高效、精准的图书订购管理。
1.2 研究意义
1.2 研究意义
- 提高出版社管理水平和效率,通过信息化手段实现对图书订购、库存、销售等环节的优化管理。
- 利用Java技术实现系统开发,提供稳定、高效的运行环境,缩短项目周期,提高工作效率。
- 优化图书订购流程,实现自动化处理订单、实时更新库存、智能推荐等功能,提高准确性和效率。
- 降低运行成本,通过资源整合,降低人力、物力和时间成本,控制库存成本,提高资金周转速度。
2. 需求分析
2.1 目标
2.1 系统目标
- 实现对图书展示、订购、库存、销售、赠送、订单等环节的信息化管理。
- 提供数据分析功能,帮助出版社了解市场动态和读者需求。
2.2 功能需求
2.2 功能需求
- 用户管理:实现对用户的添加、删除、修改、展示及权限处理。
- 图书管理:实现图书信息的添加、修改、删除、展示,以及图书分类、作者等信息的管理。
- 类别管理:实现对图书类别的添加、修改、删除、展示。
- 库存管理:实现对库存信息的实时更新。
- 赠送管理:实现对高校书展的通知展示,及高校的样书赠送等。
- 订单管理:实现订单审核、发书处理、回单签收、订单取消、订单查询等功能。
2.3 界面需求
2.3 界面需求
- 友好性:用户界面简洁明了,操作方便。
- 兼容性:兼容主流浏览器,提供良好用户体验。
- 个性化设置:用户可根据个人喜好进行界面个性化设置。
3. 开发工具及技术简介
3.1 开发工具
3.1 开发工具
- Idea 2022集成开发工具
- MySQL 5.6数据库
- JavaEE8开发环境
3.2 技术选型
3.2 技术选型
- Spring Boot2.2.x
- Spring Framework 5.2.x
- Apache Shiro 1.7
- Apache MyBatis 3.5.x
- Hibernate Validation 6.0.x
- Alibaba Druid 1.2.x
- Bootstrap 3.3.7
- Thymeleaf 3.0.x
4. 总体设计
4.1 功能总体设计
4.1 功能总体设计
- 客户管理模块:管理员实现对客户信息的添加、修改、查询、删除操作。
- 权限管理模块:管理员实现对客户账号的权限授权和修改。
- 图书管理模块:管理员实现对图书的添加、修改、删除、展示操作。
- 类别管理模块:管理员实现对图书类别的添加、修改、删除、展示操作。
- 库存管理模块:实时更新库存信息。
- 赠送管理模块:实现对高校书展的通知展示和样书赠送等。
- 订单管理模块:实现订单审核、发书处理、回单签收、订单取消、订单查询等功能。
4.2 数据模型设计
4.2.1 数据项
- 用户表(用户编号,登录账号,用户昵称,用户邮箱,联系人电话,性别,头像路径,密码,盐加密,账号状态,删除标志,客户名,客户电话,联系人,备注等)
- 角色表(角色编号,角色名,角色权限字符串,显示顺序,角色状态,删除标志,创建时间,备注等)
- 用户角色中间表(用户编号,角色编号)
- 图书表(图书编号,ISBN,图书名,作者,出版社,出版日期,价格,描述,图片路径,创建时间,库存,类别编号等)
- 类别表(类别编号,类别名,创建时间,类别排序等)
- 购物车表(购物车ID,数量,用户编号,图书编号,小计,创建时间等)
- 订单表(订单编号,用户编号,订单状态,创建时间,总价,图书项字符串等)
- 需求表(需求ID,教师名,地址,邮编,电话,ISBN,图书名,价格,QQ,邮箱,学校,院系,所授课程,是否是精品课程,数量,出版时间,状态,用户编号,创建时间等)
- 通知公告表(公告ID,公告标题,公告类型,公告内容,状态,创建人,创建时间,更新人,更改时间,备注等)
- 菜单表(菜单ID,菜单名,请求地址,权限标识,菜单图标等)
- 角色菜单关系表(角色ID,菜单ID等)
5. 详细设计与实现
5.1 客户功能
5.1.1 客户登录
- 账号和密码为后台管理员提供,客户不需要对自己的账号进行注册,在登录过程中为了数据安全密码涉及加密处理,通过验证账号和加密后的密码实现登录,如果登录失败有相关账号或者验证码错误
- 这里填写列表标题下的正文说明
- 在登录过程中,其实是先对验证码实现验证,如果验证码验证无误之后才对账号以及密码实现验证。在首页登录处理账号的登录之外,还有一个记住我操作,如果勾选,下次再登录的时候,不要输入账号密码就可以实现验证
- 这里填写列表标题下的正文说明
5.1.2 修改密码
- 后台管理员给客户初始的密码,初始密码123456,如果客户需要修改修改密码,可以点击左上角头像可以修改个人中心的自己的信息。点击右上角的头像可以修改个人的基本信息以及密码,点击修改密码,可以看到密码修改界面信息,账号是不可以修改的,密码修改需要输入旧密码和新的密码并确认一致后才可以修改完成,否则会有相关的错误提示,比如两次密码输入不一致等错误,或者旧密码错误等提示
- 这里填写列表标题下的正文说明
5.1.3 图书查询
- 如果客户具有图书管理中的相关权限,我们可以在系统首页系统管理中可以看到图书管理,同时在页面和后台都对该客户的图书查看权限进行验证,通过后,客户可以点击查询图书信息
- 这里填写列表标题下的正文说明
5.1.4 购物车
- 当客户购买订购图书时,点击图书信息后的加入购物车,可进行相关的订购操作及购物车操作
- 在购物车中客户可以实现对购物车的删除操作及数量的修改操作,在修改数量的时候,添加的数量不能超过现在已有的库存数量,如果操作会有相关提示,如图5.7。当只有勾选上的图书,下方的总价才会改变,否则不会改变。当需要订购的时候,点击上方如图5.6的订购图书按钮,可以实现对图书的订购。
- 这里填写列表标题下的正文说明
5.1.5 赠送管理
- 进入到赠送管理界面的时候,当客户点击新增按钮的时候,学员老师可以对需求的图书信息进行添加,添加成功后赠送状态为未赠送,当管理员在对图书订单进行发货通知的时候开始赠送才可以改变当前的状态
- 这里填写列表标题下的正文说明
5.1.6 展示通知
- 在展示安排功能页面,点击展示安排选项可以看到相关院校的图书展示通知,通知分为通知,公告2个类型,客户可以根据自己的条件进行查询
- 这里填写列表标题下的正文说明
5.1.7 订单管理
- 当客户在购物车点击订购图书按钮,并成功订购图书后,客户可以在订单管理界面看到自己订购图书订单的相关信息。当前客户所有的订单状态都为未发货状态。当管理员点击发货状态的时候,客户这里才可以看到订单的状态发生改变,此时订单的状态有待发货,已发货两个状态
- 这里填写列表标题下的正文说明
- 同时客户可以取消订单,但是需要管理员审核后才可以取消成功。在管理员核实过程中订单的状态一直显示未待取消的状态。当确认收货后,需要客户进行确认签收,才可以完成订单。也就是说订单的状态才可以发生改变。
- 这里填写列表标题下的正文说明
5.2 管理员功能
5.2.1 客户管理
- 后台管理员成功登录后进入后台,点击客户管理,可以对该客户信息进行相关的操作,如图5.14,可以通过上方实现通过昵称,电话,状态,创建时间等多条件检索,更改查询出客户的相关信息。点击当前某个客户的删除按钮,可以删除当前客户的信息。点击编辑可以对客户的信息进行修改。
- 这里填写列表标题下的正文说明
- 每个客户都有一个初始密码123456,并对该页面的信息进行了相关的不为空校验和手机校验,邮箱校验等,并同时给客户分配角色,目前只有两个角色,一个管理员,一个普通用户角色。如果想要添加相关角色,需要通过后台管理员进行添加,但是就现在而言,目前的两个角色就可以实现现有的操作权限
5.2.2 权限管理
- 权限管理主要通过权限字符和权限菜单实现权限管理的,如果在数据库中该角色有该权限字符,且在后台与前端页面有相关的权限字符,才可以有权限操作,否则没有相关权限。
- 这里填写列表标题下的正文说明
5.2.3 图书管理
- 后台管理员可以通过图书管理实现对图书的上传,下架,编辑等操作,也可以将图书的信息导出到表格中。在图书上传过程中对图片的格式进行了校验,同时后台也就行了校验,前后进行双重校验保证图片的格式
- 这里填写列表标题下的正文说明
5.2.4 类别管理
- 管理员可以实现对图书类别的管理,方便对图书进行管理,在图书管理时可以通过类别快速检索到对应的书籍信息。点击当前类别的删除按钮可以实现单个删除,点击列表上方的删除可以实现批量删除,但是必须要勾选要删除的列表信息,否则会有错误提示。修改也是需要勾选要修改的列表信息才可以,否则也有错误提示
- 这里填写列表标题下的正文说明
5.2.5 客户需求管理
- 客户管理员针对于该功能,只是具有查询的权限,没有相关编辑及修改的权限。通过该功能可以看到客户需求的数据,后台管理员在完成发书处理的时候,将该赠书同时发出。同时在该模块修改需求赠送的状态修改。
- 这里填写列表标题下的正文说明
5.2.6 展示安排
- 当出版社需要在指定的时间去院校展览图书的时候,可以通过该模块发出通知,或者公告发布相关信息。这样的话所有的客户都可以看到相关的公告展示信息。管理员对该公告信息具有修改,添加,查询,删除的功能。如图5.23。点击对应的按钮可以实现对应的操作。如果操作错误,并有相关的提示信息出现。
- 这里填写列表标题下的正文说明
5.2.7 订单管理
- 当客户发出订单预定,及预定成功后,后台管理员可以查看到已经生成订单及订单状态的相关信息。当客户发出取消订单的请求时,需要后台管理员审核并确认信息,确认信息后客户才可以进一步操作订单的状态。
- 这里填写列表标题下的正文说明
- 这里填写列表标题下的正文说明




