5 rokov pred
rodič
commit
199e1cd14d

+ 69 - 0
bms/src/main/java/com/hssx/bms/controller/BookController.java

@@ -2,6 +2,10 @@ package com.hssx.bms.controller;
 
 
 import com.hssx.bms.entity.Book;
+import com.hssx.bms.entity.BookCategory;
+import com.hssx.bms.entity.BookPage;
+import com.hssx.bms.service.BookCategoryService;
+import com.hssx.bms.service.BookPageService;
 import com.hssx.bms.service.BookService;
 import com.hssx.bms.until.HttpRespMsg;
 import com.hssx.bms.until.PageUtil;
@@ -13,6 +17,8 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.util.List;
+
 /**
  * @author 吴涛涛
  * @since 2019-10-16
@@ -23,6 +29,10 @@ public class BookController {
 
     @Autowired
     private BookService bookService;
+    @Autowired
+    private BookPageService bookPageService;
+    @Autowired
+    private BookCategoryService bookCategoryService;
     /**
      * 图书信息的录入
      * 参数:name 名称,author 作者,descrip 描述
@@ -50,5 +60,64 @@ public class BookController {
         HttpRespMsg msg = bookService.getList(page);
         return msg;
     }
+
+    /**
+     * 图书信息的录入
+     * 参数:bookId 图书对应的id
+     *      file 上传的图书图片文件数组
+     * @return
+     */
+    @ApiOperation(value = "图书图片的上传", notes = "图书图片的上传方法")
+    @RequestMapping("/addBookPage")
+    @ResponseBody
+    public HttpRespMsg addBookPage(BookPage bookPage, @RequestParam(required = false) MultipartFile[] file){
+        HttpRespMsg msg = bookPageService.addBookPage(bookPage,file);
+        return msg;
+    }
+
+
+    /**
+     * 图书图片删除
+     * 参数:id 图书图片对应的id
+     * @return
+     */
+    @ApiOperation(value = "图书图片删除", notes = "图书图片删除方法")
+    @RequestMapping("/deleteBookPage")
+    @ResponseBody
+    public HttpRespMsg deleteBookPage(BookPage bookPage){
+        HttpRespMsg msg = new HttpRespMsg();
+        msg.data  = bookPageService.removeById(bookPage.getId());
+        return msg;
+    }
+
+    /**
+     * 单个图书图片列表(图片总张数)
+     * 参数:bookId 图书的id
+     * @return
+     */
+    @ApiOperation(value = "单个图书图片列表(图片总张数)", notes = "单个图书图片列表(图片总张数)方法")
+    @RequestMapping("/bookPageList")
+    @ResponseBody
+    public HttpRespMsg bookPageList(BookPage bookPage){
+        HttpRespMsg msg = bookPageService.getBookPageList(bookPage);
+        return msg;
+    }
+
+
+    /**
+     * 图书目录的录入/修改
+     * 参数:bookId 图书id rank 章节(对应数字0-序 1-第一章 2-第二章...)
+     *      name 目录名称  pageNum 起始页码
+     * 修改时:需要传 id 目录的id
+     * @return
+     */
+    @ApiOperation(value = "图书目录的录入和修改", notes = "图书目录的录入和修改方法")
+    @RequestMapping("/addOrUpdateRank")
+    @ResponseBody
+    public HttpRespMsg addOrUpdateRank(BookCategory BookCategory){
+        HttpRespMsg msg = bookCategoryService.addOrUpdateRank(BookCategory);
+        return msg;
+    }
+
 }
 

+ 101 - 0
bms/src/main/java/com/hssx/bms/entity/BookCategory.java

