Skip to content

Newway1997/book_mng_sys_2019

Repository files navigation

图书管理系统设计文档

本项目已用springboot+datajpa+vue3+typescript+element-plus重构,详情可看 book_mng_sys_2022

一、简介

图书借阅是学生获取知识的一个很重要的途径,如何既能方便学生借书,又能减轻图书馆管理人员的工作负担,高效地完成图书借阅管理工作,是一件非常重要的事情。web 图书管理系统可以使图书借阅更加方便和快捷。

二、演示

请访问http://112.74.35.49:8002 用户测试账号:user,密码:123456 管理员测试账号:admin,密码:123456 数据库建表sql文件:book_store_2019.sql

三、技术栈

  • 后端:java+Spring+SpringMVC+Mybatis
  • 前端:VueJs+Element

四、功能设计

图书管理系统主要功能分为两端,一位用户访问的客户端,另一个为管理员访问的管理端。 ### 用户端主要功能有:

  1. 用户基础功能
    • 登录注册注销
    • 修改密码
    • 用户信息查看
    • 用户信息修改
  2. 用户图书操作功能
    • 访问图书列表
    • 查看图书信息
    • 借阅图书
    • 归还图书
    • 查看已借图书

管理端主要功能有:

  1. 管理员基础功能
    • 登录注册注销
  2. 管理员图书操作功能
    • 上传图书
    • 查询图书
    • 图书状态管理
    • 修改图书
  3. 管理员操作用户功能
    • 查询用户
    • 封禁解封用户

五、 数据库设计

  1. 用户

    user

    字段名 类型 长度 是否为空 描述
    id int 11 主键,用户 id
    username varchar 32 用户名
    password varchar 32 密码
    type int 11 0 为管理员,1 为用户
    status int 11 用户状态:0 为禁用 1 为启用

    reader

    字段名 类型 长度 是否为空 描述
    id int 11 主键,读者 id
    name varchar 32 姓名
    age int 11 年龄
    sex int 11 性别 1:男 or 0:女
    phone varchar 11 电话
    regdate datetime 注册时间
    level int 11 读者等级,默认 0 级
    status int 11 读者状态:0 为禁用 1 为启用

    reader_level

    字段名 类型 长度 是否为空 描述
    id int 11 主键,读者等级 id
    max_br_num int 11 最大借阅书本数
    max_br_time int 11 最大借阅时间
  2. 图书

    book

    字段名 类型 长度 是否为空 描述
    isbn varchar 32 主键,书籍 ISBN
    category_id int 11 书籍类别
    bookname varchar 255 书名
    author varchar 32 作者
    publisher varchar 32 出版社
    publish_date datetime 出版时间
    unit_price decimal 10 单价
    img_url varchar 255 图片地址
    summary text 简介
    all_num int 11 总数量
    tags varchar 255 标签
    last_num int 11 剩余数量
    status int 11 图书状态,0 为下架,1 为上架

    category

    字段名 类型 长度 是否为空 描述
    id int 主键,书籍类别 id
    category_name varchar 32 书籍类别
  3. 借阅表

    borrow_book

    字段名 类型 长度 是否为空 描述
    id int 11 主键,借阅 id
    isbn varchar 32 书籍类别
    reader_id int 11 书名
    borrow_date datetime 作者
    return_date datetime 出版社
    fine decimal 10 出版时间
    status int 11 借阅状态 0 为未完成,1 为已完成

六、后端设计

  1. 实体层
    • User.java :
      • int id
      • String username
      • String password
      • int type
      • int status
    • Reader.java :
      • int id
      • String name
      • int age
      • int sex
      • String phone
      • Date regdate
      • int level
      • int status
      • int maxBrNum
      • int maxBrDay
    • Book:
      • String isbn
      • int categoryId
      • String categoryName;
      • String bookname
      • String author
      • String publisher
      • Date publishDate
      • float unitPrice
      • String imgUrl
      • String summary
      • int allNum
      • ArrayList tags
      • int lastNum
      • int status
    • BorrowBook
      • int id
      • Book book
      • Reader reader
      • Date borrowDate
      • Date returnDate
      • float fine
      • int status
  2. 数据访问层
    • UserDao
    • ReaderDao
    • BookDao
    • BorrowDao
  3. 服务层
    • BookService
    • UserService
    • ReaderService
    • BorrowBookService
  4. 控制层
    • BookController
    • UserController
    • ReaderController
    • AdminController

七、 API

  1. 用户操作

    1. 用户登录

      请求路径 /api/user/login
      请求方法 post
      参数 username,password
      返回值 user
    2. 用户注册

      请求路径 /api/user/register
      请求方法 post
      参数 username,password
      返回值
    3. 用户注销

      请求路径 /api/user/logout
      请求方法 get
      参数
      返回值
    4. 修改密码

      请求路径 /api/user/updatePass
      请求方法 post
      参数 newPass,oldPass
      返回值
    5. 获取用户信息

      请求路径 /api/reader/getReaderInfo
      请求方法 get
      参数
      返回值 reader
    6. 用户信息修改

      请求路径 /api/reader/updateUserInfo
      请求方法 post
      参数 reader
      返回值 reader
  2. 书籍操作

    1. 访问图书列表

      请求路径 /api/book/getBooks
      请求方法 get
      参数 pageSize,curPage
      返回值 books
    2. 查看图书信息

      请求路径 /api/book/getBookDetail
      请求方法 get
      参数 isbn
      返回值 book
    3. 借阅图书

      请求路径 /api/book/borrowBook
      请求方法 get
      参数 isbn
      返回值 book
    4. 归还图书

      请求路径 /api/book/returnBook
      请求方法 get
      参数 isbn
      返回值 book
    5. 查看已借图书

      请求路径 /api/borrowBook/getBorrowBooks
      请求方法 get
      参数
      返回值 borrowBooks
    6. 上传图书

      请求路径 /api/book/uploadBook
      请求方法 post
      参数 book
      返回值
    7. 上架图书

      请求路径 /api/book/enableBook
      请求方法 get
      参数 isbn
      返回值
    8. 下架图书

      请求路径 /api/book/disableBook
      请求方法 get
      参数 isbn
      返回值
    9. 修改图书

      请求路径 /api/book/updateBook
      请求方法 get
      参数 newBook
      返回值
    10. 查询用户

      请求路径 /api/user/getAllUsers
      请求方法 get
      参数 curPage,pageSize
      返回值 users
    11. 封禁用户

      请求路径 /api/user/disableUser
      请求方法 get
      参数 id
      返回值
    12. 启用用户

      请求路径 /api/user/enableUser
      请求方法 get
      参数 id
      返回值

About

基于后端SSM框架和前端Vue+Element-UI的图书管理系统

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published