From 200565c2dc76a235c4a24bd0c4a55619c2107ede Mon Sep 17 00:00:00 2001 From: tamguo Date: Mon, 30 Jul 2018 18:18:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/tamguo/dao/BookMapper.java | 8 + .../java/com/tamguo/dao/ChapterMapper.java | 2 +- .../java/com/tamguo/model/BookEntity.java | 96 ++++++++++ .../java/com/tamguo/service/IBookService.java | 8 + .../com/tamguo/service/IChapterService.java | 4 +- .../com/tamguo/service/ICourseService.java | 4 +- .../com/tamguo/service/ISubjectService.java | 3 +- .../com/tamguo/service/impl/BookService.java | 13 ++ .../tamguo/service/impl/ChapterService.java | 9 +- .../java/com/tamguo/web/BookController.java | 58 +++++++ .../java/com/tamguo/web/CourseController.java | 12 +- .../com/tamguo/web/SubjectController.java | 12 +- .../src/main/resources/mappers/BookMapper.xml | 5 + .../main/resources/mappers/ChapterMapper.xml | 4 +- tamguo/src/main/resources/templates/book.html | 164 ++++++++++++++++++ .../src/main/resources/templates/chapter.html | 9 +- 16 files changed, 392 insertions(+), 19 deletions(-) create mode 100644 tamguo/src/main/java/com/tamguo/dao/BookMapper.java create mode 100644 tamguo/src/main/java/com/tamguo/model/BookEntity.java create mode 100644 tamguo/src/main/java/com/tamguo/service/IBookService.java create mode 100644 tamguo/src/main/java/com/tamguo/service/impl/BookService.java create mode 100644 tamguo/src/main/java/com/tamguo/web/BookController.java create mode 100644 tamguo/src/main/resources/mappers/BookMapper.xml create mode 100644 tamguo/src/main/resources/templates/book.html diff --git a/tamguo/src/main/java/com/tamguo/dao/BookMapper.java b/tamguo/src/main/java/com/tamguo/dao/BookMapper.java new file mode 100644 index 0000000..756aa9f --- /dev/null +++ b/tamguo/src/main/java/com/tamguo/dao/BookMapper.java @@ -0,0 +1,8 @@ +package com.tamguo.dao; + +import com.tamguo.config.dao.SuperMapper; +import com.tamguo.model.BookEntity; + +public interface BookMapper extends SuperMapper{ + +} diff --git a/tamguo/src/main/java/com/tamguo/dao/ChapterMapper.java b/tamguo/src/main/java/com/tamguo/dao/ChapterMapper.java index 3f50efe..1274471 100644 --- a/tamguo/src/main/java/com/tamguo/dao/ChapterMapper.java +++ b/tamguo/src/main/java/com/tamguo/dao/ChapterMapper.java @@ -8,7 +8,7 @@ import com.tamguo.model.ChapterEntity; public interface ChapterMapper extends SuperMapper{ - List findByCourseId(@Param(value="courseId") String courseId); + List findByBookId(@Param(value="bookId") String bookId); List findByParentId(@Param(value="parentId") String parentId); diff --git a/tamguo/src/main/java/com/tamguo/model/BookEntity.java b/tamguo/src/main/java/com/tamguo/model/BookEntity.java new file mode 100644 index 0000000..cf28015 --- /dev/null +++ b/tamguo/src/main/java/com/tamguo/model/BookEntity.java @@ -0,0 +1,96 @@ +package com.tamguo.model; + +import java.io.Serializable; + +import com.baomidou.mybatisplus.activerecord.Model; +import com.baomidou.mybatisplus.annotations.TableId; +import com.baomidou.mybatisplus.annotations.TableName; + +@TableName(value="tiku_book") +public class BookEntity extends Model{ + + private static final long serialVersionUID = 1L; + + @TableId + private String uid; + private String subjectId; + private String courseId; + private String name; + private String publishingHouse; + private String questionNum; + private String pointNum; + private Integer orders; + + public String getUid() { + return uid; + } + + public void setUid(String uid) { + this.uid = uid; + } + + public String getSubjectId() { + return subjectId; + } + + public void setSubjectId(String subjectId) { + this.subjectId = subjectId; + } + + public String getCourseId() { + return courseId; + } + + public void setCourseId(String courseId) { + this.courseId = courseId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPublishingHouse() { + return publishingHouse; + } + + public void setPublishingHouse(String publishingHouse) { + this.publishingHouse = publishingHouse; + } + + public String getQuestionNum() { + return questionNum; + } + + public void setQuestionNum(String questionNum) { + this.questionNum = questionNum; + } + + public String getPointNum() { + return pointNum; + } + + public void setPointNum(String pointNum) { + this.pointNum = pointNum; + } + + public Integer getOrders() { + return orders; + } + + public void setOrders(Integer orders) { + this.orders = orders; + } + + public static long getSerialversionuid() { + return serialVersionUID; + } + + @Override + protected Serializable pkVal() { + return getUid(); + } +} diff --git a/tamguo/src/main/java/com/tamguo/service/IBookService.java b/tamguo/src/main/java/com/tamguo/service/IBookService.java new file mode 100644 index 0000000..44af20a --- /dev/null +++ b/tamguo/src/main/java/com/tamguo/service/IBookService.java @@ -0,0 +1,8 @@ +package com.tamguo.service; + +import com.baomidou.mybatisplus.service.IService; +import com.tamguo.model.BookEntity; + +public interface IBookService extends IService{ + +} \ No newline at end of file diff --git a/tamguo/src/main/java/com/tamguo/service/IChapterService.java b/tamguo/src/main/java/com/tamguo/service/IChapterService.java index b36ecf1..cd91322 100644 --- a/tamguo/src/main/java/com/tamguo/service/IChapterService.java +++ b/tamguo/src/main/java/com/tamguo/service/IChapterService.java @@ -1,9 +1,11 @@ package com.tamguo.service; import java.util.List; + +import com.baomidou.mybatisplus.service.IService; import com.tamguo.model.ChapterEntity; -public interface IChapterService { +public interface IChapterService extends IService{ // 获取科目章节 public List findCourseChapter(String courseId); diff --git a/tamguo/src/main/java/com/tamguo/service/ICourseService.java b/tamguo/src/main/java/com/tamguo/service/ICourseService.java index e72af93..38baa32 100644 --- a/tamguo/src/main/java/com/tamguo/service/ICourseService.java +++ b/tamguo/src/main/java/com/tamguo/service/ICourseService.java @@ -1,9 +1,11 @@ package com.tamguo.service; import java.util.List; + +import com.baomidou.mybatisplus.service.IService; import com.tamguo.model.CourseEntity; -public interface ICourseService { +public interface ICourseService extends IService{ /** 根据考试获取科目 */ List findBySubjectId(String subjectId); diff --git a/tamguo/src/main/java/com/tamguo/service/ISubjectService.java b/tamguo/src/main/java/com/tamguo/service/ISubjectService.java index ae38dd5..9736557 100644 --- a/tamguo/src/main/java/com/tamguo/service/ISubjectService.java +++ b/tamguo/src/main/java/com/tamguo/service/ISubjectService.java @@ -1,9 +1,10 @@ package com.tamguo.service; import com.alibaba.fastjson.JSONArray; +import com.baomidou.mybatisplus.service.IService; import com.tamguo.model.SubjectEntity; -public interface ISubjectService { +public interface ISubjectService extends IService{ public SubjectEntity find(String uid); diff --git a/tamguo/src/main/java/com/tamguo/service/impl/BookService.java b/tamguo/src/main/java/com/tamguo/service/impl/BookService.java new file mode 100644 index 0000000..5e9ceaf --- /dev/null +++ b/tamguo/src/main/java/com/tamguo/service/impl/BookService.java @@ -0,0 +1,13 @@ +package com.tamguo.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.tamguo.dao.BookMapper; +import com.tamguo.model.BookEntity; +import com.tamguo.service.IBookService; + +@Service +public class BookService extends ServiceImpl implements IBookService { + +} diff --git a/tamguo/src/main/java/com/tamguo/service/impl/ChapterService.java b/tamguo/src/main/java/com/tamguo/service/impl/ChapterService.java index db5f060..6bd85c1 100644 --- a/tamguo/src/main/java/com/tamguo/service/impl/ChapterService.java +++ b/tamguo/src/main/java/com/tamguo/service/impl/ChapterService.java @@ -10,20 +10,21 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.tamguo.dao.ChapterMapper; import com.tamguo.model.ChapterEntity; import com.tamguo.service.IChapterService; import com.tamguo.util.TamguoConstant; @Service -public class ChapterService implements IChapterService{ +public class ChapterService extends ServiceImpl implements IChapterService{ @Autowired private ChapterMapper chapterMapper; @Override - public List findCourseChapter(String courseId) { - List chapterList = chapterMapper.findByCourseId(courseId); + public List findCourseChapter(String bookId) { + List chapterList = chapterMapper.findByBookId(bookId); // 获取根chapter UID String rootUid = StringUtils.EMPTY; @@ -85,7 +86,7 @@ public class ChapterService implements IChapterService{ if(StringUtils.isEmpty(courseId) || "null".equals(courseId)){ return rootChapterNode(); } - List list = chapterMapper.findByCourseId(courseId); + List list = chapterMapper.findByBookId(courseId); if(CollectionUtils.isEmpty(list)) { return rootChapterNode(); } diff --git a/tamguo/src/main/java/com/tamguo/web/BookController.java b/tamguo/src/main/java/com/tamguo/web/BookController.java new file mode 100644 index 0000000..45911a2 --- /dev/null +++ b/tamguo/src/main/java/com/tamguo/web/BookController.java @@ -0,0 +1,58 @@ +package com.tamguo.web; + +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.servlet.ModelAndView; + +import com.baomidou.mybatisplus.mapper.Condition; +import com.tamguo.model.BookEntity; +import com.tamguo.model.ChapterEntity; +import com.tamguo.model.CourseEntity; +import com.tamguo.model.SubjectEntity; +import com.tamguo.service.IBookService; +import com.tamguo.service.IChapterService; +import com.tamguo.service.ICourseService; +import com.tamguo.service.ISubjectService; + +@Controller +public class BookController { + + @Autowired + IBookService iBookService; + @Autowired + IChapterService iChapterService; + @Autowired + ISubjectService iSubjectService; + @Autowired + ICourseService iCourseService; + + @SuppressWarnings("unchecked") + @RequestMapping(value = {"book/{uid}"}, method = RequestMethod.GET) + public ModelAndView index(@PathVariable String uid , ModelAndView model) { + try { + BookEntity book = iBookService.selectById(uid); + SubjectEntity subject = iSubjectService.find(book.getSubjectId()); + List courseList = subject.getCourseList(); + List bookList = iBookService.selectList(Condition.create().eq("course_id", book.getCourseId())); + CourseEntity course = iCourseService.selectById(book.getCourseId()); + List chapterList = iChapterService.selectList(Condition.create().eq("book_id", uid)); + model.addObject("book", book); + model.addObject("subject", subject); + model.addObject("course", course); + model.addObject("chapterList" , chapterList); + model.addObject("courseList", courseList); + model.addObject("bookList", bookList); + model.setViewName("book"); + return model; + } catch (Exception e) { + model.setViewName("404"); + return model; + } + } + +} diff --git a/tamguo/src/main/java/com/tamguo/web/CourseController.java b/tamguo/src/main/java/com/tamguo/web/CourseController.java index ed09029..6b1e23f 100644 --- a/tamguo/src/main/java/com/tamguo/web/CourseController.java +++ b/tamguo/src/main/java/com/tamguo/web/CourseController.java @@ -16,9 +16,12 @@ import org.springframework.web.bind.annotation.ResponseBody; */ import org.springframework.web.servlet.ModelAndView; +import com.baomidou.mybatisplus.mapper.Condition; +import com.tamguo.model.BookEntity; import com.tamguo.model.ChapterEntity; import com.tamguo.model.CourseEntity; import com.tamguo.model.SubjectEntity; +import com.tamguo.service.IBookService; import com.tamguo.service.IChapterService; import com.tamguo.service.ICourseService; import com.tamguo.service.ISubjectService; @@ -33,19 +36,26 @@ public class CourseController { ICourseService iCourseService; @Autowired ISubjectService iSubjectService; + @Autowired + IBookService iBookService; + @SuppressWarnings("unchecked") @RequestMapping(value = {"course/{uid}"}, method = RequestMethod.GET) public ModelAndView index(@PathVariable String uid , ModelAndView model) { try { CourseEntity course = iCourseService.find(uid); + List bookList = iBookService.selectList(Condition.create().eq("course_id", uid)); + BookEntity book = bookList.get(0); SubjectEntity subject = iSubjectService.find(course.getSubjectId()); - List chapterList = iChapterService.findCourseChapter(uid); + List chapterList = iChapterService.findCourseChapter(book.getUid()); List courseList = iCourseService.findBySubjectId(course.getSubjectId()); model.addObject("chapterList", chapterList); model.addObject("courseList", courseList); model.addObject("course", course); model.addObject("subject", subject); + model.addObject("bookList", bookList); + model.addObject("book" , book); model.setViewName("chapter"); return model; diff --git a/tamguo/src/main/java/com/tamguo/web/SubjectController.java b/tamguo/src/main/java/com/tamguo/web/SubjectController.java index 90e0330..a3f723f 100644 --- a/tamguo/src/main/java/com/tamguo/web/SubjectController.java +++ b/tamguo/src/main/java/com/tamguo/web/SubjectController.java @@ -13,10 +13,13 @@ import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; import com.alibaba.fastjson.JSONArray; +import com.baomidou.mybatisplus.mapper.Condition; +import com.tamguo.model.BookEntity; import com.tamguo.model.ChapterEntity; import com.tamguo.model.CourseEntity; import com.tamguo.model.SubjectEntity; import com.tamguo.service.IAreaService; +import com.tamguo.service.IBookService; import com.tamguo.service.IChapterService; import com.tamguo.service.ISubjectService; import com.tamguo.util.Result; @@ -38,14 +41,21 @@ public class SubjectController { private IAreaService iAreaService; @Autowired private ISubjectService iSubjectService; + @Autowired + private IBookService iBookService; + @SuppressWarnings("unchecked") @RequestMapping(value = {"subject/{subjectId}.html"}, method = RequestMethod.GET) public ModelAndView indexAction(@PathVariable String subjectId , ModelAndView model) { try { SubjectEntity subject = iSubjectService.find(subjectId); // 获取第一个科目 CourseEntity course = subject.getCourseList().get(0); - List chapterList = iChapterService.findCourseChapter(course.getUid()); + // 获取第一本书 + List bookList = iBookService.selectList(Condition.create().eq("course_id", course.getUid())); + BookEntity book = bookList.get(0); + + List chapterList = iChapterService.findCourseChapter(book.getUid()); model.setViewName("subject"); model.addObject("subject", subject); model.addObject("course" , course); diff --git a/tamguo/src/main/resources/mappers/BookMapper.xml b/tamguo/src/main/resources/mappers/BookMapper.xml new file mode 100644 index 0000000..d38a3c5 --- /dev/null +++ b/tamguo/src/main/resources/mappers/BookMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/tamguo/src/main/resources/mappers/ChapterMapper.xml b/tamguo/src/main/resources/mappers/ChapterMapper.xml index 27c32d8..dc89586 100644 --- a/tamguo/src/main/resources/mappers/ChapterMapper.xml +++ b/tamguo/src/main/resources/mappers/ChapterMapper.xml @@ -2,12 +2,12 @@ - SELECT c.uid,c.course_id , c.parent_id , c.`name` , c.question_num , c.point_num , c.orders FROM tiku_chapter c - WHERE c.course_id = #{courseId} + WHERE c.book_id = #{bookId} ORDER BY c.uid asc diff --git a/tamguo/src/main/resources/templates/book.html b/tamguo/src/main/resources/templates/book.html new file mode 100644 index 0000000..adf7f33 --- /dev/null +++ b/tamguo/src/main/resources/templates/book.html @@ -0,0 +1,164 @@ + + + + + 探果题库_聪明的学生都在这里 + + + + + + + + + + + + + + + + +
+ + +
+
+ +
+ +
+ + + +
+ + +
+ + +
+ +
+
+
+ +
+

+ 第一章 集合与常用逻辑用语 +

+
+
+
+
+
+
+
+ +
+
+

第一章 集合与常用逻辑用语

+ + 随机来 + + 15 + + 道题 + +
    +
  • 21 知识点
  • +
  • 2317 试题
  • +
+
+ +
+
+

1 集合的概念及运算

+ 1181 试题 + + 随机来 + + 10 + + 道题 > + +
+
+
+
1.1 集合的含义
+

+ + 531 道题 + +

+ +
+
+
+
+
+ + +
+
+ +
+
+ +
+
+ 探果题库 + 高考 + 理科数学 +
+
+ + +
+ + +
+ + + + + + + + \ No newline at end of file diff --git a/tamguo/src/main/resources/templates/chapter.html b/tamguo/src/main/resources/templates/chapter.html index fe9e5dc..6908613 100644 --- a/tamguo/src/main/resources/templates/chapter.html +++ b/tamguo/src/main/resources/templates/chapter.html @@ -66,13 +66,8 @@