před 1 rokem
rodič
revize
fb70189976

+ 1 - 0
platform-rest/src/main/java/com/platform/rest/controller/sbUnused/SbUnusedController.java

@@ -48,6 +48,7 @@ public class SbUnusedController {
     return new R<>(sbUnusedService.getModelById2(id));
   }
 
+
   /**
    * 新增记录
    *

+ 1 - 1
platform-service/src/main/java/com/platform/service/sbUnused/impl/SbUnusedServiceImpl.java

@@ -237,7 +237,7 @@ public class SbUnusedServiceImpl extends BaseServiceImpl<SbUnusedMapper, SbUnuse
             String[] values = new String[]{"你有一条闲置审核任务!",unused.getApplyUserId(),DateUtils.dateToString(unused.getCreatedTime(),DateUtils.PATTERN_YMD_HMS),"他人处理申请"};
             List<String> openIds = new ArrayList<>();
             openIds.add(sysUser.getWxOpenId());
-            SendMessageUtils.sendWechatNew(openIds,detailUrl,values,"sVvemcNG23zivFIW5ScVVh4VcCWOSlQfhRLo7104F_o",1);
+            SendMessageUtils.sendWechatNew(openIds,detailUrl,values,"sVvemcNG23zivFIW5ScVVh4VcCWOSlQfhRLo7104F_o");
         }else if (dto.getStatus()==SbUnusedStatusEnum.success.getValue()){
             addRecord(userInfo,unused,"完成",dto.getAdvice());
             //何经理审核通过

+ 17 - 0
platform-service/src/main/java/com/platform/service/util/SendMessageUtils.java

@@ -69,6 +69,23 @@ public class SendMessageUtils {
         }
     }
 
+    public static void sendWechatNew(List<String> openIds,String detailUrl,String[] values,String wechatTemplateId){
+        if (CollectionUtil.isNotEmpty(openIds)) {
+            String mobileDomain = ConfigCache.getLabelByValueAllowNull(SysConfigEnum.SYSTEM_DOMAIN_MOBILE.name());
+            if (StringUtils.isBlank(mobileDomain)) {
+                throw new BusinessException("请先设置系统域名地址,系统管理-》系统参数配置-》SYSTEM_DOMAIN_MOBILE");
+            }
+            if (!mobileDomain.endsWith("/")) {
+                mobileDomain = mobileDomain + "/";
+            }
+            detailUrl = mobileDomain + detailUrl;
+            for (String openId : openIds) {
+                log.info("开始发送微信通知,用户openId: " + openId);
+                WeChatMessageUtil.sendWechatMessage(openId, detailUrl, values,wechatTemplateId);
+            }
+        }
+    }
+
     public static void sendWechatAudit(List<String> openIds,String detailUrl,String[] values,String wechatTemplateId){
         if (CollectionUtil.isNotEmpty(openIds)) {
             String mobileDomain = ConfigCache.getLabelByValueAllowNull(SysConfigEnum.SYSTEM_DOMAIN_MOBILE.name());

+ 19 - 0
platform-service/src/main/java/com/platform/service/wechat/model/request/WechatTemplateRequestBuilder.java

@@ -34,6 +34,8 @@ public class WechatTemplateRequestBuilder {
 	 * 维修提醒模板keys 模板ID:R4Uo0XAbY3yoBKzUkuQ5MA45ekwlHlnbOih3XeVo2Rg  维修完成提醒
 	 */
 	public static String[] TEMPLATE_REPAIR_COMPLETE_KEYS_REPAIR = new String[]{"first", "keyword1", "keyword2","keyword3", "keyword4","keyword5", "remark"};
+
+	public static String[] TEMPLATE_SBUNUSED_COMPLETE_KEYS = new String[]{"first", "keyword1", "keyword2","keyword3"};
     /**
 	 * 审批提醒模板keys 模板ID:njA6sdMf0EPi1k8iruwe2aw0miH6q-0AvB_GCEyzJpE  审批提醒
 	 */
@@ -301,6 +303,23 @@ public class WechatTemplateRequestBuilder {
         return wechatTemplateRequest;
     }
 
+	public static WechatTemplateRequest getRepairRequest(String url, String templateId, String openId, String[] values, String[] colors) {
+		WechatTemplateRequest wechatTemplateRequest = new WechatTemplateRequest();
+		wechatTemplateRequest.setUrl(url);
+		wechatTemplateRequest.setTemplate_id(templateId);
+		wechatTemplateRequest.setTouser(openId);
+		// 填充模版数据
+		Map<String, WechatTemplateRequestData> m = new HashMap<String, WechatTemplateRequestData>();
+		for (int i = 0; i < TEMPLATE_SBUNUSED_COMPLETE_KEYS.length; i++) {
+			WechatTemplateRequestData data = new WechatTemplateRequestData();
+			data.setValue(values[i]);
+			data.setColor(colors[i]);
+			m.put(TEMPLATE_SBUNUSED_COMPLETE_KEYS[i], data);
+		}
+		wechatTemplateRequest.setData(m);
+		return wechatTemplateRequest;
+	}
+
 	public static WechatTemplateRequest getAuditRequest(String url, String templateId, String openId, String[] values, String[] colors) {
 		WechatTemplateRequest wechatTemplateRequest = new WechatTemplateRequest();
 		wechatTemplateRequest.setUrl(url);

+ 15 - 0
platform-service/src/main/java/com/platform/service/wechat/util/WeChatMessageUtil.java

@@ -131,6 +131,21 @@ public class WeChatMessageUtil {
         }
     }
 
+    public static void sendWechatMessage(String openId, String url, String[] values,String wechatTemplateId) {
+        try {
+            if(StringUtils.isBlank(url)){
+                throw new DeniedException("跳转详情url不能为空");
+            }
+            if (isSend() && StringUtils.isNotBlank(openId)) {
+                String[] colors = getColors(values.length);
+                WechatTemplateRequest request = WechatTemplateRequestBuilder.getRepairRequest(url, wechatTemplateId,openId, values, colors);
+                SpringContextHolder.publishEvent(new WechatEvent(request));
+            }
+        } catch (Exception e) {
+            log.error("发送微信消息失败", e);
+        }
+    }
+
     public static void sendAuditWechatMessage(String openId, String url, String[] values,String wechatTemplateId) {
         try {
             if(StringUtils.isBlank(url)){