栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java项目:图书借阅管理系统(java+springBoot+maven+html+mysql)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java项目:图书借阅管理系统(java+springBoot+maven+html+mysql)

获取源码请看代码注释 !!! 获取源码请看代码注释 !!! 获取源码请看代码注释 !!! 运行环境:

JDK1.8、tomcat8、IDEA、mysql5.7、Navicat

功能实现:

身份:管理员、学生、教师
管理员:
1.图书管理
2.学生管理
3.教师管理
4.借阅管理
5.超期催还
6.导出报表
学生、教师:
1.查看图书
2.借阅图书
3.归还图书
4.超期罚款

代码部分
//QQ:2434110694 v:f999dexgg
//QQ:2434110694 v:f999dexgg
//QQ:2434110694 v:f999dexgg
package com.zl.controller;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zl.entity.Book;
import com.zl.entity.Borrow;
import com.zl.entity.Still;
import com.zl.entity.User;
import com.zl.mapper.BorrowMapper;
import com.zl.service.BookService;
import com.zl.service.BorrowService;
import com.zl.service.UserService;
import com.zl.vo.LayuiPage;
import com.zl.vo.Result;
import com.zl.vo.SearchVo;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;


@RestController
@RequestMapping("/borrow")
@CrossOrigin
public class BorrowController {
    @Resource
    private BorrowService borrowService;
    @Resource
    private BookService bookService;
    @Resource
    private UserService userService;
    @Resource
    private BorrowMapper borrowMapper;

    //添加
    @GetMapping("/add/{uid}/{bid}/{stillDate}")
    public Result add(@PathVariable("uid") Integer uid,@PathVariable("bid") Integer bid,@PathVariable("stillDate")String stillDate){
        Borrow borrow = new Borrow();
        borrow.setBorrowTime(LocalDateTime.now().toString());
        borrow.setUid(uid);
        borrow.setBid(bid);
        borrow.setStillTime(stillDate);

        QueryWrapper wrapper = new QueryWrapper<>();
        wrapper.eq("uid",borrow.getUid());
        wrapper.eq("bid",borrow.getBid());
        Borrow dbBorrow = borrowMapper.selectOne(wrapper);

        if (dbBorrow!=null){
            return Result.error().message("借阅失败,您已借阅该图书");
        }
        return borrowService.save(borrow)?Result.ok().message("借阅成功"):Result.error().message("服务器异常,请稍后再试");
    }

    //查询
    @PostMapping("/listById/{id}")
    public IPage listById(@PathVariable("id") String id,@RequestBody SearchVo searchVo){
        Page page = new Page<>(searchVo.getPageNumber(), searchVo.getPageCount());
        QueryWrapper wrapper = new QueryWrapper<>();
        wrapper.eq("uid",id);
        Page pages = borrowMapper.selectPage(page, wrapper);
        for (Borrow thisBorrow : pages.getRecords()) {
            thisBorrow.setBook(bookService.getById(thisBorrow.getBid()));
            thisBorrow.setUser(userService.getById(thisBorrow.getUid()));
        }
        return pages;
    }

    //查询当前登录人借阅图书信息
    @GetMapping("/listById/{id}")
    @ResponseBody
    public LayuiPage listById(int page, int limit, Borrow borrow,@PathVariable("id") String id) throws ParseException {
        Page pages = new Page<>(page,limit);
        QueryWrapper wrapper = new QueryWrapper<>();
        wrapper.eq(borrow.getBid()!=null,"bid",borrow.getBid())
                .eq("uid",id);
        Page bookPage = borrowMapper.selectPage(pages, wrapper);
        List borrowList = bookPage.getRecords();
        for (Borrow thisBorrow : borrowList) {

            String stillTime = thisBorrow.getStillTime();
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
            Date stillDate = format.parse(stillTime);
            Date date = new Date();
            //判断哪个借阅时间超过了日期
            if (date.after(stillDate)){
                int days = (int) ((date.getTime() - stillDate.getTime()) / (1000*3600*24));
                thisBorrow.setSalary(days);
            }else {
                thisBorrow.setSalary(0);
            }
            thisBorrow.setBook(bookService.getById(thisBorrow.getBid()));
            thisBorrow.setUser(userService.getById(thisBorrow.getUid()));
        }
        return new LayuiPage(bookPage.getTotal(),borrowList);
    }



