liusheng
2024-07-29 75cb81f0b88f313857ea431b46b929bef95d7cc8
smartor/src/main/java/com/smartor/common/SendService.java
@@ -1,19 +1,27 @@
package com.smartor.common;
import com.aliyun.dysmsapi20170525.models.SendSmsResponseBody;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.smartor.domain.*;
import com.smartor.mapper.PatWildcardMapper;
import com.smartor.service.DingTalkService;
import com.smartor.service.WeChatService;
import com.smartor.service.impl.BaseSmsaccountServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
/**
 * 发送服务工具类
 */
@Slf4j
@Component
public class SendService {
    @Autowired
@@ -25,33 +33,57 @@
    @Autowired
    private PatWildcardMapper patWildcardMapper;
    @Autowired
    private WeChatService weChatService;
    public Boolean sendMsg(SendMagParam sendMagParam) {
        // 1,多媒体 2,纸质  3,电话  4,短信  5.微信公众号 6.微信小程序 7.支付宝  8.智能小程序  9.钉钉
        switch (sendMagParam.getType()) {
            case ("多媒体"):
            case ("1"):
            case ("纸质"):
            case ("2"):
            case ("电话"):
            case ("3"):
            case ("短信"):
            case ("4"):
//                BaseSmsRequest baseSmsRequest = new BaseSmsRequest();
//                baseSmsRequest.setPhoneNumber(sendMagParam.getPhone());
//                baseSmsRequest.setTemplateCode("SMS_461860582");
//                SendSmsResponseBody sendSmsResponseBody = baseSmsaccountService.sendMsg(baseSmsRequest);
                //下面的短信发送,仅测试
                BaseSmsRequest baseSmsRequest = new BaseSmsRequest();
                baseSmsRequest.setPhoneNumber(sendMagParam.getPhone());
                baseSmsRequest.setTemplateCode("SMS_461860582");
                baseSmsRequest.setPhoneNumber("19157806063");
                baseSmsRequest.setTemplateCode("SMS_279456451");
                baseSmsRequest.setTemplateParam("{'code':'58965'}");
                SendSmsResponseBody sendSmsResponseBody = baseSmsaccountService.sendMsg(baseSmsRequest);
                log.error(sendSmsResponseBody.message);
                if (sendSmsResponseBody.getCode().equals("OK")) {
                    return true;
                }
                return false;
            case ("微信公众号"):
            case ("5"):
                WeChatSendVo weChatSendVo = new WeChatSendVo();
                weChatSendVo.setUrl(sendMagParam.getUrl());
                weChatSendVo.setTemplateId(sendMagParam.getTmpCode());
                ObjectMapper objectMapper = new ObjectMapper();
                Map map = null;
                try {
                    map = objectMapper.readValue(sendMagParam.getContent(), Map.class);
                } catch (JsonProcessingException e) {
                    e.printStackTrace();
                }
                weChatSendVo.setContent(map);
                weChatSendVo.setOpenid(sendMagParam.getOpenid());
                Boolean aBoolean1 = weChatService.sendMessageToFollowers(weChatSendVo);
                return aBoolean1;
            case ("6"):
            case ("微信小程序"):
            case ("7"):
            case ("支付宝"):
            case ("8"):
            case ("智能小程序"):
            case ("钉钉"):
            case ("9"):
                DingTalkReqVo dingTalkReqVo = new DingTalkReqVo();
                Boolean aBoolean = dingTalkService.sendNotification(dingTalkReqVo);
                if (aBoolean) {