@@ -0,0 +1,101 @@
+package com.hssx.bms.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+public class BookCategory extends Model<BookCategory> {
+
+    private static final long serialVersionUID=1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    @TableField("book_id")
+    private String bookId;
+
+    /**
+     * 排序章节
+     */
+    @TableField("rank")
+    private Integer rank;
+
+    /**
+     * 条目名称
+     */
+    @TableField("name")
+    private String name;
+
+    /**
+     * 对应页码
+     */
+    @TableField("page_num")
+    private Integer pageNum;
+
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getBookId() {
+        return bookId;
+    }
+
+    public void setBookId(String bookId) {
+        this.bookId = bookId;
+    }
+
+    public Integer getRank() {
+        return rank;
+    }
+
+    public void setRank(Integer rank) {
+        this.rank = rank;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Integer getPageNum() {
+        return pageNum;
+    }
+
+    public void setPageNum(Integer pageNum) {
+        this.pageNum = pageNum;
+    }
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+    @Override
+    public String toString() {
+        return "BookCategory{" +
+        "id=" + id +
+        ", bookId=" + bookId +
+        ", rank=" + rank +
+        ", name=" + name +
+        ", pageNum=" + pageNum +
+        "}";
+    }
+}

+ 80 - 0
bms/src/main/java/com/hssx/bms/entity/BookPage.java

@@ -0,0 +1,80 @@
+package com.hssx.bms.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+public class BookPage extends Model<BookPage> {
+
+    private static final long serialVersionUID=1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    @TableField("book_id")
+    private String bookId;
+
+    @TableField("page_num")
+    private Integer pageNum;
+
+    @TableField("file")
+    private String file;
+
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getBookId() {
+        return bookId;
+    }
+
+    public void setBookId(String bookId) {
+        this.bookId = bookId;
+    }
+
+    public Integer getPageNum() {
+        return pageNum;
+    }
+
+    public void setPageNum(Integer pageNum) {
+        this.pageNum = pageNum;
+    }
+
+    public String getFile() {
+        return file;
+    }
+
+    public void setFile(String file) {
+        this.file = file;
+    }
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+    @Override
+    public String toString() {
+        return "BookPage{" +
+        "id=" + id +
+        ", bookId=" + bookId +
+        ", pageNum=" + pageNum +
+        ", file=" + file +
+        "}";
+    }
+}

+ 16 - 0
bms/src/main/java/com/hssx/bms/mapper/BookCategoryMapper.java

@@ -0,0 +1,16 @@
+package com.hssx.bms.mapper;
+
+import com.hssx.bms.entity.BookCategory;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+public interface BookCategoryMapper extends BaseMapper<BookCategory> {
+
+}

+ 16 - 0
bms/src/main/java/com/hssx/bms/mapper/BookPageMapper.java

@@ -0,0 +1,16 @@
+package com.hssx.bms.mapper;
+
+import com.hssx.bms.entity.BookPage;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+public interface BookPageMapper extends BaseMapper<BookPage> {
+
+}

+ 20 - 0
bms/src/main/java/com/hssx/bms/service/BookCategoryService.java

@@ -0,0 +1,20 @@
+package com.hssx.bms.service;
+
+import com.hssx.bms.entity.BookCategory;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.hssx.bms.until.HttpRespMsg;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+public interface BookCategoryService extends IService<BookCategory> {
+
+    HttpRespMsg addOrUpdateRank(BookCategory bookCategorys);
+}

+ 21 - 0
bms/src/main/java/com/hssx/bms/service/BookPageService.java

@@ -0,0 +1,21 @@
+package com.hssx.bms.service;
+
+import com.hssx.bms.entity.BookPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.hssx.bms.until.HttpRespMsg;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+public interface BookPageService extends IService<BookPage> {
+
+    HttpRespMsg addBookPage(BookPage bookPage, MultipartFile[] file);
+
+    HttpRespMsg getBookPageList(BookPage bookPage);
+}

+ 36 - 0
bms/src/main/java/com/hssx/bms/service/impl/BookCategoryServiceImpl.java

@@ -0,0 +1,36 @@
+package com.hssx.bms.service.impl;
+
+import com.hssx.bms.entity.BookCategory;
+import com.hssx.bms.mapper.BookCategoryMapper;
+import com.hssx.bms.service.BookCategoryService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.hssx.bms.until.HttpRespMsg;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+@Service
+public class BookCategoryServiceImpl extends ServiceImpl<BookCategoryMapper, BookCategory> implements BookCategoryService {
+    @Resource
+    private BookCategoryMapper bookCategoryMapper;
+
+    @Override
+    public HttpRespMsg addOrUpdateRank(BookCategory bookCategory) {
+        HttpRespMsg msg = new HttpRespMsg();
+        if(null != bookCategory.getId()){
+            bookCategoryMapper.updateById(bookCategory);
+        }else{
+            bookCategoryMapper.insert(bookCategory);
+        }
+        return msg;
+    }
+}

+ 55 - 0
bms/src/main/java/com/hssx/bms/service/impl/BookPageServiceImpl.java

@@ -0,0 +1,55 @@
+package com.hssx.bms.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.hssx.bms.entity.BookCategory;
+import com.hssx.bms.entity.BookPage;
+import com.hssx.bms.mapper.BookCategoryMapper;
+import com.hssx.bms.mapper.BookPageMapper;
+import com.hssx.bms.service.BookPageService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.hssx.bms.until.HttpRespMsg;
+import com.hssx.bms.until.UploadFileToFileNameUtil;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author 吴涛涛
+ * @since 2019-10-16
+ */
+@Service
+public class BookPageServiceImpl extends ServiceImpl<BookPageMapper, BookPage> implements BookPageService {
+    @Value("${upload.path}")
+    private String path;
+    @Resource
+    private BookCategoryMapper bookCategoryMapper;
+    @Resource
+    private BookPageMapper bookPageMapper;
+    @Override
+    public HttpRespMsg addBookPage(BookPage bookPage, MultipartFile[] file) {
+        HttpRespMsg msg = new HttpRespMsg();
+        for (MultipartFile multipartFile : file) {
+            Integer count = bookPageMapper.selectCount(new QueryWrapper<BookPage>().eq("book_id", bookPage.getBookId()));
+            String fileName = UploadFileToFileNameUtil.uploadFile(multipartFile, path);
+            bookPage.setFile(fileName);
+            bookPage.setPageNum(count+1);
+            bookPageMapper.insert(bookPage);
+        }
+        return msg;
+    }
+
+    @Override
+    public HttpRespMsg getBookPageList(BookPage bookPage) {
+        HttpRespMsg msg = new HttpRespMsg();
+        List<BookPage> list = bookPageMapper.selectList(new QueryWrapper<BookPage>().eq("book_id", bookPage.getBookId()).orderByAsc("page_num"));
+        msg.data = list;
+        return msg;
+    }
+}

+ 2 - 33
bms/src/main/java/com/hssx/bms/service/impl/BookServiceImpl.java

@@ -10,6 +10,7 @@ import com.hssx.bms.service.BookService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.hssx.bms.until.HttpRespMsg;
 import com.hssx.bms.until.PageUtil;
+import com.hssx.bms.until.UploadFileToFileNameUtil;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
@@ -40,7 +41,7 @@ public class BookServiceImpl extends ServiceImpl<BookMapper, Book> implements Bo
         HttpRespMsg msg = new HttpRespMsg();
         String fileName = "";
         if (null != file) {
-            fileName = uploadFile(file, path);
+            fileName = UploadFileToFileNameUtil.uploadFile(file, path);
         }
         if (null != book.getId()) {
             //添加操作
@@ -72,36 +73,4 @@ public class BookServiceImpl extends ServiceImpl<BookMapper, Book> implements Bo
         return msg;
     }
 
-
-    private String uploadFile(MultipartFile file, String path) {
-        String afterUploadFileName = "";
-        if (file != null) {
-            File dir = null;
-            dir = new File(path);
-            // D://dolphin/upload 文件上传后所存储的位置,部署到服务器上时配置服务器地址即可
-            if (!dir.exists()) {
-                dir.mkdirs();
-            }
-            String fileName = "";
-            if (file != null) {
-                fileName = file.getOriginalFilename();
-                System.out.println("上传文件名称" + file.getName() + ", dir = " + dir.getAbsolutePath());
-                int pos = fileName.lastIndexOf(".");
-                String rand = UUID.randomUUID().toString().replaceAll("-", "");
-                String sufix = fileName.substring(pos);
-                fileName = rand + sufix;
-                afterUploadFileName = "/upload/" + fileName;
-                File saveFile = new File(dir, fileName);
-                try {
-                    saveFile.createNewFile();
-                    file.transferTo(saveFile);
-                } catch (IOException e) {
-                    e.printStackTrace();
-                } catch (Exception e) {
-                    e.printStackTrace();
-                }
-            }
-        }
-        return afterUploadFileName;
-    }
 }

