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 cec68683..dbabfa74 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 @@ -472,12 +472,6 @@ public class CourseServiceImpl implements ICourseService { //同时添加发布事件,这里的创建人需要修改为教师 Course c=courseDao.get(id); //删除分两种情况,一个是管理员删除,一个是自己删除 ,所以这里的处理移到前端了 -// if(eventSender!=null) { -// eventSender.send("删除课程","DeleteCourse", "删除课程【"+c.getName()+"】", c.getId(), "1", c.getName(), c.getSysCreateAid(), c.getSysCreateBy(),""); -// }else { -// log.error("未配置事件消息发送的实现"); -// } - //删除 if(c.getFullTextId()!=null) { try { fullTextSearch.remove(ICourseFullTextSearch.DEFAULT_INDEX_NAME,c.getFullTextId()); @@ -485,6 +479,26 @@ public class CourseServiceImpl implements ICourseService { log.error("删除课程时删除全文索引错误",e); } } + //只有速有全文检索返回标识的,才算是发布过再删除的,删除消息 + if(StringUtils.isNotBlank(c.getFullTextId())){ + if(eventSender!=null) { + List teachers = courseTeacherDao.findList(FieldFilters.eq("courseId", id)); + if(teachers.size()>0) { + String authorIds=""; + for(CourseTeacher cteacher:teachers) { + if(authorIds.equals("")) { + authorIds+=cteacher.getTeacherId(); + }else { + authorIds+="|"+cteacher.getTeacherId(); + } + } + String txt="管理删除课程"; + eventSender.send(txt,"CourseDelete", "管理删除课程", c.getId(), "1", c.getName(), aid, name,"authors:"+authorIds); + } + }else { + log.error("未配置事件消息发送的实现"); + } + } }else { //彻底删除,课件设置为无课程状态 courseDao.setDeleted(id); @@ -834,12 +848,23 @@ public class CourseServiceImpl implements ICourseService { //发布到全文检索中 Course c=courseDao.get(courseId); if(fullTextSearch!=null) { - this.fullTextPublish(c); } //同时添加发布事件,这里的创建人需要修改为教师 if(eventSender!=null) { - eventSender.send("发布课程","PublishCourse", "发布课程【"+c.getName()+"】", c.getId(), "1", c.getName(), c.getSysCreateAid(), c.getSysCreateBy(),""); + List teachers = courseTeacherDao.findList(FieldFilters.eq("courseId", courseId)); + if(teachers.size()>0) { + String authorIds=""; + for(CourseTeacher cteacher:teachers) { + if(authorIds.equals("")) { + authorIds+=cteacher.getTeacherId(); + }else { + authorIds+="|"+cteacher.getTeacherId(); + } + } + eventSender.send("发布课程","PublishCourse", "发布课程【"+c.getName()+"】", c.getId(), "1", c.getName(), aid,name,"authors:"+authorIds); + } + }else { log.error("未配置事件消息发送的实现"); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/stat/EventDataSender.java b/servers/boe-server-all/src/main/java/com/xboe/stat/EventDataSender.java index 1882b8a7..3407d50a 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/stat/EventDataSender.java +++ b/servers/boe-server-all/src/main/java/com/xboe/stat/EventDataSender.java @@ -35,7 +35,7 @@ public class EventDataSender implements IEventDataSender{ @Override public void send(String title, String eventKey, String content, String objId, String objType, String objInfo, - String aid, String aname,String author) { + String aid, String aname,String parameters) { String statBaseUrl=SysConstant.getConfigValue("xboe.stat.base.url"); if(StringUtils.isBlank(statBaseUrl)) { log.error("发送事件失败:未配置【xboe.stat.base.url】的值"); @@ -58,7 +58,7 @@ public class EventDataSender implements IEventDataSender{ params.put("objInfo", objInfo); params.put("aid", aid); params.put("aname", aname); - params.put("parameters",""); + params.put("parameters",parameters); String token = TokenProxy.getToken(request); //最后采用异常发送,不影响当前进程