zhongrj
2023-05-30 d1a57df817c236bc751b01a4b5c595007dc6ca77
短信模板发送修改
2 files modified
87 ■■■■ changed files
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/service/SmsService.java 2 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/service/impl/SmsServiceImpl.java 85 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/service/SmsService.java
@@ -26,5 +26,5 @@
     * @param request 内容对象
     * @return
     */
    Object sendSignMsg(String title,String content,SMSSendRequest request);
    Object sendSignMsg(String title,String content,SMSSendRequest request,Integer type);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/service/impl/SmsServiceImpl.java
@@ -14,7 +14,9 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * 短信发送服务实现层
@@ -64,30 +66,65 @@
     * @return
     */
    @Override
    public Object sendSignMsg(String title, String content, SMSSendRequest request) {
        String[] titleArr = title.split(",");
        String[] rows = content.split(";");
        String[][] dyns = new String[rows.length + 1][titleArr.length];
        dyns[0] = titleArr;
        int rowNum = 1;
        for (String row : rows) {
            String[] cols = row.split(",");
            dyns[rowNum++] = cols;
    public Object sendSignMsg(String title, String content, SMSSendRequest request,Integer type) {
        if (type==1){
            String[] rows = content.split(";");
            // 先保存结果记录
            SmsResult smsResult = saveSendResult(request, rows.length);
            List<SmsRecord> list = new ArrayList<>();
            // 遍历发送短信
            for (String row : rows) {
                String[][] dyns = new String[][]{{title}, {row}};
                //请求参数
                DynSMSSendRequest sendRequest = new DynSMSSendRequest();
                sendRequest.setTemplateId(request.getTemplateId());
                sendRequest.setDynData(dyns);
                // 发送
                ComResult<DynSMSSendDataResult> resultComResult = SmsUtils.dynSendMethod(sendRequest);
                SmsRecord smsRecord = new SmsRecord();
                if (null != smsResult){
                    // 保存记录
                    smsRecord = saveSmsRecord(request, resultComResult.getCode(), resultComResult.getMsg(), smsResult.getId());
                }
                list.add(smsRecord);
            }
            Map<String, Object> map = new HashMap<>(2);
            map.put("smsRecord",list);
            map.put("smsResult",smsResult);
            // 返回
            return map;
        }
        //请求参数
        DynSMSSendRequest sendRequest = new DynSMSSendRequest();
        sendRequest.setTemplateId(request.getTemplateId());
        sendRequest.setDynData(dyns);
        // 发送
        ComResult<DynSMSSendDataResult> resultComResult = SmsUtils.dynSendMethod(sendRequest);
        // 先保存结果记录
        SmsResult smsResult = saveSendResult(request, rows.length);
        if (null != smsResult){
            // 保存记录
            saveSmsRecord(request,resultComResult.getCode(),resultComResult.getMsg(),smsResult.getId());
        if (type==2){
            String[] titleArr = title.split(",");
            String[] rows = content.split(";");
            String[][] dyns = new String[rows.length + 1][titleArr.length];
            dyns[0] = titleArr;
            int rowNum = 1;
            for (String row : rows) {
                String[] cols = row.split(",");
                dyns[rowNum++] = cols;
            }
            //请求参数
            DynSMSSendRequest sendRequest = new DynSMSSendRequest();
            sendRequest.setTemplateId(request.getTemplateId());
            sendRequest.setDynData(dyns);
            // 发送
            ComResult<DynSMSSendDataResult> resultComResult = SmsUtils.dynSendMethod(sendRequest);
            // 先保存结果记录
            SmsResult smsResult = saveSendResult(request, rows.length);
            SmsRecord smsRecord = new SmsRecord();
            if (null != smsResult){
                // 保存记录
                smsRecord = saveSmsRecord(request, resultComResult.getCode(), resultComResult.getMsg(), smsResult.getId());
            }
            Map<String, Object> map = new HashMap<>(2);
            map.put("smsRecord",smsRecord);
            map.put("smsResult",smsResult);
            // 返回
            return map;
        }
        // 返回
        return resultComResult;
        return null;
    }
    /**
@@ -97,7 +134,7 @@
     * @param msg 响应消息
     * @param resultId
     */
    private void saveSmsRecord(SMSSendRequest request,Integer code,String msg, Long resultId) {
    private SmsRecord saveSmsRecord(SMSSendRequest request,Integer code,String msg, Long resultId) {
        // 在保存明细
        SmsRecord smsRecord = new SmsRecord();
        smsRecord.setTel(request.getUserNumber());
@@ -108,6 +145,8 @@
        smsRecord.setResponseMsg(msg);
        //插入记录
        smsRecordService.save(smsRecord);
        // 返回
        return smsRecord;
    }
    /**