Bladeren bron

短信发送记录表 字段长度调整; 记录发送请求的完整信息

zhulu 1 jaar geleden
bovenliggende
commit
31398f6865

+ 2 - 2
project_data/sql/0.1.0/soc/soc.sql

@@ -247,8 +247,8 @@ create table sms_send_record
     content_data       varchar(225) not null comment '短信内容',
     result             varchar(225) null comment '发送结果',
     result_description varchar(125) null comment '发送结果描述',
-    req_detail        varchar(225) null comment '短信发送请求详情',
-    resp_detail        varchar(225) null comment '短信发送返回详情'
+    req_detail        varchar(5000) null comment '短信发送请求详情',
+    resp_detail        varchar(1000) null comment '短信发送返回详情'
 )
     comment '短信发送记录';
 

+ 17 - 3
soc-modules/soc-modules-sms/src/main/java/com/xunmei/sms/service/SmsService.java

@@ -9,6 +9,7 @@ import com.xunmei.common.core.constant.*;
 import com.xunmei.common.core.domain.reminder.dto.ReminderScheduleMsgDto;
 import com.xunmei.common.core.domain.reminder.vo.ReminderScheduleMsgVo;
 import com.xunmei.common.core.web.domain.AjaxResult;
+import com.xunmei.common.security.utils.SecurityUtils;
 import com.xunmei.sms.utils.SmsNotifyType;
 import com.xunmei.sms.utils.SmsUtil;
 import com.xunmei.system.api.RemoteOrgService;
@@ -92,11 +93,24 @@ public class SmsService implements ISmsService {
                 logger.error("【发送短信】转换数据出错:原数据:" + JSONObject.toJSON(data));
                 return AjaxResult.error("【发送短信】转换数据出错");
             }
-            CompositeData rspData = ESBClient.request(smsCompositeData);
+            CompositeData rspData = null;
+            try {
+                rspData =ESBClient.request(smsCompositeData);
+            } catch (Exception e) {
+                logger.error("短信发送时发生异常 :", e);
+            }
             logger.debug("【发送短信】返回数据:" + JSONObject.toJSON(rspData));
-//            return getResult(rspData);
+
             AjaxResult result = getResult(rspData);
-            recordService.saveSmsRecord(new SysOrg(), new SysUser(), result, data,smsCompositeData);
+            SysOrg tempOrg= new SysOrg();
+            tempOrg.setId(ObjectUtil.isNotEmpty(SecurityUtils.getLoginUser())? SecurityUtils.getLoginUser().getOrgId():4352539158904832L);
+            tempOrg.setShortName("短信发送测试");
+
+            SysUser tempUser=new SysUser();
+            tempUser.setId(ObjectUtil.isNotEmpty(SecurityUtils.getLoginUser()) ? SecurityUtils.getLoginUser().getUserid():1L);
+            tempUser.setName(ObjectUtil.isNotEmpty(SecurityUtils.getLoginUser()) ? SecurityUtils.getLoginUser().getName():"管理员");
+
+            recordService.saveSmsRecord(tempOrg, tempUser, result, data,smsCompositeData);
             return result;
         } catch (Exception ex) {
             logger.error("【发送短信】发送时内部异常:数据:" + JSONObject.toJSON(data), ex);

+ 8 - 2
soc-modules/soc-modules-sms/src/main/java/com/xunmei/sms/service/impl/SmsSendRecordServiceImpl.java

@@ -2,11 +2,13 @@ package com.xunmei.sms.service.impl;
 
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
+import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.alibaba.fastjson2.JSON;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.dc.eai.data.CompositeData;
+import com.fasterxml.jackson.databind.SerializationFeature;
 import com.xunmei.common.core.constant.HttpStatus;
 import com.xunmei.common.core.constant.SecurityConstants;
 import com.xunmei.common.core.domain.reminder.dto.ReminderScheduleMsgDto;
@@ -24,14 +26,17 @@ import com.xunmei.system.api.domain.SysUser;
 import com.xunmei.system.api.vo.SmsInfoVo;
 import io.netty.util.internal.StringUtil;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.security.Security;
 import java.time.LocalDateTime;
 import java.util.Collection;
 import java.util.Date;
+import java.util.HashMap;
 
 /**
  * <p>
@@ -104,7 +109,8 @@ public class SmsSendRecordServiceImpl extends ServiceImpl<SmsSendRecordMapper, S
         record.setTypeText(smsInfoVo.getRetMsg());
         record.setResult(result.get(AjaxResult.CODE_TAG).equals(String.valueOf(HttpStatus.SUCCESS)) ? "0" : "1");
         record.setResultDescription(result.get(AjaxResult.MSG_TAG).toString());
-        record.setReqDetail(smsCompositeData == null ? StringUtil.EMPTY_STRING : JSON.toJSONString(smsCompositeData));
+        String temp =smsCompositeData == null ? StringUtil.EMPTY_STRING : smsCompositeData.toString();
+        record.setReqDetail(temp);
         record.setRespDetail(JSON.toJSONString(result));
         int insert = baseMapper.insert(record);
         if (insert == 0) {
@@ -131,7 +137,7 @@ public class SmsSendRecordServiceImpl extends ServiceImpl<SmsSendRecordMapper, S
         record.setTypeText(smsInfoVo.getRetMsg());
         record.setResult(result.get(AjaxResult.CODE_TAG).equals(String.valueOf(HttpStatus.SUCCESS)) ? "0" : "1");
         record.setResultDescription(result.get(AjaxResult.MSG_TAG).toString());
-        record.setReqDetail(JSON.toJSONString(smsCompositeData));
+        record.setReqDetail(smsCompositeData.toString());
         record.setRespDetail(JSON.toJSONString(result));
         int insert = baseMapper.insert(record);
         if (insert == 0) {