Browse Source

Merge branch 'fu-dev' of uskycloud/usky-modules into master

gez 2 weeks ago
parent
commit
ba924225b5

+ 12 - 10
service-pm/service-pm-biz/src/main/java/com/usky/pm/service/config/DingTalkAndMessage.java

@@ -23,6 +23,7 @@ import com.usky.pm.mapper.MceMbuserMapper;
 import com.usky.pm.mapper.PmWorkReportMapper;
 import com.usky.pm.mapper.SysUserMapper;
 import com.usky.system.RemoteMceService;
+import com.usky.system.domain.MceRequestVO;
 import com.usky.system.domain.SysUser;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -311,25 +312,26 @@ public class DingTalkAndMessage {
                             .collect(Collectors.toList()))
                     .orElse(Collections.emptyList());
         } else {
-            throw new BusinessException( newReport.getCreateBy() + "的报告:" + newReport.getId() + ",抄送人为空,无需发送消息中心");
+            throw new BusinessException(newReport.getCreateBy() + "的报告:" + newReport.getId() + ",抄送人为空,无需发送消息中心");
         }
         LambdaQueryWrapper<SysUser> nickNameQuery = Wrappers.lambdaQuery();
         nickNameQuery.select(SysUser::getNickName)
                 .eq(SysUser::getUserId, submitterId);
         SysUser nickName = sysUserMapper.selectOne(nickNameQuery);
-        JSONObject jsonObject = new JSONObject();
-        jsonObject.put("infoTitle", INFO_TITLE);
-        jsonObject.put("infoContent", nickName.getNickName() + INFO_CONTENT);
-        jsonObject.put("infoType", INFO_TYPE);
-        jsonObject.put("id", newReport.getId());
-        jsonObject.put("infoTypeName", INFO_TITLE);
-        jsonObject.put("userName", newReport.getCreateBy());
+
+        MceRequestVO mceRequestVO = new MceRequestVO();
+        mceRequestVO.setInfoTitle(INFO_TITLE);
+        mceRequestVO.setInfoContent(nickName.getNickName() + INFO_CONTENT);
+        mceRequestVO.setInfoType(String.valueOf(INFO_TYPE));
+        mceRequestVO.setId(newReport.getId());
+        mceRequestVO.setInfoTypeName(INFO_TITLE);
+        mceRequestVO.setUserName(nickName.getNickName());
         if (!userId.isEmpty()) {
-            jsonObject.put("userIds", userId);
+            mceRequestVO.setUserIds(userId);
         }
         try {
             // 推送消息中心
-            ApiResult<Void> voidApiResult = remoteMceService.addMce(jsonObject.toString());
+            ApiResult<Void> voidApiResult = remoteMceService.addMceReceive(mceRequestVO);
 
             if (voidApiResult.isSuccess()) {
                 log.info("报告消息发送成功!");

+ 21 - 11
service-pm/service-pm-biz/src/main/java/com/usky/pm/service/impl/PmWorkReportServiceImpl.java

@@ -3,6 +3,7 @@ package com.usky.pm.service.impl;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.common.security.utils.SecurityUtils;
@@ -21,6 +22,7 @@ import com.usky.pm.service.config.DingTalkAndMessage;
 import com.usky.pm.service.vo.PmProjectTotalWorkTimeVo;
 import com.usky.pm.service.vo.PmProjectWorkTimeVo;
 import com.usky.system.RemoteMceService;
+import com.usky.system.domain.MceRequestVO;
 import com.usky.system.domain.SysUser;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -742,6 +744,13 @@ public class PmWorkReportServiceImpl extends AbstractCrudService<PmWorkReportMap
         return timedReports;
     }
 
+    /**
+     * @description: 报告提交提醒
+     * @author: fu
+     * @date: 2024/8/7 20:17
+     * @param: []
+     * @return: void
+     **/
     @Async
     @Override
     public void reportSubmissionReminder() {
@@ -764,18 +773,19 @@ public class PmWorkReportServiceImpl extends AbstractCrudService<PmWorkReportMap
                 .notIn(!userIds.isEmpty(), SysUser::getUserId, userIds);
         userIds = sysUserMapper.selectList(userQueryWrapper).stream().map(SysUser::getUserId).collect(Collectors.toList());
 
-        JSONObject jsonObject = new JSONObject();
-        jsonObject.put("infoTitle", INFO_TITLE);
-        jsonObject.put("infoContent", INFO_CONTENT);
-        jsonObject.put("infoType", INFO_TYPE);
-        jsonObject.put("id", 0);
-        jsonObject.put("infoTypeName", INFO_TITLE);
-        jsonObject.put("userName", "报告提醒通知");
-        jsonObject.put("userIds", userIds);
-
-        // 推送消息中心
+        MceRequestVO mceRequestVO = new MceRequestVO();
+        mceRequestVO.setInfoTitle(INFO_TITLE);
+        mceRequestVO.setInfoContent(INFO_CONTENT);
+        mceRequestVO.setInfoType(String.valueOf(INFO_TYPE));
+        mceRequestVO.setId(0);
+        mceRequestVO.setInfoTypeName(INFO_TITLE);
+        mceRequestVO.setUserName("报告提醒通知");
+        if (!userIds.isEmpty()) {
+            mceRequestVO.setUserIds(userIds);
+        }
         try {
-            remoteMceService.addMce(jsonObject.toString());
+            // 推送消息中心
+            remoteMceService.addMceReceive(mceRequestVO);
         } catch (Exception e) {
             log.error("报告提醒通知推送消息中心异常" + e);
         }