chenjiahe
2022-08-18 5ed8aa196eda2e6be4ad8cc632693ec16c8565a6
整改
8个文件已修改
3个文件已删除
7个文件已添加
453 ■■■■■ 已修改文件
phi-sms-feign/src/main/java/com/hz/sms/dto/MpMessageDto.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/MpTemplateMsg.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/ResponsesSendMessage.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/ResponsesWxSendMpDto.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/SmsGeneralSendDto.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/TemplateMessageDto.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/TemplateMsgDto.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/WeAppTemplateMsg.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/WeCatMessageDto.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/entity/Miniprogram.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/CorpMessageMqDto.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/MpMessageMqDto.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/SmsMassegeMqDto.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/WeCatMessageMqDto.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/feign/FWXSendService.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/platform/FCorpWxImmediatelyService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/platform/FSmsImmediatelyService.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/platform/FWxImmediatelyService.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phi-sms-feign/src/main/java/com/hz/sms/dto/MpMessageDto.java
New file
@@ -0,0 +1,41 @@
package com.hz.sms.dto;
import com.alibaba.fastjson.JSONObject;
import com.hx.util.StringUtils;
import lombok.Data;
/**小程序服务消息*/
@Data
public class MpMessageDto {
    /** 小程序appId - Y*/
    private String mpId;
    /** 所需下发的订阅模板id - Y*/
    private String templateId;
    /** 接口调用凭证,该参数为 URL 参数,非 Body 参数 - Y*/
    private String page;
    /** 接收者(用户)的 openid - Y*/
    private String touSer;
    /** 跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版 - Y*/
    private String minIpGramState;
    /** 进入小程序查看”的语言类型,支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN - Y*/
    private String lang = LANGUAGE_ZH_CN;
    /** 模板内容*/
    private JSONObject data;
    /** 发送模式 (0: 立即发送; 1:异步发送)*/
    private Integer sendModel = SEND_TYPE_ASYNCHRONOUS;
    /**发送类型-立即发送*/
    public static final int SEND_TYPE_IMMEDIATELY = 0;
    /**发送类型-异步发送*/
    public static final int SEND_TYPE_ASYNCHRONOUS = 1;
    /**语言 - 简体中文*/
    public static final String LANGUAGE_ZH_CN = "zh_CN";
    /**语言 - 英文*/
    public static final String LANGUAGE_EN_US = "en_US";
    /**语言 - 繁体中文(香港)*/
    public static final String LANGUAGE_ZH_HK = "zh_HK";
    /**语言 - 繁体中文(台湾)*/
    public static final String LANGUAGE_ZH_TW = "zh_TW";
}
phi-sms-feign/src/main/java/com/hz/sms/dto/MpTemplateMsg.java
@@ -1,20 +1,23 @@
package com.hz.sms.dto;
import com.hz.sms.dto.entity.Miniprogram;
import lombok.Data;
import java.util.Map;
/**
 * 参数用于下发小程序和公众号统一的服务消息 (参数实体),子模块
 */
