Browse Source

工作通知内容修改

master
luogw 1 month ago
parent
commit
8693009bd9
  1. 1
      src/main/java/com/project/appeal/domain/dto/AppealDTO.java
  2. 4
      src/main/java/com/project/appeal/domain/service/Impl/CheckAppealDomainServiceImpl.java
  3. 1
      src/main/java/com/project/appeal/domain/service/Impl/SaveAppealDomainServiceImpl.java
  4. 33
      src/main/java/com/project/ding/utils/DingUtil.java

1
src/main/java/com/project/appeal/domain/dto/AppealDTO.java

@ -28,6 +28,7 @@ public class AppealDTO extends BaseDTO {
private String subLineName;//关联子产品线 private String subLineName;//关联子产品线
private Long questionId; private Long questionId;
private String questionContent; //题干 private String questionContent; //题干
private Integer questionSort; //题号
private String kpContentsStr; //知识点文本 private String kpContentsStr; //知识点文本
private List<Long> kpIdList; private List<Long> kpIdList;
private String rightAnswer;//正确答案 private String rightAnswer;//正确答案

4
src/main/java/com/project/appeal/domain/service/Impl/CheckAppealDomainServiceImpl.java

@ -37,7 +37,7 @@ public class CheckAppealDomainServiceImpl implements CheckAppealDomainService {
if (ObjectUtil.isEmpty(appealDTO.getId()) && StringUtils.isBlank(appealDTO.getRemark())){ if (ObjectUtil.isEmpty(appealDTO.getId()) && StringUtils.isBlank(appealDTO.getRemark())){
throw new MissingParameterException("缺少申诉理由"); throw new MissingParameterException("缺少申诉理由");
} }
if (appealDTO.getRemark().length() > 500){ if (ObjectUtil.isEmpty(appealDTO.getId()) && appealDTO.getRemark().length() > 500){
throw new MissingParameterException("申诉理由不能超过500字符"); throw new MissingParameterException("申诉理由不能超过500字符");
} }
@ -50,7 +50,7 @@ public class CheckAppealDomainServiceImpl implements CheckAppealDomainService {
if (!appealDTO.getStatus().equals(AppealStatusEnum.PENDING_REVIEW.getValue()) && StringUtils.isBlank(appealDTO.getReason())){ if (!appealDTO.getStatus().equals(AppealStatusEnum.PENDING_REVIEW.getValue()) && StringUtils.isBlank(appealDTO.getReason())){
throw new BusinessErrorException("缺少审批意见"); throw new BusinessErrorException("缺少审批意见");
} }
if (appealDTO.getReason().length() > 500){ if (!appealDTO.getStatus().equals(AppealStatusEnum.PENDING_REVIEW.getValue()) && appealDTO.getReason().length() > 500){
throw new MissingParameterException("审批意见不能超过500字符"); throw new MissingParameterException("审批意见不能超过500字符");
} }
//校验题目是否以申诉过 //校验题目是否以申诉过

1
src/main/java/com/project/appeal/domain/service/Impl/SaveAppealDomainServiceImpl.java

@ -90,6 +90,7 @@ public class SaveAppealDomainServiceImpl implements SaveAppealDomainService {
} }
appealDTO.setQuestionContent(questionSnapshotDTO.getQuestionContent()); appealDTO.setQuestionContent(questionSnapshotDTO.getQuestionContent());
appealDTO.setQuestionSort(index + 1);
if (appealDTO.getStatus().equals(AppealStatusEnum.PENDING_REVIEW.getValue())) { if (appealDTO.getStatus().equals(AppealStatusEnum.PENDING_REVIEW.getValue())) {
//更新申诉状态 //更新申诉状态

33
src/main/java/com/project/ding/utils/DingUtil.java

@ -269,35 +269,20 @@ public class DingUtil {
String nowTime = LocalDateTime.now().format(formatter); String nowTime = LocalDateTime.now().format(formatter);
boolean approved = appealDTO.getStatus() != null && appealDTO.getStatus() == 2; boolean approved = appealDTO.getStatus() != null && appealDTO.getStatus() == 2;
String resultLine = approved StringBuilder markdown = new StringBuilder();
? "- ✅ **审核通过**" markdown.append(String.format("### 【%s】中<font color=#64BCF2>第%d题</font>的申诉结果如下:\n\n" , "教育云平台知识考试",appealDTO.getQuestionSort()))
: "- ❌ **审核不通过**"; .append(String.format("处理结果:%s\n\n" ,approved ? "同意" : "不同意"))
String markdownText = String.format( .append(String.format("处理理由:%s" , appealDTO.getReason()));
"### AI考核-申诉审批完成\n\n" +
"#### 任务信息\n" +
"- 题目名称:%s\n" +
"- 申诉理由:%s\n\n" +
"#### 审批结果\n" +
"%s\n\n" +
"---\n" +
"- 📅 审批时间:%s\n" +
"- 👤 审批人:%s\n" +
"- 💬 审批意见:%s",
appealDTO.getQuestionContent(),
appealDTO.getRemark(),
resultLine,
nowTime,
appealDTO.getAppealUsername(),
appealDTO.getReason()
);
//发送工作通知 //发送工作通知
DtCorpConversationMessage corpConversationMessage = DtCorpConversationMessage.builder() DtCorpConversationMessage corpConversationMessage = DtCorpConversationMessage.builder()
.agentId(dtService.getDtConfigStorage().getAgentId()) .agentId(dtService.getDtConfigStorage().getAgentId())
.userIds(Lists.newArrayList(appealDTO.getUserId())) .userIds(Lists.newArrayList(appealDTO.getUserId()))
.msg(DtMessage.MARKDOWN() .msg(DtMessage.ACTIONCARD()
.content("AI考核-审批申诉结果") .title("产品知识考核")
.text(markdownText) .markdown(markdown.toString())
.singleTitle("查看详情")
.singleUrl("https://www.baidu.com/")
.build()) .build())
.build(); .build();

Loading…
Cancel
Save