From 3ba5b55cb8ff5e7ba44effea86596654615074d0 Mon Sep 17 00:00:00 2001 From: 86182 Date: Mon, 14 Nov 2022 16:22:13 +0800 Subject: [PATCH 01/10] =?UTF-8?q?=E5=9B=9E=E5=A4=8D=E6=97=B6=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E9=BB=98=E8=AE=A4=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/interaction/service/impl/CommentsServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/service/impl/CommentsServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/service/impl/CommentsServiceImpl.java index 5393a819..dbd955f4 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/service/impl/CommentsServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/service/impl/CommentsServiceImpl.java @@ -72,6 +72,8 @@ public class CommentsServiceImpl implements ICommentsService{ public void reply(Comments c) { c.setDeleted(false); c.setIsread(false); + c.setPraises(0); + c.setFavorites(0); dao.save(c); if(c.getParentRead()!=null && c.getParentRead()) { dao.updateMultiFieldById(c.getParentId(), From 881bbcb5f70a785eb50f266d1bfc0293f96820ce Mon Sep 17 00:00:00 2001 From: daihh Date: Mon, 14 Nov 2022 18:18:05 +0800 Subject: [PATCH 02/10] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=97=B6=E9=BB=98=E8=AE=A4=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E4=B8=BB=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/xboe/system/user/service/impl/UserServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/UserServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/UserServiceImpl.java index 0802ceef..440277d9 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/UserServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/UserServiceImpl.java @@ -105,6 +105,9 @@ public class UserServiceImpl implements IUserService { if (user.getStudyTotal() == null) { user.setStudyTotal(0);//新用户学习时长为0 } + if(user.getShowHome()==null) { + user.setShowHome(true); + } dao.save(user); } From 1b6867f27dc99265c3080e43e35855e31619ab75 Mon Sep 17 00:00:00 2001 From: daihh Date: Mon, 14 Nov 2022 18:18:43 +0800 Subject: [PATCH 03/10] =?UTF-8?q?ES=E5=8E=BB=E6=8E=89=E8=80=81=E5=B8=88?= =?UTF-8?q?=E7=9A=84=E9=AB=98=E4=BA=AE=E6=98=BE=E7=BA=A2=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elasticsearc/CourseElasticsearchImpl.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java b/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java index 892dd4dc..c0d8a4f3 100644 --- a/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java +++ b/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java @@ -438,7 +438,7 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ HighlightBuilder highlightBuilder = new HighlightBuilder(); highlightBuilder.requireFieldMatch(true);//是否多个字段都高亮 - highlightBuilder.preTags("");//前缀后缀 + highlightBuilder.preTags("");//前缀后缀 highlightBuilder.postTags(""); HighlightBuilder.Field nameHighlight=new HighlightBuilder.Field("name"); @@ -462,7 +462,7 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ SearchResponse response = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT); SearchHits hits = response.getHits(); - log.info("共查询到 : "+hits.getTotalHits()); + //log.info("共查询到 : "+hits.getTotalHits()); for (SearchHit hit : hits) { Map highlightFields = hit.getHighlightFields(); @@ -494,15 +494,15 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ } cft.setSummary(fmtStr.toString()); } - - if(teacher!= null){ - Text[] fragments = teacher.fragments(); - StringBuffer fmtStr = new StringBuffer(""); - for (Text fragment : fragments) { - fmtStr.append(fragment); - } - cft.setTeacher(fmtStr.toString()); - } + //去掉老师的高亮显 +// if(teacher!= null){ +// Text[] fragments = teacher.fragments(); +// StringBuffer fmtStr = new StringBuffer(""); +// for (Text fragment : fragments) { +// fmtStr.append(fragment); +// } +// cft.setTeacher(fmtStr.toString()); +// } if(keywords!= null){ Text[] fragments = keywords.fragments(); From e85e81e9e0bf382141cfde82350c42d8a584d97a Mon Sep 17 00:00:00 2001 From: daihh Date: Mon, 14 Nov 2022 18:30:10 +0800 Subject: [PATCH 04/10] =?UTF-8?q?=E8=80=83=E8=AF=95=E7=9A=84=E6=89=A9?= =?UTF-8?q?=E5=B1=95=E6=8E=A5=E5=8F=A3=EF=BC=8C=E7=94=A8=E4=BA=8E=E5=AF=B9?= =?UTF-8?q?=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/xboe/module/exam/api/AloneExamExtendApi.java | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java new file mode 100644 index 00000000..60768593 --- /dev/null +++ b/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java @@ -0,0 +1,8 @@ +package com.xboe.module.exam.api; + +/** + * 对于与第三方对接的扩展接口 + */ +public class AloneExamExtendApi { + +} From b3bfb4737f2fd2ba3595844f2edae7fc2949d429 Mon Sep 17 00:00:00 2001 From: 86182 Date: Mon, 14 Nov 2022 19:55:55 +0800 Subject: [PATCH 05/10] =?UTF-8?q?=E6=94=B6=E8=97=8F=EF=BC=8C=E8=AF=84?= =?UTF-8?q?=E8=AE=BA=EF=BC=8C=E5=88=86=E4=BA=AB=E5=8A=A0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xboe/module/interaction/entity/Comments.java | 12 ++++++++++++ .../xboe/module/interaction/entity/Favorites.java | 12 ++++++++++++ .../com/xboe/module/interaction/entity/Shares.java | 13 +++++++++++++ 3 files changed, 37 insertions(+) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Comments.java b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Comments.java index e1865345..84438e78 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Comments.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Comments.java @@ -116,6 +116,18 @@ public class Comments extends IdBaseEntity { @Column(name = "favorites") private Integer favorites; + + /** + * 页面类型 + * */ + @Column(name = "page_type",length = 1) + private Integer pageType; + + /** + *页面参数 默认是id + * */ + @Column(name = "page_params",length = 50) + private String pageParams; // /** // * 最后回答时间 diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Favorites.java b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Favorites.java index 76882776..2781ce0d 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Favorites.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Favorites.java @@ -39,6 +39,18 @@ public class Favorites extends IdBaseEntity { @MetaInfo("标题") @Column(name = "title", nullable = false,length=100) private String title; + + /** + * 页面类型 + * */ + @Column(name = "page_type",length = 1) + private Integer pageType; + + /** + *页面参数 默认是id + * */ + @Column(name = "page_params",length = 50) + private String pageParams; /** * 用于显示内容信息 diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Shares.java b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Shares.java index 8453b815..9e00b21b 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Shares.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/interaction/entity/Shares.java @@ -36,6 +36,19 @@ public class Shares extends IdBaseEntity { private String objId; + /** + * 页面类型 + * */ + @Column(name = "page_type",length = 1) + private Integer pageType; + + /** + *页面参数 默认是id + * */ + @Column(name = "page_params",length = 50) + private String pageParams; + + /** * 分享内容 From cc5f221c462810bdff0d0144156f8b2f46bdd320 Mon Sep 17 00:00:00 2001 From: 86182 Date: Mon, 14 Nov 2022 20:01:38 +0800 Subject: [PATCH 06/10] =?UTF-8?q?=E5=85=B3=E4=BA=8E=E7=AC=AC=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E5=AF=B9=E6=8E=A5=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/exam/api/AloneExamExtendApi.java | 77 +++++++++++++++++- .../xboe/module/exam/entity/AloneExam.java | 17 ++++ .../exam/service/IAloneExamService.java | 36 ++++++++- .../service/impl/AloneExamServiceImpl.java | 79 +++++++++++++++++++ .../xboe/module/exam/vo/AloneExamQuery.java | 19 +++++ 5 files changed, 226 insertions(+), 2 deletions(-) create mode 100644 servers/boe-server-all/src/main/java/com/xboe/module/exam/vo/AloneExamQuery.java diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java index 60768593..0bfc581d 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/AloneExamExtendApi.java @@ -1,8 +1,83 @@ package com.xboe.module.exam.api; +import com.xboe.common.PageList; +import com.xboe.common.Pagination; +import com.xboe.common.utils.StringUtil; +import com.xboe.core.JsonResponse; +import com.xboe.core.api.ApiBaseController; +import com.xboe.module.exam.entity.AloneExam; +import com.xboe.module.exam.entity.AloneExamAnswer; +import com.xboe.module.exam.service.IAloneExamService; +import com.xboe.module.exam.vo.AloneExamQuery; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + /** * 对于与第三方对接的扩展接口 */ -public class AloneExamExtendApi { +@RestController +@RequestMapping(value = "/xboe/m/exam/alone-extend") +public class AloneExamExtendApi extends ApiBaseController { + + @Resource + IAloneExamService aloneExamService; + + /** + * 添加考试任务,针对单个用户 + * */ + @PostMapping("/save") + public JsonResponse save(@RequestBody AloneExam aloneExam){ + if(StringUtil.isNotBlank(aloneExam.getAid())){ + return badRequest("缺少用户参数"); + } + if(StringUtil.isNotBlank(aloneExam.getTestId())){ + return badRequest("缺少考试信息"); + } + if(StringUtil.isNotBlank(aloneExam.getRefId())){ + return badRequest("缺少关联信息"); + } + if(StringUtil.isNotBlank(aloneExam.getRefType())){ + return badRequest("缺少关联类型"); + } + try { + aloneExamService.save(aloneExam); + return success(aloneExam); + } catch (Exception e) { + return error("保存考试任务失败",e.getMessage()); + + } + } + + /** + * 根据考试id,refType,refId查询考试任务 + * */ + @PostMapping("/pagelist") + public JsonResponse> pagelist(Pagination pager, AloneExamQuery aloneExamQuery){ + try { + PageList page = aloneExamService.findPage(pager.getPageIndex(), pager.getPageSize(), aloneExamQuery); + return success(page); + } catch (Exception e) { + return error("查询考试任务失败",e.getMessage()); + } + } + + /** + * 根据考试id,refType,refId 用户id 查询用户答卷信息 + * */ + @PostMapping("/anser-page") + public JsonResponse> answerpage(Pagination pager,AloneExamQuery aloneExamQuery){ + try { + PageList pageList = aloneExamService.answerPage(pager.getPageIndex(), pager.getPageSize(), aloneExamQuery); + return success(pageList); + } catch (Exception e) { + return error("查询用户答卷失败",e.getMessage()); + } + } + + } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/exam/entity/AloneExam.java b/servers/boe-server-all/src/main/java/com/xboe/module/exam/entity/AloneExam.java index fbd0428f..2f2a5c6a 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/exam/entity/AloneExam.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/exam/entity/AloneExam.java @@ -156,4 +156,21 @@ public class AloneExam extends IdBaseEntity { this.endTime=endTime; } + public AloneExam(String id,String aid,String testId,String testName,Integer testDuration,Integer times,Float score,Integer status,LocalDateTime taskTime,LocalDateTime startTime,LocalDateTime endTime,String refId,String refType) { + this.setId(id); + this.setAid(aid); + this.testId=testId; + this.testName=testName; + this.testDuration=testDuration; + this.times=times; + this.score=score; + this.status=status; + this.taskTime=taskTime; + this.startTime=startTime; + this.endTime=endTime; + this.refId=refId; + this.refType=refType; + } + + } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/IAloneExamService.java b/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/IAloneExamService.java index 1a4f6a15..aa42c2ea 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/IAloneExamService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/IAloneExamService.java @@ -6,6 +6,7 @@ import com.xboe.common.OrderCondition; import com.xboe.common.PageList; import com.xboe.module.exam.entity.AloneExam; import com.xboe.module.exam.entity.AloneExamAnswer; +import com.xboe.module.exam.vo.AloneExamQuery; /** * 独立考试的处理。此信息无删除操作,更新也只是更新answerJson字段 @@ -21,7 +22,35 @@ public interface IAloneExamService { * @return */ PageList findPage(int pageIndex,int pageSize,AloneExam aea,OrderCondition oc); - + + + /** + * 用于第三方对接 + * 查询个人的考试任务 根据考试id,refId,refType 查询 + * @param pageIndex + * @param pageSize + * @param testId + * @param refId + * @param refType + * @return + */ + PageList findPage(int pageIndex, int pageSize, AloneExamQuery examQuery); + + + /** + * 用于第三方对接 + * 查询用户的答卷 + * @param pageIndex + * @param pageSize + * @param testId + * @param refId + * @param refType + * @param aid + * */ + PageList answerPage(int pageIndex,int pageSize,AloneExamQuery aloneExamQuery); + + + /** * 获取独立考试的信息,检查是否有独立考试 * @param aid @@ -98,5 +127,10 @@ public interface IAloneExamService { List findList(String testId); + + /** + * 保存考试任务 + * */ + void save(AloneExam aloneExam); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/impl/AloneExamServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/impl/AloneExamServiceImpl.java index 0b7bfe42..347c8263 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/impl/AloneExamServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/exam/service/impl/AloneExamServiceImpl.java @@ -5,6 +5,8 @@ import java.util.List; import javax.annotation.Resource; +import com.xboe.common.utils.StringUtil; +import com.xboe.module.exam.vo.AloneExamQuery; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -153,6 +155,11 @@ public class AloneExamServiceImpl implements IAloneExamService{ return list; } + @Override + public void save(AloneExam aloneExam) { + aeDao.save(aloneExam); + } + @Override public AloneExamAnswer get(String id) { return dao.get(id); @@ -213,6 +220,78 @@ public class AloneExamServiceImpl implements IAloneExamService{ return aeDao.findPage(query.builder()); } + @Override + public PageList findPage(int pageIndex, int pageSize, AloneExamQuery examQuery) { + QueryBuilder builder = QueryBuilder.from(AloneExam.class.getSimpleName()+" a,"+ExamTest.class.getSimpleName()+" t"); + builder.addField("new AloneExam(a.id,a.aid,a.testId,a.testName,a.testDuration,a.times,a.score,a.status,a.taskTime,t.entranceTime,t.deadlineTime,a.refId,a.refType)"); + builder.setPageIndex(pageIndex); + builder.setPageSize(pageSize); + builder.addFilter(FieldFilters.eqField("a.testId","t.id")); + if(examQuery!=null){ + OrderCondition order=null; + if(StringUtils.isNotBlank(examQuery.getOrderField())) { + if(examQuery.getOrderAsc()==null|| examQuery.getOrderAsc()) { + + order=OrderCondition.asc(examQuery.getOrderField()); + }else { + order=OrderCondition.desc(examQuery.getOrderField()); + } + }else { + order=OrderCondition.desc("a.sysCreateTime"); + } + if(StringUtil.isNotBlank(examQuery.getTestId())){ + builder.addFilter(FieldFilters.eq("a.testId",examQuery.getTestId())); + } + if(StringUtil.isNotBlank(examQuery.getRefId())){ + builder.addFilter(FieldFilters.eq("a.refId",examQuery.getRefId())); + } + if(StringUtil.isNotBlank(examQuery.getRefType())){ + builder.addFilter(FieldFilters.eq("a.refType",examQuery.getRefType())); + } + + } + PageList page = aeDao.findPage(builder.builder()); + return page; + } + + @Override + public PageList answerPage(int pageIndex, int pageSize, AloneExamQuery aloneExamQuery) { + QueryBuilder builder=QueryBuilder.from(AloneExam.class.getSimpleName()+" a,"+AloneExamAnswer.class.getSimpleName()+" aa"); + builder.addField("new AloneExamAnswer(aa.id,aa.aid,aa.name,aa.testId,aa.testName,aa.arrange,aa.passLine,aa.status,aa.startTime,aa.endTime,aa.lastTime,aa.clientIp,aa.ucode,aa.score,aa.totalScore,aa.realScore,aa.useSecond)"); + builder.setPageIndex(pageIndex); + builder.setPageSize(pageSize); + builder.addFilter(FieldFilters.eqField("a.id","aa.aloneId")); + if(aloneExamQuery!=null){ + OrderCondition order=null; + if(StringUtil.isNotBlank(aloneExamQuery.getOrderField())){ + if(aloneExamQuery.getOrderAsc()==null || aloneExamQuery.getOrderAsc()){ + order=OrderCondition.asc(aloneExamQuery.getOrderField()); + }else{ + order=OrderCondition.desc(aloneExamQuery.getOrderField()); + } + }else { + order=OrderCondition.desc("aa.sysCreateTime"); + } + + if(StringUtil.isNotBlank(aloneExamQuery.getTestId())){ + builder.addFilter(FieldFilters.eq("a.testId",aloneExamQuery.getTestId())); + } + if(StringUtil.isNotBlank(aloneExamQuery.getRefId())){ + builder.addFilter(FieldFilters.eq("a.refId",aloneExamQuery.getRefId())); + } + if(StringUtil.isNotBlank(aloneExamQuery.getRefType())){ + builder.addFilter(FieldFilters.eq("a.refType",aloneExamQuery.getRefType())); + } + if(StringUtil.isNotBlank(aloneExamQuery.getAid())){ + builder.addFilter(FieldFilters.eq("a.aid",aloneExamQuery.getAid())); + } + } + PageList page = dao.findPage(builder.builder()); + + return page; + + } + @Override public AloneExam getAloneByAidAndTestId(String aid, String testId) { AloneExam ae=aeDao.findOne(FieldFilters.eq("aid", aid),FieldFilters.eq("testId", testId)); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/exam/vo/AloneExamQuery.java b/servers/boe-server-all/src/main/java/com/xboe/module/exam/vo/AloneExamQuery.java new file mode 100644 index 00000000..3450d9db --- /dev/null +++ b/servers/boe-server-all/src/main/java/com/xboe/module/exam/vo/AloneExamQuery.java @@ -0,0 +1,19 @@ +package com.xboe.module.exam.vo; + +import lombok.Data; + +@Data +public class AloneExamQuery { + + private String testId; + + private String refId; + + private String refType; + + private String orderField; + + private Boolean orderAsc; + + private String aid; +} From b2523163a8bcaa791c8b680cc432a6c79a8d06af Mon Sep 17 00:00:00 2001 From: daihh Date: Tue, 15 Nov 2022 09:39:53 +0800 Subject: [PATCH 07/10] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E8=BD=AC=E4=B9=89?= =?UTF-8?q?=E7=AC=A6=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elasticsearc/CourseElasticsearchImpl.java | 64 ++++++++++--------- 1 file changed, 35 insertions(+), 29 deletions(-) diff --git a/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java b/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java index c0d8a4f3..41c9a0e5 100644 --- a/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java +++ b/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java @@ -12,6 +12,7 @@ import java.util.concurrent.TimeUnit; import javax.annotation.Resource; import org.apache.commons.lang3.StringUtils; +import org.apache.lucene.queryparser.classic.QueryParser; import org.elasticsearch.action.DocWriteResponse; import org.elasticsearch.action.delete.DeleteRequest; import org.elasticsearch.action.delete.DeleteResponse; @@ -338,11 +339,15 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ if(StringUtils.isNotBlank(params.getKeywords())) { - //boolQuery.must(QueryBuilders.queryStringQuery(params.getKeywords()).field("name", 8f)); + String words=QueryParser.escape(params.getKeywords()); + +// System.out.println(params.getKeywords()); +// System.out.println(words); BoolQueryBuilder keywordQuery = QueryBuilders.boolQuery(); - keywordQuery.should(QueryBuilders.wildcardQuery("name", "*"+params.getKeywords()+"*").boost(9f)); - keywordQuery.should(QueryBuilders.queryStringQuery(params.getKeywords()).field("teacher", 8f)); + keywordQuery.should(QueryBuilders.wildcardQuery("name", "*"+words+"*").boost(9f)); + //keywordQuery.should(QueryBuilders.queryStringQuery(words).field("name", 9f));//用此方法无法查询出有转义符的处理 + keywordQuery.should(QueryBuilders.queryStringQuery(words).field("teacher", 8f)); keywordQuery.minimumShouldMatch(1); boolQuery.must(keywordQuery); //boolQuery.must(QueryBuilders.wildcardQuery("name", "*"+params.getKeywords()+"*").boost(9f)); @@ -462,7 +467,7 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ SearchResponse response = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT); SearchHits hits = response.getHits(); - //log.info("共查询到 : "+hits.getTotalHits()); + log.info("共查询到 : "+hits.getTotalHits()); for (SearchHit hit : hits) { Map highlightFields = hit.getHighlightFields(); @@ -477,23 +482,24 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ try { CourseFullText cft =mapper.readValue(sourceAsString, CourseFullText.class); cft.setEsId(hit.getId()); - if(name!= null){ - Text[] fragments = name.fragments(); - StringBuffer fmtStr = new StringBuffer(""); - for (Text fragment : fragments) { - fmtStr.append(fragment); - } - cft.setName(fmtStr.toString()); - } - - if(summary!= null){ - Text[] fragments = summary.fragments(); - StringBuffer fmtStr = new StringBuffer(""); - for (Text fragment : fragments) { - fmtStr.append(fragment); - } - cft.setSummary(fmtStr.toString()); - } + //以下不再加高亮显,高亮显在页面中去实现 +// if(name!= null){ +// Text[] fragments = name.fragments(); +// StringBuffer fmtStr = new StringBuffer(""); +// for (Text fragment : fragments) { +// fmtStr.append(fragment); +// } +// cft.setName(fmtStr.toString()); +// } +// +// if(summary!= null){ +// Text[] fragments = summary.fragments(); +// StringBuffer fmtStr = new StringBuffer(""); +// for (Text fragment : fragments) { +// fmtStr.append(fragment); +// } +// cft.setSummary(fmtStr.toString()); +// } //去掉老师的高亮显 // if(teacher!= null){ // Text[] fragments = teacher.fragments(); @@ -504,14 +510,14 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ // cft.setTeacher(fmtStr.toString()); // } - if(keywords!= null){ - Text[] fragments = keywords.fragments(); - StringBuffer fmtStr = new StringBuffer(""); - for (Text fragment : fragments) { - fmtStr.append(fragment); - } - cft.setKeywords(fmtStr.toString()); - } +// if(keywords!= null){ +// Text[] fragments = keywords.fragments(); +// StringBuffer fmtStr = new StringBuffer(""); +// for (Text fragment : fragments) { +// fmtStr.append(fragment); +// } +// cft.setKeywords(fmtStr.toString()); +// } list.add(cft); }catch(Exception ee) { From 2bd6088bee6abcbd2f1e25eb1a5ec0ab208808ff Mon Sep 17 00:00:00 2001 From: 86182 Date: Tue, 15 Nov 2022 10:33:26 +0800 Subject: [PATCH 08/10] =?UTF-8?q?=E6=B6=88=E6=81=AF=E8=A1=A8=E5=8A=A0?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/xboe/system/user/entity/Message.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java index b3f49c81..21655cf3 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java @@ -43,6 +43,18 @@ public class Message extends IdEntity { /**跳转的url*/ @Column(name = "page_url",nullable = true,length=200) private String pageUrl; + + /** + * 页面类型 + * */ + @Column(name = "page_type",length = 1) + private Integer pageType; + + /** + *页面参数 默认是id + * */ + @Column(name = "page_params",length = 50) + private String pageParams; /** * 数据来源,1表新系统,2表外部系统 From dc77ab469a23062b8fda2f55d8f0c909458bf7b2 Mon Sep 17 00:00:00 2001 From: daihh Date: Tue, 15 Nov 2022 11:09:36 +0800 Subject: [PATCH 09/10] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E8=80=81=E5=B8=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../course/service/impl/CourseServiceImpl.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java index 737acf06..f001b693 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java @@ -671,13 +671,13 @@ public class CourseServiceImpl implements ICourseService { full.getCourse().setSysVersion(c.getSysVersion()); //先清空教师信息, 教师信息如果不一样了,也要加入到日志中 - courseTeacherDao.deleteByField("courseId", c.getId()); - if(full.getTeachers()!=null && !full.getTeachers().isEmpty()) { - for(CourseTeacher ct : full.getTeachers()) { - ct.setCourseId(c.getId()); - courseTeacherDao.saveOrUpdate(ct); - } - } +// courseTeacherDao.deleteByField("courseId", c.getId()); +// if(full.getTeachers()!=null && !full.getTeachers().isEmpty()) { +// for(CourseTeacher ct : full.getTeachers()) { +// ct.setCourseId(c.getId()); +// courseTeacherDao.saveOrUpdate(ct); +// } +// } //先清空受众信息,受众信息如果不一样了,也要加入到日志中 courseCrowdDao.deleteByField("courseId", c.getId()); if(full.getCrowds()!=null && !full.getCrowds().isEmpty()) { From 5f790dcd25f344eb3e2bd9848d53d02b0074afbe Mon Sep 17 00:00:00 2001 From: daihh Date: Tue, 15 Nov 2022 17:09:31 +0800 Subject: [PATCH 10/10] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=97=B6=E5=86=8D?= =?UTF-8?q?=E6=AC=A1=E4=BF=9D=E5=AD=98=E6=95=99=E5=B8=88=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E4=B8=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xboe/module/course/dto/CourseContentDto.java | 5 +++++ .../service/impl/CourseContentServiceImpl.java | 9 ++++++++- .../course/service/impl/CourseServiceImpl.java | 16 +++++++--------- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/dto/CourseContentDto.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/dto/CourseContentDto.java index 00a76968..43b20993 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/dto/CourseContentDto.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/dto/CourseContentDto.java @@ -12,6 +12,11 @@ import lombok.Data; */ @Data public class CourseContentDto { + + /** + * 类型,10无目录课程,20有目录课程 + */ + private Integer type;// private CourseContent content; diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseContentServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseContentServiceImpl.java index 62a39ec1..c2cc351d 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseContentServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseContentServiceImpl.java @@ -52,13 +52,19 @@ public class CourseContentServiceImpl implements ICourseContentService { CourseExam exam=dto.getExam(); CourseHomeWork homework=dto.getHomework(); - if(StringUtils.isBlank(cc.getId())) { //新增的情况 cc.setDeleted(false); if(cc.getDuration()==null) { cc.setDuration(0); } + //如果是没有目录的,并具是课程内容 + if(dto.getType()!=null && dto.getType()==10) { + if(cc.getSortIndex()==1) { + //先删除之前其它的 + ccDao.deleteByField("courseId",cc.getCourseId()); + } + } ccDao.save(cc); }else { ccDao.update(cc); @@ -113,6 +119,7 @@ public class CourseContentServiceImpl implements ICourseContentService { List list=ccDao.findList(OrderCondition.asc("sortIndex"), FieldFilters.eq("courseId", courseId), FieldFilters.eq("deleted", false)); + return list; } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java index f001b693..69780a79 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java @@ -671,13 +671,13 @@ public class CourseServiceImpl implements ICourseService { full.getCourse().setSysVersion(c.getSysVersion()); //先清空教师信息, 教师信息如果不一样了,也要加入到日志中 -// courseTeacherDao.deleteByField("courseId", c.getId()); -// if(full.getTeachers()!=null && !full.getTeachers().isEmpty()) { -// for(CourseTeacher ct : full.getTeachers()) { -// ct.setCourseId(c.getId()); -// courseTeacherDao.saveOrUpdate(ct); -// } -// } + courseTeacherDao.deleteByField("courseId", c.getId()); + if(full.getTeachers()!=null && !full.getTeachers().isEmpty()) { + for(CourseTeacher ct : full.getTeachers()) { + ct.setCourseId(c.getId()); + courseTeacherDao.saveOrUpdate(ct); + } + } //先清空受众信息,受众信息如果不一样了,也要加入到日志中 courseCrowdDao.deleteByField("courseId", c.getId()); if(full.getCrowds()!=null && !full.getCrowds().isEmpty()) { @@ -695,8 +695,6 @@ public class CourseServiceImpl implements ICourseService { hrbpAudit.setForward(CourseHRBPAudit.FORWARD_NONE); hrbpAudit.setStatus(CourseHRBPAudit.STATUS_NONE); courseHRBPAuditDao.save(hrbpAudit); - - } @Override