问题知识库--发布发消息
This commit is contained in:
+78
-8
@@ -1,29 +1,43 @@
|
|||||||
package com.jero.modules.problemKnowledgeBase.service.impl;
|
package com.jero.modules.problemKnowledgeBase.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.jero.common.constant.enums.MessageTypeEnum;
|
||||||
import com.jero.common.system.query.QueryGenerator;
|
import com.jero.common.system.query.QueryGenerator;
|
||||||
|
import com.jero.common.system.vo.LoginUser;
|
||||||
|
import com.jero.modules.document.service.impl.BussDocumentLibraryEOServiceImpl;
|
||||||
|
import com.jero.modules.feishu.service.IFeishuService;
|
||||||
|
import com.jero.modules.feishu.vo.FeishuMsgVo;
|
||||||
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseCommentEO;
|
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseCommentEO;
|
||||||
|
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseEO;
|
||||||
import com.jero.modules.problemKnowledgeBase.mapper.ProblemKnowledgeBaseCommentEOMapper;
|
import com.jero.modules.problemKnowledgeBase.mapper.ProblemKnowledgeBaseCommentEOMapper;
|
||||||
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseCommentEOService;
|
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseCommentEOService;
|
||||||
|
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseEOService;
|
||||||
import com.jero.modules.problemKnowledgeBase.vo.ProblemKnowledgeBaseCommentVO;
|
import com.jero.modules.problemKnowledgeBase.vo.ProblemKnowledgeBaseCommentVO;
|
||||||
import com.jero.modules.project.entity.ProblemKnowledgeBaseReplyEO;
|
import com.jero.modules.project.entity.ProblemKnowledgeBaseReplyEO;
|
||||||
import com.jero.modules.project.service.IProblemKnowledgeBaseReplyEOService;
|
import com.jero.modules.project.service.IProblemKnowledgeBaseReplyEOService;
|
||||||
|
import com.jero.modules.system.entity.SysAnnouncement;
|
||||||
|
import com.jero.modules.system.entity.SysUser;
|
||||||
|
import com.jero.modules.system.service.ISysAnnouncementService;
|
||||||
|
import com.jero.modules.system.service.ISysUserService;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
||||||
import org.springframework.transaction.annotation.Propagation;
|
import org.springframework.transaction.annotation.Propagation;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 问题知识库评论表
|
* @Description: 问题知识库评论表
|
||||||
@@ -37,6 +51,24 @@ public class ProblemKnowledgeBaseCommentEOServiceImpl extends ServiceImpl<Proble
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private IProblemKnowledgeBaseReplyEOService problemKnowledgeBaseReplyEOService;
|
private IProblemKnowledgeBaseReplyEOService problemKnowledgeBaseReplyEOService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BussDocumentLibraryEOServiceImpl bussDocumentLibraryEOService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysUserService sysUserService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IFeishuService iFeishuService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysAnnouncementService sysAnnouncementService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IProblemKnowledgeBaseEOService problemKnowledgeBaseEOService;
|
||||||
|
|
||||||
|
@Value(value = "${jero.backUrl}")
|
||||||
|
private String backUrl;
|
||||||
/**
|
/**
|
||||||
* 保存
|
* 保存
|
||||||
*
|
*
|
||||||
@@ -49,7 +81,45 @@ public class ProblemKnowledgeBaseCommentEOServiceImpl extends ServiceImpl<Proble
|
|||||||
problemKnowledgeBaseCommentEO.setCreateTime(now);
|
problemKnowledgeBaseCommentEO.setCreateTime(now);
|
||||||
problemKnowledgeBaseCommentEO.setUpdateTime(now);
|
problemKnowledgeBaseCommentEO.setUpdateTime(now);
|
||||||
save(problemKnowledgeBaseCommentEO);
|
save(problemKnowledgeBaseCommentEO);
|
||||||
}
|
|
||||||
|
ProblemKnowledgeBaseEO problemKnowledgeBaseEO = problemKnowledgeBaseEOService.getById(problemKnowledgeBaseCommentEO.getProblemKnowledgeBaseId());
|
||||||
|
|
||||||
|
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
|
String createBy = problemKnowledgeBaseEO.getCreateBy();
|
||||||
|
//自己回复的时候不发消息
|
||||||
|
// if(!loginUser.getUsername().equals(createBy)){
|
||||||
|
SysUser sysUser = sysUserService.getUserByName(createBy);
|
||||||
|
String contentCNNo = "您发布的问题知识库信息"+problemKnowledgeBaseEO.getTitle()+"有新评论,请注意查看.";
|
||||||
|
String contentENNo = "In the Q&A knowledge "+problemKnowledgeBaseEO.getTitle()+" you created, a new comment has been added. Please be reminded to check it out.";
|
||||||
|
|
||||||
|
//发送消息(站内和飞书)
|
||||||
|
//您发布的问题知识库信息XXXXXXXX有新评论,请注意查看。
|
||||||
|
//In the Q&A knowledge xxxxxxxx you created, a new comment has been added. Please be reminded to check it out.
|
||||||
|
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(Arrays.asList(sysUser.getId().split(",")),
|
||||||
|
"msgTitle",
|
||||||
|
contentENNo,
|
||||||
|
contentENNo,
|
||||||
|
MessageTypeEnum.PUSH.getValue(),
|
||||||
|
MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(),
|
||||||
|
contentCNNo,
|
||||||
|
contentCNNo);
|
||||||
|
this.sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
|
bussDocumentLibraryEOService.sendWebsocket(com.jero.modules.system.util.StringUtils.join(sysUser.getThirdId(), ","), sysUser.getThirdId());
|
||||||
|
|
||||||
|
String href = backUrl +"/problemknowledgeBase";
|
||||||
|
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
|
||||||
|
feishuMsgVo.setTitle(MessageTypeEnum.PUSH.getNameCn()+"/"+MessageTypeEnum.PUSH.getName());
|
||||||
|
feishuMsgVo.setUrl(href);
|
||||||
|
feishuMsgVo.setContentEn(contentENNo);
|
||||||
|
feishuMsgVo.setContent(contentCNNo);
|
||||||
|
|
||||||
|
try {
|
||||||
|
this.iFeishuService.sendCardMsgTerritory(sysUser.getThirdId().split(","), feishuMsgVo);
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新
|
* 更新
|
||||||
|
|||||||
Reference in New Issue
Block a user