目录
一、系统包含的技术:
后端:SpringBoot maven
前端:layui,js,css等
开发工具:IDEA
数据库:MySQL
JDK版本:jdk1.8
二、模块设计思路
用户端模块设计:订书、领书操作;查看已预订的教材、查看并修改个人信息
登录注册模块:密码加密、身份验证
管理端模块设计思路: 教材信息、用户信息、预订信息,包括零售教材、零售信息查询、报损处理、统计信息
教材信息:
报损处理:
三、项目运行截图
预订信息板块:
用户信息板块:
四、项目代码分析
异步传输:
//如果预订的数量大于库存数量就直接说异步传输->数量不足(增加用户体验)
@RequestMapping("/checkBookNumber")
@ResponseBody
public String checkNumber(String id,String orderNumber){
Book book = bookService.queryById(id);
Integer bookNumber = book.getBookNumber();
int orderNumber1 = Integer.parseInt(orderNumber);
Map<String, String> map = new HashMap<>();
if (orderNumber1 > bookNumber){
map.put("msg","教材库存数量不足!剩余教材数量" + bookNumber);
}else {
map.put("msg","教材数量充足!");
}
return JSON.toJSONString(map);
}
查询征订信息
//查询预订教材信息
@RequestMapping("/queryOrder")
public String queryOrder(HttpSession httpSession,Integer currentPage,String bookName,Model model){
String userId = ((Student) httpSession.getAttribute("student")).getStudentId();
Map<String, Object> map = new HashMap<>();
//分页查询(1,5)
Page<OrderBook> page = new Page<>(currentPage, 5);
//根据书名/教材分类id
map.put("orderId",userId);
map.put("bookName",bookName);
//分页查询预订信息
IPage<OrderBook> orderBookIPage = orderBookService.queryOrder(page, map);
//获取结果集
List<OrderBook> orderBooks = orderBookIPage.getRecords();
System.out.println(orderBooks);
//获取分页大小的总页数
long pages = orderBookIPage.getPages();
//总记录数
long total = orderBookIPage.getTotal();
//回显集合
model.addAttribute("list", orderBooks);
//总页数
model.addAttribute("totalPages", pages);
//总记录数
model.addAttribute("totalSize", total);
//当前页
model.addAttribute("currentPage", currentPage);
return "user_order_book";
}
Layui表格封装json格式数据工具类
private int code;
private String msg;
private long count;
private T data;
public ServerLayResult() {
}
public ServerLayResult(int code, String msg, long count, T data) {
this.code = code;
this.msg = msg;
this.count = count;
this.data = data;
}
………
五、项目优化升级
前端:三件套 + React + 组件库 Ant Design + Umi + Ant Design Pro(现成的管理系统)
后端:
-
java
-
spring(依赖注入框架,帮助你管理 Java 对象,集成一些其他的内容)
-
springmvc(web 框架,提供接口访问、restful接口等能力)
-
mybatis(Java 操作数据库的框架,持久层框架,对 jdbc 的封装)
-
mybatis-plus(对 mybatis 的增强,不用写 sql 也能实现增删改查)
-
springboot(快速启动 / 快速集成项目。不用自己管理 spring 配置,不用自己整合各种框架)
-
junit 单元测试库
-
mysql
部署:服务器 / 容器(平台)
六、结语
感谢大家的阅读,愿我们的未来一片光明。