    //查询所有
    @GetMapping("/list")
    @ResponseBody
    public LayuiPage list(int page, int limit, Borrow borrow){
        Page pages = new Page<>(page,limit);
        QueryWrapper wrapper = new QueryWrapper<>();
        wrapper.eq(borrow.getBid()!=null,"bid",borrow.getBid())
                .eq(borrow.getUid()!=null,"uid",borrow.getUid());
        Page bookPage = borrowMapper.selectPage(pages, wrapper);
        List borrowList = bookPage.getRecords();
        for (Borrow thisBorrow : borrowList) {
            thisBorrow.setBook(bookService.getById(thisBorrow.getBid()));
            thisBorrow.setUser(userService.getById(thisBorrow.getUid()));
        }
        return new LayuiPage(bookPage.getTotal(),borrowList);
    }

    //查询所有超期列表
    @GetMapping("/listOverdue")
    @ResponseBody
    public LayuiPage listOverdue(int page, int limit, Borrow borrow){
        Page pages = new Page<>(page,limit);
        QueryWrapper wrapper = new QueryWrapper<>();
        wrapper.eq(borrow.getBid()!=null,"bid",borrow.getBid())
                .eq(borrow.getUid()!=null,"uid",borrow.getUid())
                .le("still_time",new Date());
        Page bookPage = borrowMapper.selectPage(pages, wrapper);
        List borrowList = bookPage.getRecords();
        for (Borrow thisBorrow : borrowList) {
            System.out.println(thisBorrow);
            thisBorrow.setBook(bookService.getById(thisBorrow.getBid()));
            thisBorrow.setUser(userService.getById(thisBorrow.getUid()));
        }
        return new LayuiPage(bookPage.getTotal(),borrowList);
    }


    //id查询
    @GetMapping("/{id}")
    public Borrow find(@PathVariable("id") String id){
        return borrowService.getById(id);
    }

    //修改
    @PutMapping("/update")
    public Result update(@RequestBody Borrow borrow){
        return borrowService.updateById(borrow)?Result.ok().message("修改成功"):Result.error().message("服务器异常,请稍后再试");
    }


    @GetMapping("/writeExcel")
    public Result writeExcel() throws IOException {
        List list = borrowService.list(null);
        for (Borrow thisBorrow : list) {
            thisBorrow.setBook(bookService.getById(thisBorrow.getBid()));
            thisBorrow.setUser(userService.getById(thisBorrow.getUid()));
        }
        String fileName  = "C:\Users\26913\Desktop\报表"+new Date().getTime()+".xls";
        //创建一个簿
        Workbook workbook=new HSSFWorkbook();
        //创建一张表
        Sheet sheet = workbook.createSheet("报表");
        Row head = sheet.createRow(0);
        Cell cell = head.createCell(0);

        cell.setCellValue("序号");
        cell = head.createCell(1);
        cell.setCellValue("借阅人编号");
        cell = head.createCell(2);
        cell.setCellValue("借阅人姓名");
        cell = head.createCell(3);
        cell.setCellValue("借阅人电话");
        cell = head.createCell(4);
        cell.setCellValue("借阅人性别");
        cell = head.createCell(5);
        cell.setCellValue("图书编号");
        cell = head.createCell(6);
        cell.setCellValue("图书名称");
        cell = head.createCell(7);
        cell.setCellValue("借阅时间");
        cell = head.createCell(8);
        cell.setCellValue("归还时间");

        for (int i = 0; i < list.size(); i++) {
            Row row = sheet.createRow(i+1);
            row.createCell(0).setCellValue(i+1);
            row.createCell(1).setCellValue(list.get(i).getUid());
            row.createCell(2).setCellValue(list.get(i).getUser().getName());
            row.createCell(3).setCellValue(list.get(i).getUser().getPhone());
            row.createCell(4).setCellValue(list.get(i).getUser().getSex());
            row.createCell(5).setCellValue(list.get(i).getBid());
            row.createCell(6).setCellValue(list.get(i).getBook().getName());
            row.createCell(7).setCellValue(list.get(i).getBorrowTime());
            row.createCell(8).setCellValue(list.get(i).getStillTime());
        }
        FileOutputStream outputStream = new FileOutputStream(fileName);
        workbook.write(outputStream);
        //关闭流
        outputStream.close();
        return Result.ok().message("导出成功");
    }

}


项目展示





转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/999218.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号