+ 1 - 1
bms/src/main/java/com/hssx/bms/until/CodeGenerator.java

@@ -204,7 +204,7 @@ public class CodeGenerator {
         //若想要生成的实体类继承某个Controller,则可打开下面注释。写上需要继承的Controller的位置即可
 //        strategy.setSuperControllerClass("com.baomidou.ant.common.BaseController");
         //此处user是表名,多个英文逗号分割
-        strategy.setInclude("book");
+        strategy.setInclude("book_page");
 //        strategy.setExclude();//数据库表全生成
 //        strategy.setInclude(scanner("user").split(","));//表名,多个英文逗号分割
         strategy.setControllerMappingHyphenStyle(true);

+ 48 - 0
bms/src/main/java/com/hssx/bms/until/UploadFileToFileNameUtil.java

@@ -0,0 +1,48 @@
+package com.hssx.bms.until;
+
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.UUID;
+
+/**
+ * Author: 吴涛涛 cuiyi@itany.com
+ * Date : 2019 - 10 - 16 13:47
+ * Description:<描述>
+ * Version: 1.0
+ */
+public class UploadFileToFileNameUtil {
+
+    public static String uploadFile(MultipartFile file, String path) {
+        String afterUploadFileName = "";
+        if (file != null) {
+            File dir = null;
+            dir = new File(path);
+            // D://dolphin/upload 文件上传后所存储的位置,部署到服务器上时配置服务器地址即可
+            if (!dir.exists()) {
+                dir.mkdirs();
+            }
+            String fileName = "";
+            if (file != null) {
+                fileName = file.getOriginalFilename();
+                System.out.println("上传文件名称" + file.getName() + ", dir = " + dir.getAbsolutePath());
+                int pos = fileName.lastIndexOf(".");
+                String rand = UUID.randomUUID().toString().replaceAll("-", "");
+                String sufix = fileName.substring(pos);
+                fileName = rand + sufix;
+                afterUploadFileName = "/upload/" + fileName;
+                File saveFile = new File(dir, fileName);
+                try {
+                    saveFile.createNewFile();
+                    file.transferTo(saveFile);
+                } catch (IOException e) {
+                    e.printStackTrace();
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        return afterUploadFileName;
+    }
+}

+ 19 - 0
bms/src/main/resources/mapper/BookCategoryMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.hssx.bms.mapper.BookCategoryMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.hssx.bms.entity.BookCategory">
+        <id column="id" property="id" />
+        <result column="book_id" property="bookId" />
+        <result column="rank" property="rank" />
+        <result column="name" property="name" />
+        <result column="page_num" property="pageNum" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, book_id, rank, name, page_num
+    </sql>
+
+</mapper>

+ 18 - 0
bms/src/main/resources/mapper/BookPageMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.hssx.bms.mapper.BookPageMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.hssx.bms.entity.BookPage">
+        <id column="id" property="id" />
+        <result column="book_id" property="bookId" />
+        <result column="page_num" property="pageNum" />
+        <result column="file" property="file" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, book_id, page_num, file
+    </sql>
+
+</mapper>