@Data
public class MpTemplateMsg {
    //公众号appid,要求与小程序有绑定且同主体
    /**公众号appid,要求与小程序有绑定且同主体 - Y*/
    private String appId;
    //公众号模板id
    /**公众号模板id - Y*/
    private String templateId;
    //公众号模板消息所要跳转的url
    /**公众号模板消息所要跳转的url - N*/
    private String url;
    //公众号模板消息所要跳转的小程序,小程序的必须与公众号具有绑定关系
    private String minIProgram;
    //公众号模板消息的数据
    private Map<String, Keyword> data;;
    /**公众号模板消息所要跳转的小程序,小程序的必须与公众号具有绑定关系 - N*/
    private Miniprogram minIProgram;
    /**公众号模板消息的数据 - Y*/
    private Map<String, Keyword> data;
}
phi-sms-feign/src/main/java/com/hz/sms/dto/ResponsesSendMessage.java
File was deleted
phi-sms-feign/src/main/java/com/hz/sms/dto/ResponsesWxSendMpDto.java
File was deleted
phi-sms-feign/src/main/java/com/hz/sms/dto/SmsGeneralSendDto.java
@@ -1,56 +1,48 @@
package com.hz.sms.dto;
import com.hx.util.StringUtils;
import lombok.Data;
import java.text.SimpleDateFormat;
import java.util.Date;
@Data
public class SmsGeneralSendDto {
    /**标识 (记录sms_general_item表数据的id)*/
    private String id;
    /**账号*/
    private String account;
    /**密码*/
    private String password;
    /**签名*/
    private String sign;
    /**定时短信时间,格式为yyyyMMddHHmm,值小于或等于当前时间则立即发送,默认立即发送*/
    private String timestamp;
    /**短信内容*/
    /**短信类型 - Y*/
    private Integer smsType;
    /**短信内容 - Y*/
    private String msg;
    /**手机号码*/
    /**接收人名称 - N*/
    private String receiveMan;
    /**手机号码 - Y*/
    private String phone;
    /**定时发送短信时间*/
    private String sendTime;
    /**定时发送短信时间,值小于或等于当前时间则立即发送,默认立即发送:格式yyyy-MM-dd HH:mm:dd*/
    private Date sendTime;
    /**如需状态报告则传true*/
    private String report;
    /**下发短信号码扩展码*/
    /**下发短信号码扩展码 - N*/
    private String extend;
    /**该条短信在您业务系统内的ID*/
    /**该条短信在您业务系统内的ID,可不填 - N*/
    private String uid;
    /**短信类型*/
    private Integer smsType;
    /** 发送模式 (0: 立即发送; 1:异步发送)*/
    private Integer sendModel;
    /** 发送模式 (0: 立即发送; 1:异步发送,默认1) - Y*/
    private Integer sendModel = SEND_TYPE_ASYNCHRONOUS;
    /**短信类型-短信验证码*/
    public static final int SMS_TYPE_VERIFICATION = 0;
    /**短信类型-通知短信*/
    public static final int SMS_TYPE_NOTICE = 1;
    /**短信类型-营销短信*/
    public static final int SMS_TYPE_MARKETING= 2;
    /**发送类型-立即发送*/
    public static final int SEND_TYPE_IMMEDIATELY = 0;
    /**发送类型-异步发送*/
    public static final int SEND_TYPE_ASYNCHRONOUS = 1;
    /**数字0*/
    public static final int NUMBER_0 = 0;
    /**数字1*/
    public static final int NUMBER_1 = 1;
    public Date getDateSendTime(){
        try {
            Date dateSendTime = new SimpleDateFormat("yyyyMMddHHmm").parse(sendTime);
            return dateSendTime;
        }catch (Exception e){
            return null;
        }
    }
    public String getReport() {
        if (!StringUtils.isEmpty(report) && !"true".equals(report)){
            return null;
        }
        return report;
    }
}
phi-sms-feign/src/main/java/com/hz/sms/dto/TemplateMessageDto.java
@@ -6,57 +6,44 @@
@Data
public class TemplateMessageDto {
    /** 企业微信id*/
    /** 企业微信id - Y*/
    private String corpId;
    /** 关联小程序id*/
    /** 关联小程序id - Y*/
    private String appId;
    /** 标识 (记录corp_wx_application表数据的id) (不用传)*/
    private String id;
    /** 成员ID列表(消息接收者,多个接收者用‘|’分隔,最多支持1000个) */
    /** 成员ID列表(消息接收者,多个接收者用‘|’分隔,最多支持1000个) - Y*/
    private String touSer;
    /** 部门ID列表,多个接收者用‘|’分隔,最多支持100个。 */
    /** 部门ID列表,多个接收者用‘|’分隔,最多支持100个。- O */
    private String toParty;
    /** 标签ID列表,多个接收者用‘|’分隔,最多支持100个。 */
    /** 标签ID列表,多个接收者用‘|’分隔,最多支持100个。- O */
    private String toTag;
    /** 消息类型 ,此时固定为:miniprogram_notice */
    private String msgType;
    /** 参数内容 */
    /** 消息类型 ,此时固定为:miniprogram_notice - Y*/
    private String msgType = "miniprogram_notice";
    /** 参数内容  - Y*/
    private TemplateMsgDto minIProgramNotice;
    /** 发送模式 (0: 立即发送; 1:异步发送,默认1) - Y*/
    private Integer sendModel  = SEND_TYPE_ASYNCHRONOUS;
    /** 表示是否开启id转译,0表示否,1表示是,默认0 */
    private Integer enableIdTrans;
    /** 表示是否开启重复消息检查,0表示否,1表示是,默认0 */
    private Integer enableDuplicateCheck;
    /** 表示是否重复消息检查的时间间隔,默认1800s,最大不超过4小时 */
    private Integer duplicateCheckInterval;
    /** 发送模式 (0: 立即发送; 1:异步发送)*/
    private Integer sendModel;
    /** 表示是否开启id转译,0表示否,1表示是,默认0 - N*/
    private Integer enableIdTrans = NUMBER_0;
    /** 表示是否开启重复消息检查,0表示否,1表示是,默认0 - N*/
    private Integer enableDuplicateCheck = NUMBER_0;
    /** 表示是否重复消息检查的时间间隔,默认1800s,最大不超过4小时 - N*/
    private Integer duplicateCheckInterval = REPEAT_TIME_SECOND;
    public String getMsgType() {
        if (!StringUtils.isEmpty(msgType) && !"miniprogram_notice".equals(msgType)){
            return null;
        }
        return msgType;
    }
    public Integer getEnable_id_trans() {
        if (ObjectUtils.isEmpty(enableIdTrans)){
            return null;
        }
        return enableIdTrans;
    }
    /**数字0*/
    public static final int NUMBER_0 = 0;
    /**数字1*/
    public static final int NUMBER_1 = 1;
    public Integer getEnable_duplicate_check() {
        if (ObjectUtils.isEmpty(enableDuplicateCheck)){
            return null;
        }
        return enableDuplicateCheck;
    }
    /**发送类型-立即发送*/
    public static final int SEND_TYPE_IMMEDIATELY = 0;
    /**发送类型-异步发送*/
    public static final int SEND_TYPE_ASYNCHRONOUS = 1;
    public Integer getDuplicate_check_interval() {
        if (ObjectUtils.isEmpty(duplicateCheckInterval)){
            return null;
        }
        return duplicateCheckInterval;
    }
    /**重复消息检查的时间间隔 - 秒*/
    public static final int REPEAT_TIME_SECOND = 1800;
}
phi-sms-feign/src/main/java/com/hz/sms/dto/TemplateMsgDto.java
@@ -4,19 +4,22 @@
import java.util.List;
public class TemplateMsgDto {
    /** 小程序appid,必须是与当前应用关联的小程序 */
    /** 小程序appid,必须是与当前应用关联的小程序 - Y*/
    private String appId;
    /** 点击消息卡片后的小程序页面,最长1024个字节,仅限本小程序内的页面。该字段不填则消息点击后不跳转。 */
    private String page;
    /** 消息标题,长度限制4-12个汉字(支持id转译)*/
    /** 消息标题,长度限制4-12个汉字(支持id转译)- Y*/
    private String title;
    /** 消息描述,长度限制4-12个汉字(支持id转译)*/
    /** 消息描述,长度限制4-12个汉字(支持id转译)- Y*/
    private String description;
    /** 是否放大第一个content_item*/
    private boolean emphasisFirstItem;
    /** 是否放大第一个content_item,默认false - N*/
    private boolean emphasisFirstItem = BOOLEAN_FALSE;
    /** 消息内容键值对,最多允许10个item*/
    private List<ContentItemDto> contentItem;
    public static final boolean BOOLEAN_FALSE = false;
    public static final boolean BOOLEAN_TRUE = false;
    public String getAppId() {
        return appId;
    }
phi-sms-feign/src/main/java/com/hz/sms/dto/WeAppTemplateMsg.java
File was deleted
phi-sms-feign/src/main/java/com/hz/sms/dto/WeCatMessageDto.java
New file
@@ -0,0 +1,26 @@
package com.hz.sms.dto;
import lombok.Data;
/**
 * 参数用于下发小程序和公众号统一的服务消息 (参数实体)
 */
@Data
public class WeCatMessageDto {
    /**公众号 appId*/
    private String appId;
    /**用户openid,可以是小程序的openid,也可以是mp_template_msg.appid对应的公众号的openid - Y*/
    private String touSer;
    /**公众号模板消息相关的信息,可以参考公众号模板消息接口;有此节点并且没有weapp_template_msg节点时,发送公众号模板消息 - Y*/
    private MpTemplateMsg mpTemplateMsg;
    /**发送模式 (0: 立即发送; 1:异步发送,默认1) - Y*/
    private Integer sendModel = SEND_TYPE_ASYNCHRONOUS;
    /**发送类型-立即发送*/
    public static final int SEND_TYPE_IMMEDIATELY = 0;
    /**发送类型-异步发送*/
    public static final int SEND_TYPE_ASYNCHRONOUS = 1;
}
phi-sms-feign/src/main/java/com/hz/sms/dto/entity/Miniprogram.java
New file
@@ -0,0 +1,17 @@
package com.hz.sms.dto.entity;
import com.hz.sms.dto.TemplateMessageDto;
import lombok.Data;
/**小程序统一消息-公众号子数据体
 *
 */
@Data
public class Miniprogram {
    /** 小程序appId */
    private String appId;
    /**小程序跳转页面*/
    private String pagepath;
}
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/CorpMessageMqDto.java
New file
@@ -0,0 +1,16 @@
package com.hz.sms.dto.mq;
import com.hz.sms.dto.TemplateMessageDto;
import lombok.Data;
@Data
public class CorpMessageMqDto {
    /** 消息标识 */
    private String idCode;
    /**请求平台appId*/
    private String platAppId;
    /**发送消息体*/
    private TemplateMessageDto templateMessageDto;
}
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/MpMessageMqDto.java
New file
@@ -0,0 +1,18 @@
package com.hz.sms.dto.mq;
import com.alibaba.fastjson.JSONObject;
import com.hx.util.StringUtils;
import com.hz.sms.dto.MpMessageDto;
import lombok.Data;
/**小程序服务消息*/
@Data
public class MpMessageMqDto {
    /** 消息标识 */
    private String idCode;
    /**请求平台appId*/
    private String platAppId;
    /**小程序订阅消息实体*/
    private MpMessageDto mpMessageDto;
}
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/SmsMassegeMqDto.java
New file
@@ -0,0 +1,18 @@
package com.hz.sms.dto.mq;
import com.hz.sms.dto.SmsGeneralSendDto;
import lombok.Data;
@Data
public class SmsMassegeMqDto {
    /** 消息标识 */
    private String idCode;
    /**请求平台appId*/
    private String platAppId;
    /**发送消息体*/
    private SmsGeneralSendDto smsGeneralSendDto;
}
phi-sms-feign/src/main/java/com/hz/sms/dto/mq/WeCatMessageMqDto.java
New file
@@ -0,0 +1,21 @@
package com.hz.sms.dto.mq;
import com.hz.sms.dto.WeCatMessageDto;
import lombok.Data;
/**
 * 参数用于下发小程序和公众号统一的服务消息 (参数实体)
 */
@Data
public class WeCatMessageMqDto {
    /** 消息标识 */
    private String idCode;
    /**请求平台appId*/
    private String platAppId;
    /**发送消息体*/
    private WeCatMessageDto weCatMessageDto;
}
phi-sms-feign/src/main/java/com/hz/sms/feign/FWXSendService.java
@@ -2,8 +2,8 @@
import com.hx.resultTool.Result;
import com.hz.sms.dto.ResponsesSendMessage;
import com.hz.sms.dto.ResponsesWxSendMpDto;
import com.hz.sms.dto.WeCatMessageDto;
import com.hz.sms.dto.MpMessageDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -17,25 +17,25 @@
    /**
     * 微信小程序下发统一消息   (废除)
     * @param responsesSendMessage
     * @param weCatMessageDto
     * @return
     */
    @PostMapping(value = "/wx/send/applet/message")
    Result sendAppletMessage(@RequestBody ResponsesSendMessage responsesSendMessage);
    Result sendAppletMessage(@RequestBody WeCatMessageDto weCatMessageDto);
    /**
     * 微信公众号下发统一消息
     * @param responsesSendMessage
     * @param weCatMessageDto
     * @return
     */
    @PostMapping(value = "/wx/send/wechat/message")
    Result sendWeChatMessage(@RequestBody ResponsesSendMessage responsesSendMessage);
    Result sendWeChatMessage(@RequestBody WeCatMessageDto weCatMessageDto);
    /**
     *  微信小程序发送订阅消息
     * @param responsesWxSendMpDto
     * @param mpMessageDto
     * @return
     */
    @RequestMapping(value = "/wx/send/mp/subscribe/message")
    Result sendMpMessage(@RequestBody ResponsesWxSendMpDto responsesWxSendMpDto);
    Result sendMpMessage(@RequestBody MpMessageDto mpMessageDto);
}
phi-sms-feign/src/main/java/com/hz/sms/platform/FCorpWxImmediatelyService.java
@@ -2,6 +2,7 @@
import com.hx.resultTool.Result;
import com.hz.sms.dto.TemplateMessageDto;
import com.hz.sms.dto.mq.CorpMessageMqDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -14,10 +15,10 @@
    /**
     * 发送企业微信应用消息
     * @param templateMessageDto
     * @param corpMessageMqDto 消息体
     * @return
     */
    @PostMapping(value = "/corp-wx/send/application/message")
    Result sendNoticeSms(@RequestBody TemplateMessageDto templateMessageDto);
    Result sendNoticeSms(@RequestBody CorpMessageMqDto corpMessageMqDto);
}
phi-sms-feign/src/main/java/com/hz/sms/platform/FSmsImmediatelyService.java
@@ -2,6 +2,7 @@
import com.hx.resultTool.Result;
import com.hz.sms.dto.SmsGeneralSendDto;
import com.hz.sms.dto.mq.SmsMassegeMqDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -14,26 +15,26 @@
    /**
     * 发送短信验证码
     * @param smsGeneralSendDto
     * @param smsMassegeMqDto 消息体
     * @return
     */
    @PostMapping(value = "/sms/send/verification/code")
    Result sendVerificationCode(@RequestBody SmsGeneralSendDto smsGeneralSendDto);
    Result sendVerificationCode(@RequestBody SmsMassegeMqDto smsMassegeMqDto);
    /**
     * 发送通知短信
     * @param smsGeneralSendDto
     * @param smsMassegeMqDto
     * @return
     */
    @PostMapping(value = "/sms/send/notice")
    Result sendNoticeSms(@RequestBody SmsGeneralSendDto smsGeneralSendDto);
    Result sendNoticeSms(@RequestBody SmsMassegeMqDto smsMassegeMqDto);
    /**
     * 发送营销短信
     * @param smsGeneralSendDto
     * @param smsMassegeMqDto
     * @return
     */
    @PostMapping(value = "/sms/send/marketing")
    Result sendMarketingSend(@RequestBody SmsGeneralSendDto smsGeneralSendDto);
    Result sendMarketingSend(@RequestBody SmsMassegeMqDto smsMassegeMqDto);
}
phi-sms-feign/src/main/java/com/hz/sms/platform/FWxImmediatelyService.java
@@ -1,8 +1,8 @@
package com.hz.sms.platform;
import com.hx.resultTool.Result;
import com.hz.sms.dto.ResponsesSendMessage;
import com.hz.sms.dto.ResponsesWxSendMpDto;
import com.hz.sms.dto.mq.MpMessageMqDto;
import com.hz.sms.dto.mq.WeCatMessageMqDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -16,18 +16,18 @@
    /**
     * 微信公众号下发统一消息
     * @param responsesSendMessage
     * @param weCatMessageMqDto 实体
     * @return
     */
    @PostMapping(value = "/wx/send/wechat/issue/message")
    Result sendWeChatMessage(@RequestBody ResponsesSendMessage responsesSendMessage);
    Result sendWeChatMessage(@RequestBody WeCatMessageMqDto weCatMessageMqDto);
    /**
     *  微信小程序发送订阅消息
     * @param responsesWxSendMpDto
     * @param mpMessageMqDto
     * @return
     */
    @RequestMapping(value = "/wx/send/mp/message")
    Result sendMpMessage(@RequestBody ResponsesWxSendMpDto responsesWxSendMpDto);
    Result sendMpMessage(@RequestBody MpMessageMqDto mpMessageMqDto);
}