Sfoglia il codice sorgente

阿里云短信通知功能

徐滕 1 settimana fa
parent
commit
12397d4eb3

+ 16 - 1
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/factory/UserApiFallbackFactory.java

@@ -38,7 +38,22 @@ public class UserApiFallbackFactory implements FallbackFactory <IUserApi> {
             }
 
             @Override
-            public Map<String, Object> sendRandomCodes(String mobile, String randomCode) throws IOException {
+            public Map<String, Object> sendRandomCodes(String mobile, String randomCode) throws Exception {
+                return null;
+            }
+
+            @Override
+            public Map<String, Object> sendEntryRandomCodes(String phoneNumbers, String name, String officeName, String rkeAdmin, String tenantId) throws Exception {
+                return null;
+            }
+
+            @Override
+            public Map<String, Object> sendInternshipEntryRandomCodes(String mobile, String name, String officeName) throws Exception {
+                return null;
+            }
+
+            @Override
+            public Map<String, Object> sendInternshipFinishRandomCodes(String mobile, String name, String time) throws Exception {
                 return null;
             }
 

+ 32 - 1
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/feign/IUserApi.java

@@ -37,7 +37,38 @@ public interface IUserApi {
      * @return
      */
     @GetMapping(value = BASE_URL + "/sendRandomCodes")
-    Map<String ,Object> sendRandomCodes(@RequestParam(value = "mobile")String mobile, @RequestParam(value = "randomCode")String randomCode) throws IOException;
+    Map<String ,Object> sendRandomCodes(@RequestParam(value = "mobile")String mobile, @RequestParam(value = "randomCode")String randomCode) throws Exception;
+
+    /**
+     * 发送入职通知短信(正式员工)
+     * @param mobile
+     * @param name
+     * @param officeName
+     * @param rkeAdmin
+     * @return
+     */
+    @GetMapping(value = BASE_URL + "/sendEntryRandomCodes")
+    Map<String ,Object> sendEntryRandomCodes(@RequestParam(value = "mobile")String mobile, @RequestParam(value = "name")String name, @RequestParam(value = "officeName")String officeName, @RequestParam(value = "rkeAdmin")String rkeAdmin, @RequestParam(value = "tenantId")String tenantId) throws Exception;
+
+    /**
+     * 发送入职通知短信(实习生)
+     * @param mobile
+     * @param name
+     * @param officeName
+     * @return
+     */
+    @GetMapping(value = BASE_URL + "/sendInternshipEntryRandomCodes")
+    Map<String ,Object> sendInternshipEntryRandomCodes(@RequestParam(value = "mobile")String mobile, @RequestParam(value = "name")String name, @RequestParam(value = "officeName")String officeName) throws Exception;
+
+    /**
+     * 发送结束实习通知短信(实习生)
+     * @param mobile
+     * @param name
+     * @param time
+     * @return
+     */
+    @GetMapping(value = BASE_URL + "/sendInternshipFinishRandomCodes")
+    Map<String ,Object> sendInternshipFinishRandomCodes(@RequestParam(value = "mobile")String mobile, @RequestParam(value = "name")String name, @RequestParam(value = "time")String time) throws Exception;
 
     /**
      * 根据登录名获取用户

+ 11 - 6
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentRegistrationService.java

@@ -523,15 +523,20 @@ public class EnrollmentRegistrationService extends ServiceImpl<EnrollmentRegistr
                 PostDTO postDTO = SpringUtil.getBean(IPostApi.class).getPostDTOByName("门卡管理员");
                 List<UserDTO> listByPostId = SpringUtil.getBean(IUserApi.class).findListFlowAbleByPostId(postDTO.getId());
 
-                String randomCode = report.getName() + "你好!欢迎入职" + officeName + ",请尽快登录公司系统:" + networkAddress
+                /*String randomCode = report.getName() + "你好!欢迎入职" + officeName + ",请尽快登录公司系统:" + networkAddress
                         + "完善个人信息(包括社保卡号与工资卡号)并修改初始密码,系统初始账号密码为:" + report.getName() +
                         "/123456,人事部门已在为你办理门禁卡,办理成功后将由系统告知,在收到系统通知后,请及时到信息部" + listByPostId.get(0).getName() + "处领取门禁卡!" +
-                        "注:工资卡需同时提供中信银行、招商银行卡号";
-                Map<String, Object> stringObjectMap = SpringUtil.getBean(IUserApi.class).sendRandomCodes(report.getMobilePhone(), randomCode);
-                String statusCode = (String) stringObjectMap.get("statusCode");
-                if (("000000").equals(statusCode)) {
+                        "注:工资卡需同时提供中信银行、招商银行卡号";*/
+                Map<String, Object> stringObjectMap = SpringUtil.getBean(IUserApi.class).sendEntryRandomCodes(report.getMobilePhone(), report.getName(), officeName, listByPostId.get(0).getName(), office.getTenantId());
+                Integer statusCode = (Integer) stringObjectMap.get("statusCode");
+                if (200 == statusCode) {
                     System.out.println("短信发送成功!");
-                } else if (statusCode.equals("160040")) {
+                } else if (10001 == statusCode) {
+                    String message = (String) stringObjectMap.get("message");
+                    System.out.println(message);
+                }else if(10002 == statusCode){
+                    System.out.println("账户短信量余额不足,请联系管理员进行充值!");
+                }else if(10003 == statusCode){
                     System.out.println("手机号获取验证码次数已达每日上限!");
                 } else {
                     System.out.println("短信发送失败,错误代码:101,请联系管理员!");

+ 12 - 7
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/practice/register/service/RegistrationService.java

@@ -285,16 +285,21 @@ public class RegistrationService extends ServiceImpl<InterRegistrationMapper, Re
 //                OfficeDTO office = SpringUtil.getBean(IOfficeApi.class).getOfficeById(report.getPracticeOffice());
 
 
-                String randomCode = report.getName() + "你好!你好!欢迎来" + officeName + "实习,实习期间请及时在公司系统:" + networkAddress
+                /*String randomCode = report.getName() + "你好!你好!欢迎来" + officeName + "实习,实习期间请及时在公司系统:" + networkAddress
                         + "中填写实习日志,系统初始账号密码为,系统初始账号密码为:" + report.getName() +
-                        "/123456,请尽快登陆系统并修改初始密码!";
-                Map<String, Object> stringObjectMap = SpringUtil.getBean(IUserApi.class).sendRandomCodes(report.getMobilePhone(), randomCode);
-                String statusCode = (String) stringObjectMap.get("statusCode");
-                if (("000000").equals(statusCode)) {
+                        "/123456,请尽快登陆系统并修改初始密码!";*/
+                Map<String, Object> stringObjectMap = SpringUtil.getBean(IUserApi.class).sendInternshipEntryRandomCodes(report.getMobilePhone(), report.getName(), officeName);
+                Integer statusCode = (Integer) stringObjectMap.get("statusCode");
+                if (200 == statusCode) {
                     System.out.println("短信发送成功!");
-                }else if(statusCode.equals("160040")){
+                } else if (10001 == statusCode) {
+                    String message = (String) stringObjectMap.get("message");
+                    System.out.println(message);
+                }else if(10002 == statusCode){
+                    System.out.println("账户短信量余额不足,请联系管理员进行充值!");
+                }else if(10003 == statusCode){
                     System.out.println("手机号获取验证码次数已达每日上限!");
-                }else{
+                } else {
                     System.out.println("短信发送失败,错误代码:101,请联系管理员!");
                 }
 

+ 13 - 7
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/practice/reimburseRegister/service/ReimburseRegisterService.java

@@ -235,17 +235,23 @@ public class ReimburseRegisterService extends ServiceImpl<ReimburseRegisterMappe
                         int year = currentDate.getYear();
                         int month = currentDate.getMonthValue();
                         int day = currentDate.getDayOfMonth();
+                        String time = year + "年" + month + "月" + day + "日";
 
                         //发送短信
-                        String randomCode = "你好" + report.getCreateName() + "!恭喜你完成在我司的实习,希望你今后工作生活顺利。系统将在" + year + "年"+ month + "月" + day + "日晚上12点冻结账号,请尽快" +
-                                "处理好手头的工作!";
-                        Map<String, Object> stringObjectMap = SpringUtil.getBean(IUserApi.class).sendRandomCodes(report.getMobilePhone(), randomCode);
-                        String statusCode = (String) stringObjectMap.get("statusCode");
-                        if (("000000").equals(statusCode)) {
+                        /*String randomCode = "你好" + report.getCreateName() + "!恭喜你完成在我司的实习,希望你今后工作生活顺利。系统将在" + time + "晚上12点冻结账号,请尽快" +
+                                "处理好手头的工作!";*/
+                        Map<String, Object> stringObjectMap = SpringUtil.getBean(IUserApi.class).sendInternshipFinishRandomCodes(report.getMobilePhone(), report.getCreateName(), time);
+                        Integer statusCode = (Integer) stringObjectMap.get("statusCode");
+                        if (200 == statusCode) {
                             System.out.println("短信发送成功!");
-                        }else if(statusCode.equals("160040")){
+                        } else if (10001 == statusCode) {
+                            String message = (String) stringObjectMap.get("message");
+                            System.out.println(message);
+                        }else if(10002 == statusCode){
+                            System.out.println("账户短信量余额不足,请联系管理员进行充值!");
+                        }else if(10003 == statusCode){
                             System.out.println("手机号获取验证码次数已达每日上限!");
-                        }else{
+                        } else {
                             System.out.println("短信发送失败,错误代码:101,请联系管理员!");
                         }
                     }

+ 1 - 1
jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/service/OssService.java

@@ -247,7 +247,7 @@ public class OssService extends ServiceImpl<OssServiceMapper, WorkAttachment> {
      */
     public FileDetailDTO getSFZSizeByUrl(String url){
         FileDetailDTO fileDetailDTO = new FileDetailDTO();
-        fileDetailDTO.setUrl(getThumbnailTemporaryWithWatermarkDimLookUrl(aliyunUrl + url));
+        fileDetailDTO.setUrl(getFileTemporaryLookUrlWithWatermark(aliyunUrl + url));
         Long fileSizeBytes = ossClientService.getSimplifiedObjectMeta(aliyunUrl + url);
         if(null != fileSizeBytes){
             Double fileSize = (double)fileSizeBytes;

+ 20 - 12
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/controller/UserController.java

@@ -38,10 +38,7 @@ import com.jeeplus.sys.service.dto.RoleDTO;
 import com.jeeplus.sys.service.dto.UserDTO;
 import com.jeeplus.sys.service.dto.UserSignatureScribeDTO;
 import com.jeeplus.sys.service.mapstruct.UserWrapper;
-import com.jeeplus.sys.utils.DictUtils;
-import com.jeeplus.sys.utils.MenuUtils;
-import com.jeeplus.sys.utils.TenantUtils;
-import com.jeeplus.sys.utils.UserUtils;
+import com.jeeplus.sys.utils.*;
 import com.jeeplus.sys.utils.excel.UserEasyExcel;
 import com.jeeplus.utils.StringUtils;
 import io.swagger.annotations.Api;
@@ -1318,21 +1315,32 @@ public class UserController {
             HashMap<String, Object> result = null;
             try {
                 //调用工具类返回结果
-                result = UserUtils.sendRandomCodes(mobile, randomCode);
-                String statusCode = (String) result.get("statusCode");
-                if (("000000").equals(statusCode)) {
+                result = ALiYunSmsUtil.updatePasswordSendSms(mobile, randomCode);
+                Integer statusCode = (Integer) result.get("statusCode");
+                if (200 == statusCode) {
                     j.put("success", true);
                     j.put("message", "短信发送成功!");
                     //存放验证码
                     //以手机号+为key 五分钟为时效 将验证码进行短期存储
                     redisUtils.setEx(mobile + "resetPassword", randomCode, 300, TimeUnit.SECONDS);
-                } else if (statusCode.equals("160040")) {
+                }else if(10001 == statusCode){
                     j.put("success", false);
-                    j.put("message", "手机号获取验证码次数已达每日上限!");
-                } else {
+                    String message = (String) result.get("message");
+                    //j.setMsg("短信发送失败,错误代码:"+result+",请联系管理员。");
+                    j.put("message",message);
+                    j.put("ErrorXml",result);
+                }else if(10002 == statusCode){
+                    j.put("success", false);
+                    j.put("message","账户短信量余额不足,请联系管理员进行充值!");
+                    j.put("ErrorXml",result);
+                }else if(10003 == statusCode){
+                    j.put("success", false);
+                    j.put("message","手机号获取验证码次数已达每日上限!");
+                    j.put("ErrorXml",result);
+                }else{
                     j.put("success", false);
-                    j.put("message", "短信发送失败,错误代码:101,请联系管理员!");
-                    j.put("ErrorXml", result);
+                    j.put("message","短信发送失败,错误代码:101,请联系管理员!");
+                    j.put("ErrorXml",result);
                 }
             } catch (Exception e) {
                 e.printStackTrace();

+ 17 - 2
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/feign/UserApiImpl.java

@@ -46,8 +46,23 @@ public class UserApiImpl implements IUserApi {
     }
 
     @Override
-    public Map<String, Object> sendRandomCodes(String mobile, String randomCode) throws IOException {
-        return UserUtils.sendRandomCodes(mobile, randomCode);
+    public Map<String, Object> sendRandomCodes(String mobile, String randomCode) throws Exception {
+        return ALiYunSmsUtil.updatePasswordSendSms(mobile, randomCode);
+    }
+
+    @Override
+    public Map<String, Object> sendEntryRandomCodes(String mobile, String name, String officeName, String rkeAdmin, String tenantId) throws Exception {
+        return ALiYunSmsUtil.sendEntryRandomCodes(mobile, name, officeName, rkeAdmin, tenantId);
+    }
+
+    @Override
+    public Map<String, Object> sendInternshipEntryRandomCodes(String mobile, String name, String officeName) throws Exception {
+        return ALiYunSmsUtil.sendInternshipEntryRandomCodes(mobile, name, officeName);
+    }
+
+    @Override
+    public Map<String, Object> sendInternshipFinishRandomCodes(String mobile, String name, String time) throws Exception {
+        return ALiYunSmsUtil.sendInternshipFinishRandomCodes(mobile, name, time);
     }
 
     @Override

+ 202 - 4
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/utils/ALiYunSmsUtil.java

@@ -13,10 +13,10 @@ import java.util.HashMap;
  * @version: 2024-09-06 11:20
  */
 public class ALiYunSmsUtil {
-    private static final String ACCESS_KEY_ID = "LTAI5tPcDWKAh5iG7z8veXfk";//AccessKey自己账号的
-    private static final String ACCESS_KEY_SECRET = "GrY2L9GegHNKB2y62V5RcRtJU6iYr2";
+    private static final String ACCESS_KEY_ID = "LTAI5tSnsAbzQZMV8zmbqPX1";//AccessKey自己账号的
+    private static final String ACCESS_KEY_SECRET = "954QtufvhGG5tssdpn7prH9fmJBq4P";
     private static final String ENDPOINT = "dysmsapi.aliyuncs.com";//固定死
-    private static final String SIGNNAME = "大屏展示";//签名名称
+    private static final String SIGNNAME = "江苏兴光会计师事务所";//签名名称
     private static final String TCODE = "";//模版的编号
 
 
@@ -91,7 +91,7 @@ public class ALiYunSmsUtil {
                 .setPhoneNumbers(phoneNumbers)
                 .setSignName(SIGNNAME)
                 /*.setTemplateCode("SMS_472770050")*/
-                .setTemplateCode("SMS_482810075")
+                .setTemplateCode("SMS_491420396")
                 //此处是设计模版的时候预留的变量${code}就验证码,用下面的随机生成4位数字传入
                 .setTemplateParam(String.format("{\"code\":\"%s\"}", randomCode));
 
@@ -123,4 +123,202 @@ public class ALiYunSmsUtil {
         }
     }
 
+    /**
+     * 入职短信通知(正式员工)
+     * @param phoneNumbers  被通知人员手机号
+     * @param name  被通知人员名称
+     * @param officeName    被通知人员部门名称
+     * @param rkeAdmin  门禁卡权限开启人名称
+     * @param tenantId  隶属公司的tenantId
+     * @return
+     * @throws Exception
+     */
+    public static HashMap<String,Object> sendEntryRandomCodes(String phoneNumbers, String name, String officeName, String rkeAdmin, String tenantId) throws Exception {
+        HashMap<String,Object> map = new HashMap<>();
+        Config config = new Config()
+                .setAccessKeyId(ACCESS_KEY_ID)
+                .setAccessKeySecret(ACCESS_KEY_SECRET)
+                .setEndpoint(ENDPOINT);
+
+        // 构造包含多个参数的JSON字符串
+        String templateParams = String.format("{\"name\":\"%s\",\"officeName\":\"%s\",\"rkeAdmin\":\"%s\"}", name, officeName, rkeAdmin);
+
+        String templateCode = "";
+        switch (tenantId){
+            case "10001":
+                //评估公司
+                templateCode = "SMS_491485468";
+                break;
+            case "10002":
+                //综合管理公司
+                templateCode = "SMS_491460422";
+                break;
+            case "10003":
+                //会计业务管理公司
+                templateCode = "SMS_491515430";
+                break;
+            case "10004":
+                //中审管理公司
+                templateCode = "SMS_491400442";
+                break;
+            case "10005":
+                //兴光项目公司
+                templateCode = "SMS_491460423";
+                break;
+            case "10006":
+                //苏州分公司
+                templateCode = "SMS_491420460";
+                break;
+            default:
+                templateCode = "SMS_491450356";
+                break;
+        }
+
+        Client client = new Client(config);
+        SendSmsRequest sendSmsRequest = new SendSmsRequest()
+                .setPhoneNumbers(phoneNumbers)
+                .setSignName(SIGNNAME)
+                /*.setTemplateCode("SMS_472770050")*/
+                .setTemplateCode(templateCode)
+                //此处是设计模版的时候预留的变量${code}就验证码,用下面的随机生成4位数字传入
+                .setTemplateParam(templateParams);
+
+        try {
+            SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest);
+            System.out.println(sendSmsResponse);
+            if(sendSmsResponse.body.code.equals("isv.BUSINESS_LIMIT_CONTROL")){
+                if(sendSmsResponse.body.message.contains("触发分钟级流控")){
+                    map.put("message","手机号获取验证码次数已触发每分钟可发送数量上限,请稍后进行重试!");
+                }else if(sendSmsResponse.body.message.contains("触发小时级流控")){
+                    map.put("message","手机号获取验证码次数已触发每小时可发送数量上限,请稍后进行重试!");
+                }else{
+                    map.put("message","手机号获取验证码次数已触发每小时可发送数量上限,请稍后进行重试!");
+                }
+                //触发云通信流控限制 每小时限量
+                map.put("statusCode",10001);
+            }else if(sendSmsResponse.body.code.contains("isv.AMOUNT_NOT_ENOUGH")){
+                //触发账户余额不足
+                map.put("statusCode",10002);
+            }else if(sendSmsResponse.body.code.contains("isv.DAY_LIMIT_CONTROL")){
+                //触发触发日发送限额
+                map.put("statusCode",10003);
+            }else if(sendSmsResponse.body.code.contains("OK")){
+                map.put("statusCode",sendSmsResponse.getStatusCode());
+            }
+            return map;
+        } catch (TeaException error) {
+            return map;
+        }
+    }
+
+    /**
+     * 入职短信通知(实习生)
+     * @param phoneNumbers  被通知人员手机号
+     * @param name  被通知人员名称
+     * @param officeName    被通知人员部门名称
+     * @return
+     * @throws Exception
+     */
+    public static HashMap<String,Object> sendInternshipEntryRandomCodes(String phoneNumbers, String name, String officeName) throws Exception {
+        HashMap<String,Object> map = new HashMap<>();
+        Config config = new Config()
+                .setAccessKeyId(ACCESS_KEY_ID)
+                .setAccessKeySecret(ACCESS_KEY_SECRET)
+                .setEndpoint(ENDPOINT);
+
+        // 构造包含多个参数的JSON字符串
+        String templateParams = String.format("{\"name\":\"%s\",\"officeName\":\"%s\"}", name, officeName);
+
+        Client client = new Client(config);
+        SendSmsRequest sendSmsRequest = new SendSmsRequest()
+                .setPhoneNumbers(phoneNumbers)
+                .setSignName(SIGNNAME)
+                /*.setTemplateCode("SMS_472770050")*/
+                .setTemplateCode("SMS_491550378")
+                //此处是设计模版的时候预留的变量${code}就验证码,用下面的随机生成4位数字传入
+                .setTemplateParam(templateParams);
+
+        try {
+            SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest);
+            System.out.println(sendSmsResponse);
+            if(sendSmsResponse.body.code.equals("isv.BUSINESS_LIMIT_CONTROL")){
+                if(sendSmsResponse.body.message.contains("触发分钟级流控")){
+                    map.put("message","手机号获取验证码次数已触发每分钟可发送数量上限,请稍后进行重试!");
+                }else if(sendSmsResponse.body.message.contains("触发小时级流控")){
+                    map.put("message","手机号获取验证码次数已触发每小时可发送数量上限,请稍后进行重试!");
+                }else{
+                    map.put("message","手机号获取验证码次数已触发每小时可发送数量上限,请稍后进行重试!");
+                }
+                //触发云通信流控限制 每小时限量
+                map.put("statusCode",10001);
+            }else if(sendSmsResponse.body.code.contains("isv.AMOUNT_NOT_ENOUGH")){
+                //触发账户余额不足
+                map.put("statusCode",10002);
+            }else if(sendSmsResponse.body.code.contains("isv.DAY_LIMIT_CONTROL")){
+                //触发触发日发送限额
+                map.put("statusCode",10003);
+            }else if(sendSmsResponse.body.code.contains("OK")){
+                map.put("statusCode",sendSmsResponse.getStatusCode());
+            }
+            return map;
+        } catch (TeaException error) {
+            return map;
+        }
+    }
+
+    /**
+     * 发送结束实习通知短信(实习生)
+     * @param phoneNumbers  被通知人员手机号
+     * @param name  被通知人员名称
+     * @param time    时间
+     * @return
+     * @throws Exception
+     */
+    public static HashMap<String,Object> sendInternshipFinishRandomCodes(String phoneNumbers, String name, String time) throws Exception {
+        HashMap<String,Object> map = new HashMap<>();
+        Config config = new Config()
+                .setAccessKeyId(ACCESS_KEY_ID)
+                .setAccessKeySecret(ACCESS_KEY_SECRET)
+                .setEndpoint(ENDPOINT);
+
+        // 构造包含多个参数的JSON字符串
+        String templateParams = String.format("{\"name\":\"%s\",\"time\":\"%s\"}", name, time);
+
+        Client client = new Client(config);
+        SendSmsRequest sendSmsRequest = new SendSmsRequest()
+                .setPhoneNumbers(phoneNumbers)
+                .setSignName(SIGNNAME)
+                /*.setTemplateCode("SMS_472770050")*/
+                .setTemplateCode("SMS_491405404")
+                //此处是设计模版的时候预留的变量${code}就验证码,用下面的随机生成4位数字传入
+                .setTemplateParam(templateParams);
+
+        try {
+            SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest);
+            System.out.println(sendSmsResponse);
+            if(sendSmsResponse.body.code.equals("isv.BUSINESS_LIMIT_CONTROL")){
+                if(sendSmsResponse.body.message.contains("触发分钟级流控")){
+                    map.put("message","手机号获取验证码次数已触发每分钟可发送数量上限,请稍后进行重试!");
+                }else if(sendSmsResponse.body.message.contains("触发小时级流控")){
+                    map.put("message","手机号获取验证码次数已触发每小时可发送数量上限,请稍后进行重试!");
+                }else{
+                    map.put("message","手机号获取验证码次数已触发每小时可发送数量上限,请稍后进行重试!");
+                }
+                //触发云通信流控限制 每小时限量
+                map.put("statusCode",10001);
+            }else if(sendSmsResponse.body.code.contains("isv.AMOUNT_NOT_ENOUGH")){
+                //触发账户余额不足
+                map.put("statusCode",10002);
+            }else if(sendSmsResponse.body.code.contains("isv.DAY_LIMIT_CONTROL")){
+                //触发触发日发送限额
+                map.put("statusCode",10003);
+            }else if(sendSmsResponse.body.code.contains("OK")){
+                map.put("statusCode",sendSmsResponse.getStatusCode());
+            }
+            return map;
+        } catch (TeaException error) {
+            return map;
+        }
+    }
+
 }