From 5db91cf38f04ad066163485665259808e828cbec Mon Sep 17 00:00:00 2001 From: yn147 <2270338776@qq.com> Date: 星期三, 29 三月 2023 18:26:32 +0800 Subject: [PATCH] 门户资源接口 --- src/main/java/com/qxueyou/scc/portal/homepage/serivce/imp/HomepageService.java | 264 +++++++++++++++++++++++++++++++++++++++++++++++----- src/main/java/com/qxueyou/scc/portal/homepage/controller/HomepageController.java | 19 ++- src/main/java/com/qxueyou/scc/portal/homepage/serivce/IHomepageService.java | 3 3 files changed, 251 insertions(+), 35 deletions(-) diff --git a/src/main/java/com/qxueyou/scc/portal/homepage/controller/HomepageController.java b/src/main/java/com/qxueyou/scc/portal/homepage/controller/HomepageController.java index cb69dc3..0496e44 100644 --- a/src/main/java/com/qxueyou/scc/portal/homepage/controller/HomepageController.java +++ b/src/main/java/com/qxueyou/scc/portal/homepage/controller/HomepageController.java @@ -29,12 +29,19 @@ return new Result(true, "tab",homepageService.getTabs()); } -// @GetMapping -// @ApiOperation("鑾峰彇鍒楄〃") -// public Result getIndexDetail() { -//// System.err.println("=====>鑾峰彇鍒楄〃"); -// return new Result(true,"", homepageService.getIndexDetail()); -// } + @GetMapping(value = "/home") + @ApiOperation("鑾峰彇鍒楄〃") + public Result getIndexDetail() { +// System.err.println("=====>鑾峰彇鍒楄〃"); + return new Result(true,"", homepageService.getIndexDetail()); + } + + @GetMapping(value = "/getExcellentTeaching") + @ApiOperation("鑾峰彇绮惧搧鏁欏") + public Result getExcellentTeaching() { +// System.err.println("=====>鑾峰彇鍒楄〃"); + return new Result(true,"", homepageService.getExcellentTeaching()); + } @GetMapping("/article") @ApiOperation("鑾峰彇鏂囩珷鍒楄〃") diff --git a/src/main/java/com/qxueyou/scc/portal/homepage/serivce/IHomepageService.java b/src/main/java/com/qxueyou/scc/portal/homepage/serivce/IHomepageService.java index f2598b8..2f8fef2 100644 --- a/src/main/java/com/qxueyou/scc/portal/homepage/serivce/IHomepageService.java +++ b/src/main/java/com/qxueyou/scc/portal/homepage/serivce/IHomepageService.java @@ -13,7 +13,7 @@ /** * 鑾峰彇棣栭〉鏁版嵁 // */ -// Map<String, Object> getIndexDetail(); + Map<String, Object> getIndexDetail(); /** * 鑾峰彇棣栭〉鏍囩 @@ -31,4 +31,5 @@ Map<String,Object> getVideo(String type,String subColumn,int page, int size); + Map<String,Object> getExcellentTeaching(); } diff --git a/src/main/java/com/qxueyou/scc/portal/homepage/serivce/imp/HomepageService.java b/src/main/java/com/qxueyou/scc/portal/homepage/serivce/imp/HomepageService.java index 7b06e0a..03fc162 100644 --- a/src/main/java/com/qxueyou/scc/portal/homepage/serivce/imp/HomepageService.java +++ b/src/main/java/com/qxueyou/scc/portal/homepage/serivce/imp/HomepageService.java @@ -8,48 +8,255 @@ //import com.qxueyou.appraisal.web.homepage.serivce.IHomepageService; //import com.qxueyou.entity.article.ArticleDO; //import com.qxueyou.util.CollectionUtils; + +import com.querydsl.jpa.impl.JPAQuery; +import com.qxueyou.scc.admin.classes.service.IClassLectureService; +import com.qxueyou.scc.admin.progress.dao.ProgressDAO; +import com.qxueyou.scc.base.service.impl.CommonAppService; import com.qxueyou.scc.base.util.CollectionUtils; +import com.qxueyou.scc.evaluate.service.IEvaluateService; +import com.qxueyou.scc.operation.topic.service.ITopicService; import com.qxueyou.scc.portal.homepage.dao.ArticleDao; import com.qxueyou.scc.portal.homepage.serivce.IHomepageService; import com.qxueyou.scc.portal.information.model.Information; +import com.qxueyou.scc.teach.res.model.Res; +import com.qxueyou.scc.teach.res.model.ResLib; +import com.qxueyou.scc.teach.res.service.IResAudioService; +import com.qxueyou.scc.teach.subject.model.QSubjectLecture; +import com.qxueyou.scc.teach.subject.model.SubjectLecture; +import com.qxueyou.scc.teach.subject.model.view.OpenSubjectV; +import com.qxueyou.scc.teach.subject.service.ILectureService; +import com.qxueyou.scc.teach.subject.service.ISubjectService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; + +import static java.util.stream.Collectors.toList; /** * @author ZERO 2021-03-03 09:16 */ @Service -public class HomepageService implements IHomepageService { +public class HomepageService extends CommonAppService implements IHomepageService { @Autowired private ArticleDao articleDao; -// @Autowired -// private AppraisalBatchDao batchDao; + @Autowired + ISubjectService subjectService; -// @Autowired -// private ContestsBatchDao batchDao; + @Autowired + ILectureService lectureService; -// @Autowired -// private OccupationDao occupationDao; + @Autowired + IClassLectureService clsLectureService; + + @Autowired + IResAudioService audioService; + + @Autowired + ProgressDAO progressDao; + + @Autowired + ITopicService topicService; + + @Autowired + IEvaluateService evaluateService; + /** * 鑾峰彇棣栭〉鏁版嵁 */ // @Override // public Map<String, Object> getIndexDetail() { +// +// List<OpenSubjectV> openSubjectVS = subjectService.listOpenSubjectV(); +// //鍗庢枃璇惧爞 +//// List<String> chineseLanguageClassId= openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("鍗庢枃璇惧爞")).map(OpenSubjectV::getSubjectId).collect(toList()); +// //鏂囧寲涓浗 +// List<String> culturalChinaId = openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("鏂囧寲涓浗")).map(OpenSubjectV::getSubjectId).collect(toList()); +// //鏂囧寲璇惧爞 +// List<String> culturalClassroomId = openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("鏂囧寲璇惧爞")).map(OpenSubjectV::getSubjectId).collect(toList()); +// //瀹炴櫙璇惧爞 +// List<String> realClassId = openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("瀹炴櫙璇惧爞")).map(OpenSubjectV::getSubjectId).collect(toList()); +// //涓枃+鑱屼笟鏁欒偛璇剧▼ +// List<String> chineseCourseId = openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("涓枃鑱屼笟鏁欒偛璇剧▼")).map(OpenSubjectV::getSubjectId).collect(toList()); +// +// StringBuffer hql = new StringBuffer("from SubjectLecture p where deleteFlag is false and status=?"); +// List<Object> args = CollectionUtils.newList(SubjectLecture.STATUS_DRAFT); +// List<SubjectLecture> subjectLectureList = find(hql.toString(), args, SubjectLecture.class); +// +// //鍗庢枃璇惧爞 +//// List<String> shineseLanguageClassResId= subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getSubjectId().equals(chineseLanguageClassId.get(0))).map(SubjectLecture::getResItemId).collect(toList()); +// //鏂囧寲涓浗 +// List<String> culturalChinaResId = subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getName().equals(culturalChinaId.get(0))).map(SubjectLecture::getResItemId).collect(toList()); +// //鏂囧寲璇惧爞 +// List<String> culturalClassroomResId = subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getName().equals(culturalClassroomId.get(0))).map(SubjectLecture::getResItemId).collect(toList()); +// //瀹炴櫙璇惧爞 +// List<String> realClassResId = subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getName().equals(realClassId.get(0))).map(SubjectLecture::getResItemId).collect(toList()); +// //涓枃+鑱屼笟鏁欒偛璇剧▼ +// List<String> chineseCourseResId = subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getName().equals(chineseCourseId.get(0))).map(SubjectLecture::getResItemId).collect(toList()); +// StringBuffer hqlRes = new StringBuffer("from Res p where deleteFlag is false and status=?"); +// List<Res> resList = find(hqlRes.toString(), args, Res.class); +// ArrayList<Res> shineseLanguageClassRes = new ArrayList<>(); +// ArrayList<Res> culturalChinaRes = new ArrayList<>(); +// ArrayList<Res> culturalClassroomRes = new ArrayList<>(); +// ArrayList<Res> realClassRes = new ArrayList<>(); +// for (Res res : resList) { +//// for (String resItemId : shineseLanguageClassResId) { +//// if (res.getResId().equals(resItemId)) { +//// shineseLanguageClassRes.add(res); +//// } +//// } +// for (String resItemId : culturalChinaResId) { +// if (res.getResId().equals(resItemId)) { +// culturalChinaRes.add(res); +// } +// } +// for (String resItemId : culturalClassroomResId) { +// if (res.getResId().equals(resItemId)) { +// culturalClassroomRes.add(res); +// } +// } +// for (String resItemId : realClassResId) { +// if (res.getResId().equals(resItemId)) { +// realClassRes.add(res); +// } +// } +// } +// //// System.err.println("================>鑾峰彇棣栭〉鏁版嵁"); // return CollectionUtils.newObjectMap( -// "appraisalBatchInfo", batchDao.findBatches(1, 24, null).get("data"), // createTime browseCount dateTime -// "occupationInfo", articleDao.findPage(CollectionUtils.newObjectMap("type", "qualifiedSet", "status", ArticleDO.UP_STATUS), 1, 8, "dateTime", Sort.Direction.DESC).get("data"), -// "news", articleDao.findPage(CollectionUtils.newObjectMap("type", "policiesRegulations", "status", ArticleDO.UP_STATUS), 1, 8, "dateTime", Sort.Direction.DESC).get("data")); +// "鍗庢枃璇惧爞", shineseLanguageClassRes, +// "鏂囧寲涓浗", culturalChinaRes, +// "瀹炴櫙璇惧爞", culturalClassroomRes, +// "涓枃+鑱屼笟鏁欒偛璇剧▼", realClassRes); // } + @Override + public Map<String, Object> getIndexDetail() { + + List<OpenSubjectV> openSubjectVS = subjectService.listOpenSubjectV(); + //鏂囧寲涓浗 + List<String> culturalChinaId = openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("鏂囧寲涓浗")).map(OpenSubjectV::getSubjectId).collect(toList()); + //鏂囧寲璇惧爞 +// List<String> culturalClassroomId = openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("鏂囧寲璇惧爞")).map(OpenSubjectV::getSubjectId).collect(toList()); + //鍗庢枃璇惧爞 + List<String> chineseLanguageClassId= openSubjectVS.stream().filter(openSubjectV -> openSubjectV.getSubjectName().equals("鍗庢枃璇惧爞")).map(OpenSubjectV::getSubjectId).collect(toList()); + + StringBuffer hql = new StringBuffer("from SubjectLecture p where deleteFlag is false and status=?"); + List<Object> args = CollectionUtils.newList(SubjectLecture.STATUS_DRAFT); + List<SubjectLecture> subjectLectureList = find(hql.toString(), args, SubjectLecture.class); + //鏂囧寲涓浗 + List<String> culturalChinaResId = culturalChinaId.size() == 0 ? null : subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getSubjectId().equals(culturalChinaId.get(0))).map(SubjectLecture::getResItemId).collect(toList()); + //鏂囧寲璇惧爞 + List<String> chineseLanguageClassResId = chineseLanguageClassId.size() == 0 ? null : subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getSubjectId().equals(chineseLanguageClassId.get(0))).map(SubjectLecture::getResItemId).collect(toList()); + StringBuffer hqlRes = new StringBuffer("from Res p where deleteFlag is false and status=?"); + List<Res> resList = find(hqlRes.toString(), args, Res.class); + List<Res> culturalChinaRes = new ArrayList<>(); + List<Res> chineseLanguageClassRes = new ArrayList<>(); + if (culturalChinaResId != null) { + for (Res res : resList) { + for (String resItemId : culturalChinaResId) { + if (res.getResId().equals(resItemId)) { + culturalChinaRes.add(res); + } + } + + } + } + + if (chineseLanguageClassResId != null) { + for (Res res : resList) { + for (String resItemId : chineseLanguageClassResId) { + if (res.getResId().equals(resItemId)) { + chineseLanguageClassRes.add(res); + } + } + } + } + +// return CollectionUtils.newObjectMap( +// "culturalClassroomRes", chineseLanguageClassRes, +// "culturalChinaRes", culturalChinaRes); + return CollectionUtils.newObjectMap( + "culturalClassroomRes",CollectionUtils.newObjectMap("subjectId",culturalChinaId.get(0),"data",chineseLanguageClassRes), + "culturalChinaRes",CollectionUtils.newObjectMap("subjectId",chineseLanguageClassId.get(0),"data",culturalChinaRes) + ); + } + + @Override + public Map<String, Object> getExcellentTeaching() { + + List<OpenSubjectV> openSubjectVS = subjectService.listOpenSubjectV(); + //鏂囧寲璇惧爞 + List<String> culturalClassroomId = openSubjectVS.stream() + .filter(openSubjectV -> openSubjectV.getSubjectName().equals("鍗庢枃璇惧爞")) + .map(OpenSubjectV::getSubjectId).collect(toList()); + //瀹炴櫙璇惧爞 + List<String> realClassId = openSubjectVS.stream() + .filter(openSubjectV -> openSubjectV.getSubjectName().equals("瀹炴櫙璇惧爞")) + .map(OpenSubjectV::getSubjectId).collect(toList()); + //涓枃+鑱屼笟鏁欒偛璇剧▼ + List<String> chineseCourseId = openSubjectVS.stream() + .filter(openSubjectV -> openSubjectV.getSubjectName().equals("涓枃+鑱屼笟鏁欒偛璇剧▼")) + .map(OpenSubjectV::getSubjectId).collect(toList()); + + StringBuffer hql = new StringBuffer("from SubjectLecture p where deleteFlag is false and status=?"); + List<Object> args = CollectionUtils.newList(SubjectLecture.STATUS_DRAFT); + List<SubjectLecture> subjectLectureList = find(hql.toString(), args, SubjectLecture.class); + + //鍗庢枃璇惧爞 + List<String> culturalClassroomResId = culturalClassroomId.size() == 0 ? null : subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getSubjectId().equals(culturalClassroomId.get(0))) + .sorted(Comparator.comparing(SubjectLecture::getCreateTime) + .reversed()).map(SubjectLecture::getResItemId).limit(8).collect(toList()); + //瀹炴櫙璇惧爞 + List<String> realClassResId = realClassId.size() == 0 ? null : subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getSubjectId().equals(realClassId.get(0))) + .sorted(Comparator.comparing(SubjectLecture::getCreateTime) + .reversed()).map(SubjectLecture::getResItemId).limit(8).collect(toList()); + //涓枃+鑱屼笟鏁欒偛璇剧▼ + List<String> chineseCourseResId = chineseCourseId.size() == 0 ? null : subjectLectureList.stream().filter(subjectLecture -> subjectLecture.getSubjectId().equals(chineseCourseId.get(0))) + .sorted(Comparator.comparing(SubjectLecture::getCreateTime) + .reversed()).map(SubjectLecture::getResItemId).limit(8).collect(toList()); + StringBuffer hqlRes = new StringBuffer("from Res p where deleteFlag is false and status=?"); + List<Res> resList = find(hqlRes.toString(), args, Res.class); + ArrayList<Res> culturalChinaRes = new ArrayList<>(); + ArrayList<Res> culturalClassroomRes = new ArrayList<>(); + ArrayList<Res> realClassRes = new ArrayList<>(); + + if (culturalClassroomResId != null) { + for (String resItemId : culturalClassroomResId) { + for (Res res : resList) { + if (res.getResId().equals(resItemId)) { + culturalChinaRes.add(res); + } + } + } + } + if (realClassResId != null) { + for (String resItemId : realClassResId) { + for (Res res : resList) { + if (res.getResId().equals(resItemId)) { + culturalClassroomRes.add(res); + } + } + } + } + if (chineseCourseResId != null) { + for (String resItemId : chineseCourseResId) { + for (Res res : resList) { + if (res.getResId().equals(resItemId)) { + realClassRes.add(res); + } + } + } + } + return CollectionUtils.newObjectMap( + "culturalChinaRes",CollectionUtils.newObjectMap("subjectId",culturalClassroomId.size() == 0 ? null : culturalClassroomId.get(0),"data",culturalChinaRes), + "culturalClassroomRes",CollectionUtils.newObjectMap("subjectId",realClassId.size() == 0 ? null : realClassId.get(0),"data",culturalClassroomRes), + "realClassRes", CollectionUtils.newObjectMap("subjectId",chineseCourseId.size() == 0 ? null :chineseCourseId.get(0),"data",realClassRes)); + } /** @@ -61,11 +268,11 @@ boolean exist; List<Map<String, Object>> tabs = new ArrayList<>(); - List<Map<String,String>> sub=new ArrayList<>(); + List<Map<String, String>> sub = new ArrayList<>(); exist = articleDao.exist("examBriefing"); - if (exist) tabs.add(CollectionUtils.newObjectMap("name", "濯掍綋鑱氱劍", "type", "examBriefing","list",sub)); + if (exist) tabs.add(CollectionUtils.newObjectMap("name", "濯掍綋鑱氱劍", "type", "examBriefing", "list", sub)); exist = articleDao.exist("qualifiedSet"); if (exist) tabs.add(CollectionUtils.newObjectMap("name", "鍗庢暀鏂伴矞浜�", "type", "qualifiedSet")); @@ -79,14 +286,14 @@ exist = articleDao.exist("popularInformation"); if (exist) tabs.add(CollectionUtils.newObjectMap("name", "鑱旂郴鎴戜滑", "type", "popularInformation")); - exist =articleDao.existsubColumn("examBriefing","introduce"); - if(exist) sub.add(CollectionUtils.newStringMap("name", "娴峰璧勮", "subColumn", "introduce") ); + exist = articleDao.existsubColumn("examBriefing", "introduce"); + if (exist) sub.add(CollectionUtils.newStringMap("name", "娴峰璧勮", "subColumn", "introduce")); - exist =articleDao.existsubColumn("examBriefing","contestFile"); - if(exist) sub.add(CollectionUtils.newStringMap("name", "娴峰璧勮", "subColumn", "contestFile")); + exist = articleDao.existsubColumn("examBriefing", "contestFile"); + if (exist) sub.add(CollectionUtils.newStringMap("name", "娴峰璧勮", "subColumn", "contestFile")); - exist =articleDao.existsubColumn("examBriefing","previousContest"); - if(exist) sub.add(CollectionUtils.newStringMap("name", "寰�灞婂ぇ璧�", "subColumn", "previousContest")); + exist = articleDao.existsubColumn("examBriefing", "previousContest"); + if (exist) sub.add(CollectionUtils.newStringMap("name", "寰�灞婂ぇ璧�", "subColumn", "previousContest")); return tabs; } @@ -95,8 +302,9 @@ * 鑾峰彇鏂囩珷鍒楄〃 */ @Override - public Map<String, Object> getArticle(String type,String subColumn,String numbers,int page, int size, String keyword) { - return articleDao.moreOccupation(type,subColumn,numbers,page, size, keyword); + public Map<String, Object> getArticle(String type, String subColumn, String numbers, int page, int size, String + keyword) { + return articleDao.moreOccupation(type, subColumn, numbers, page, size, keyword); } @@ -111,7 +319,7 @@ //inc娴忚鏁� articleDao.incBrowseCount(id); - Information article = articleDao.read(Information.class,id); + Information article = articleDao.read(Information.class, id); Map<String, Object> data = CollectionUtils.newObjectMap( "title", article.getTitle(), @@ -128,13 +336,13 @@ return data; } - public Information getArticlesType(String type,String subColumn) { - Information articleDO=articleDao.getArticle(type,subColumn); + public Information getArticlesType(String type, String subColumn) { + Information articleDO = articleDao.getArticle(type, subColumn); return articleDO; } @Override public Map<String, Object> getVideo(String type, String subColumn, int page, int size) { - return articleDao.getVideoList(type,subColumn,page, size); + return articleDao.getVideoList(type, subColumn, page, size); } } -- Gitblit v1.8.0