ke
2024-07-19 08a962d2925baa255207fdf979e6fee794f1773b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
package cn.gistack.alerts.sms.service;
 
import cn.com.flaginfo.sdk.cmc.api.result.ComResult;
import cn.com.flaginfo.sdk.cmc.api.sms.dynsend.DynSMSSendDataResult;
import cn.com.flaginfo.sdk.cmc.api.sms.send.SMSSendRequest;
import cn.gistack.alerts.sms.entity.SmsRecord;
import cn.gistack.alerts.sms.entity.SmsRequest;
import cn.gistack.alerts.sms.entity.SmsResult;
import cn.gistack.alerts.sms.excel.SendRainSmsExcel;
import cn.gistack.alerts.sms.excel.SendSmsExcel;
import cn.gistack.alerts.sms.vo.SmsRequestTemplate;
import cn.gistack.alerts.sms.vo.SmsResponseVO;
 
import java.util.List;
import java.util.Map;
 
/**
 * 短信发送服务接口
 * @author zhongrj
 * @date 2023-05-30
 */
public interface SmsService {
 
    public  ComResult<DynSMSSendDataResult> testSend(String tempId,String [][] strss);
 
    /**
     * 发送 xx 变量模板短信
     * @param phoneNumbers 手机号集合
     * @param request 内容对象
     * @return
     */
    Object sendXXMsg(SMSSendRequest request,
                     List<String> phoneNumbers);
 
    /**
     * 发送 具名 变量模板短信 (告警定制)
     * @param smsRequestTemplate
     * @return
     */
    Map<String, Object> sendSignMsg(SmsRequestTemplate smsRequestTemplate);
 
    /**
     * 保存短信发送结果
     * @param code
     * @param msg
     * @param request
     * @param number
     * @return
     */
    SmsResult saveSendResult(Long alarmRuleId,String code,String msg, SMSSendRequest request, Integer number);
 
    /**
     * 短信发送记录保存
     * @param request
     * @param code
     * @param sendMsg
     * @param resultId
     * @return
     */
    SmsRecord saveSendRecord(SMSSendRequest request,String code, String sendMsg, Long resultId);
 
    /**
     * 发送降雨短信
     * @param params 发送对象
     * @return
     */
    Object sendSignRainMsg(Map<String, Object> params);
 
    /**
     * 外呼未接通-发送短信
     * @param taskId
     * @param time
     * @return
     */
    String sendSmsByOutCallNotConnect(String taskId,String time);
 
    /**
     * 通过手机号获取外呼未接通已发短信通知的人员水库信息
     * @param callId 呼叫id
     * @return
     */
    Object getCallNotConnectSmsNoticeInfo(String callId);
 
    /**
     * 导入表格发送降雨短信
     * @param list 导入的excel 集合数据
     * @param startTime 短信内容填报起始时间
     * @param endTime 短信内容填报截止时间
     * @return
     */
    Object importSendRainSms(List<SendRainSmsExcel> list,String startTime,String endTime);
 
    /**
     * 发送邮件提醒短信
     * @param list
     */
    void sendEmailMsg(List<String> list, SmsRequest smsRequest);
 
    /**
     * 发送合并水库名短信
     * @param smsRequestTemplate
     */
    void sendMergeSignMsg(SmsRequestTemplate smsRequestTemplate);
 
    /**
     * 批量发送短信(集合数据)
     * @param map (保护参数 1:短信模板id  2:数据集合 list<Map<String,Object>>)
     * @return
     */
    Object batchSendSms(Map<String, Object> map);
 
    /**
     * 导入表格发送预警短信
     * @param list 集合数据
     * @param templateId 模板id
     * @param param 通用参数
     * @param content 发送内容
     * @return
     */
    Object importSendSms(List<SendSmsExcel> list,String templateId,String param, String content);
 
    /**
     * 水库测点合并发送
     * @param smsRequestTemplate
     * @return
     */
    Map<String, Object> sendSignMsgMergeCd(SmsRequestTemplate smsRequestTemplate);
 
    Map<String, Object> sendSignMsgMergeCdVideo(SmsRequestTemplate smsRequestTemplate);
}