Преглед изворни кода

Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Backend into qtz3

qitz пре 2 година
родитељ
комит
9e16fc1b1a

+ 13
- 4
ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/CaseApplicationController.java Прегледај датотеку

@@ -9,10 +9,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
9 9
 import com.ruoyi.common.enums.BusinessType;
10 10
 import com.ruoyi.common.exception.EsignDemoException;
11 11
 import com.ruoyi.common.utils.WxAppletNotifyUtils;
12
-import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord;
13
-import com.ruoyi.wisdomarbitrate.domain.BatchCaseApplication;
14
-import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
15
-import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
12
+import com.ruoyi.wisdomarbitrate.domain.*;
16 13
 import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
17 14
 import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount;
18 15
 import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService;
@@ -336,4 +333,16 @@ public class CaseApplicationController extends BaseController {
336 333
         return AjaxResult.success(caseApplicationService.updateCaseLockStatus(caseApplication));
337 334
     }
338 335
 
336
+    /**
337
+     * 查询短信发送记录
338
+     * @param smsSendRecord
339
+     * @return
340
+     */
341
+    @PostMapping("/smsRecord")
342
+    public TableDataInfo getSmsSendRecord(@RequestBody SmsSendRecord smsSendRecord){
343
+        startPage();
344
+        List<SmsSendRecord> list = caseApplicationService.getSmsSendRecord(smsSendRecord);
345
+        return getDataTable(list);
346
+    }
347
+
339 348
 }

+ 40
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/SmsSendRecord.java Прегледај датотеку

@@ -0,0 +1,40 @@
1
+package com.ruoyi.wisdomarbitrate.domain;
2
+
3
+import com.fasterxml.jackson.annotation.JsonFormat;
4
+import com.ruoyi.common.core.domain.BaseEntity;
5
+import lombok.AllArgsConstructor;
6
+import lombok.Data;
7
+import lombok.NoArgsConstructor;
8
+
9
+import java.util.Date;
10
+
11
+@Data
12
+@AllArgsConstructor
13
+@NoArgsConstructor
14
+public class SmsSendRecord extends BaseEntity {
15
+    /**
16
+     * ID
17
+     */
18
+    private Long id;
19
+    /**
20
+     * 案件申请id
21
+     */
22
+    private Long caseId;
23
+    /**
24
+     * 案件编号
25
+     */
26
+    private String caseNum;
27
+    /**
28
+     * 手机号
29
+     */
30
+    private String phone;
31
+    /**
32
+     * 发送时间
33
+     */
34
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
35
+    private Date sendTime;
36
+    /**
37
+     * 发送内容
38
+     */
39
+    private String sendContent;
40
+}

+ 14
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/SmsRecordMapper.java Прегледај датотеку

@@ -0,0 +1,14 @@
1
+package com.ruoyi.wisdomarbitrate.mapper;
2
+
3
+import com.ruoyi.wisdomarbitrate.domain.SmsSendRecord;
4
+import org.apache.ibatis.annotations.Mapper;
5
+
6
+import java.util.List;
7
+
8
+@Mapper
9
+public interface SmsRecordMapper {
10
+
11
+    int saveSmsSendRecord(SmsSendRecord smsSendRecord);
12
+
13
+    List<SmsSendRecord> getSmsSendRecord(SmsSendRecord smsSendRecord);
14
+}

+ 7
- 4
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/ICaseApplicationService.java Прегледај датотеку

@@ -2,10 +2,7 @@ package com.ruoyi.wisdomarbitrate.service;
2 2
 
3 3
 import com.ruoyi.common.core.domain.AjaxResult;
4 4
 import com.ruoyi.common.exception.EsignDemoException;
5
-import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord;
6
-import com.ruoyi.wisdomarbitrate.domain.BatchCaseApplication;
7
-import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
8
-import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
5
+import com.ruoyi.wisdomarbitrate.domain.*;
9 6
 import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
10 7
 import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount;
11 8
 import org.springframework.web.multipart.MultipartFile;
@@ -75,4 +72,10 @@ public interface ICaseApplicationService {
75 72
     int updateCaseLockStatus(CaseApplication caseApplication);
76 73
 
77 74
     AjaxResult uploadZipFile(MultipartFile file, Long id, String username, Long userId);
75
+    /**
76
+     * 查询短信发送记录
77
+     * @param smsSendRecord
78
+     * @return
79
+     */
80
+    List<SmsSendRecord> getSmsSendRecord(SmsSendRecord smsSendRecord);
78 81
 }

+ 61
- 7
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java Прегледај датотеку

@@ -87,6 +87,8 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
87 87
     private CaseLogRecordMapper caseLogRecordMapper;
88 88
     @Autowired
89 89
     private   CaseEvidenceDirectoryMapper caseEvidenceDirectoryMapper;
90
+    @Autowired
91
+    private SmsRecordMapper smsRecordMapper;
90 92
     // 手机号正则
91 93
     private static final Pattern TELEPHONE_REGX =  Pattern.compile("^1(3\\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\\d|9[0-35-9])\\d{8}$");
92 94
 
@@ -458,6 +460,11 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
458 460
 
459 461
     }
460 462
 
463
+    @Override
464
+    public  List<SmsSendRecord> getSmsSendRecord(SmsSendRecord smsSendRecord) {
465
+        return smsRecordMapper.getSmsSendRecord(smsSendRecord);
466
+    }
467
+
461 468
     private List<CaseLogRecord> getNofinishCasenode(Integer caseStatus) {
462 469
         CaseLogRecord caseLogRecord1 = new CaseLogRecord();
463 470
         caseLogRecord1.setCaseNodeName("立案审查");
@@ -959,12 +966,26 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
959 966
                 }
960 967
                 if (insertUserRow > 0) {
961 968
                     caseAffiliate.setApplicantAgentUserId(String.valueOf(agentUser.getUserId()));
962
-                    // 明天改下模板id:1956159 普通短信 通知用户认证注册 尊敬的{1},您的代理的案件已接入仲裁系统,复制访问https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 进入小程序进行认证注册。如非本人操作,请忽略本短信
969
+                    // 尊敬的{1},您的代理的案件已接入仲裁系统,复制访问https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 进入小程序进行认证注册。如非本人操作,请忽略本短信
963 970
                     SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
964 971
                     request.setTemplateId("1956159");
965 972
                     request.setPhone(agentUser.getPhonenumber());
966 973
                     request.setTemplateParamSet(new String[]{agentUser.getNickName()});
967
-                    SmsUtils.sendSms(request);
974
+                    if (SmsUtils.sendSms(request)){
975
+                        //保存短信发送记录
976
+                        SmsSendRecord smsSendRecord = new SmsSendRecord();
977
+                        smsSendRecord.setCaseId(caseAffiliate.getCaseAppliId());
978
+                        CaseApplication caseApplication = new CaseApplication();
979
+                        caseApplication.setId(caseAffiliate.getCaseAppliId());
980
+                        caseApplication = caseApplicationMapper.selectCaseApplication(caseApplication);
981
+                        smsSendRecord.setCaseNum(caseApplication.getCaseNum());
982
+                        smsSendRecord.setPhone(request.getPhone());
983
+                        smsSendRecord.setSendTime(new Date());
984
+                        String content="尊敬的"+agentUser.getNickName()+",您的代理的案件已接入仲裁系统,复制访问https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 进入小程序进行认证注册。如非本人操作,请忽略本短信";
985
+                        smsSendRecord.setSendContent(content);
986
+                        smsSendRecord.setCreateBy(getUsername());
987
+                        smsRecordMapper.saveSmsSendRecord(smsSendRecord);
988
+                    }
968 989
                 }
969 990
             } else if (null != agentUser.getDeptId() && !String.valueOf(agentUser.getDeptId()).equals(caseAffiliate.getApplicationOrganId())) {
970 991
 //                return "该申请代理人已在"+agentUser.getDeptName()+"申请机构下存在,请检查填写信息是否正确";
@@ -1741,11 +1762,21 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
1741 1762
         //发送短信通知
1742 1763
         SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
1743 1764
         request.setTemplateId("1952136");
1744
-        // 1948332 普通短信 开庭审理房间号通知 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},请知晓,如非本人操作,请忽略本短信。
1765
+        // 1948332 普通短信 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},请在微信内打开https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 请知晓,如非本人操作,请忽略本短信。
1745 1766
         request.setPhone(caseAffiliate.getContactTelphone());
1746 1767
         request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo()});
1747
-        SmsUtils.sendSms(request);
1748
-
1768
+        if (SmsUtils.sendSms(request)){
1769
+            //保存短信发送记录
1770
+            SmsSendRecord smsSendRecord = new SmsSendRecord();
1771
+            smsSendRecord.setCaseId(messageVO.getId());
1772
+            smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum());
1773
+            smsSendRecord.setPhone(request.getPhone());
1774
+            smsSendRecord.setSendTime(new Date());
1775
+            String content="尊敬的"+caseAffiliate.getName()+"用户,您的"+ caseApplicationselect.getCaseNum()+"仲裁案件,开庭审理房间号为"+ messageVO.getRoomNo()+",请在微信内打开https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 请知晓,如非本人操作,请忽略本短信。";
1776
+            smsSendRecord.setSendContent(content);
1777
+            smsSendRecord.setCreateBy(getUsername());
1778
+            smsRecordMapper.saveSmsSendRecord(smsSendRecord);
1779
+        }
1749 1780
         return "短信发送成功";
1750 1781
     }
1751 1782
 
@@ -2026,7 +2057,18 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
2026 2057
                     // 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
2027 2058
                     String name = user.getNickName();
2028 2059
                     request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
2029
-                    SmsUtils.sendSms(request);
2060
+                    if (SmsUtils.sendSms(request)){
2061
+                        //保存短信发送记录
2062
+                        SmsSendRecord smsSendRecord = new SmsSendRecord();
2063
+                        smsSendRecord.setCaseId(caseApplicationselect.getId());
2064
+                        smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum());
2065
+                        smsSendRecord.setPhone(request.getPhone());
2066
+                        smsSendRecord.setSendTime(new Date());
2067
+                        String content="尊敬的"+name+"用户,您的"+caseNum+"仲裁案件,开庭日期已确定为"+hearDatestr+",请知晓,如非本人操作,请忽略本短信。";
2068
+                        smsSendRecord.setSendContent(content);
2069
+                        smsSendRecord.setCreateBy(getUsername());
2070
+                        smsRecordMapper.saveSmsSendRecord(smsSendRecord);
2071
+                    }
2030 2072
 
2031 2073
                 }
2032 2074
             }
@@ -2050,7 +2092,18 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
2050 2092
                 // 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
2051 2093
                 String name = caseAffiliateselect.getName();
2052 2094
                 request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
2053
-                SmsUtils.sendSms(request);
2095
+                if (SmsUtils.sendSms(request)){
2096
+                    //保存短信发送记录
2097
+                    SmsSendRecord smsSendRecord = new SmsSendRecord();
2098
+                    smsSendRecord.setCaseId(caseApplication.getId());
2099
+                    smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum());
2100
+                    smsSendRecord.setPhone(request.getPhone());
2101
+                    smsSendRecord.setSendTime(new Date());
2102
+                    String content="尊敬的"+name+"用户,您的"+caseNum+"仲裁案件,开庭日期已确定为"+hearDatestr+",请知晓,如非本人操作,请忽略本短信。";
2103
+                    smsSendRecord.setSendContent(content);
2104
+                    smsSendRecord.setCreateBy(getUsername());
2105
+                    smsRecordMapper.saveSmsSendRecord(smsSendRecord);
2106
+                }
2054 2107
             }
2055 2108
         }
2056 2109
         // 新增日志
@@ -2223,6 +2276,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
2223 2276
         caseApplicationNew.setFeePayable(caseApplicationinsertDiffer.getFeePayable());
2224 2277
     }
2225 2278
 
2279
+
2226 2280
 //    @Transactional
2227 2281
 //    public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
2228 2282
 //

+ 72
- 105
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseArbitrateServiceImpl.java Прегледај датотеку

@@ -24,6 +24,8 @@ import java.util.*;
24 24
 import java.util.function.Function;
25 25
 import java.util.stream.Collectors;
26 26
 
27
+import static com.ruoyi.common.utils.SecurityUtils.getUsername;
28
+
27 29
 @Service
28 30
 public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
29 31
     @Autowired
@@ -36,6 +38,8 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
36 38
     private ArbitrateRecordMapper arbitrateRecordMapper;
37 39
     @Autowired
38 40
     private CaseAttachMapper caseAttachMapper;
41
+    @Autowired
42
+    private SmsRecordMapper smsRecordMapper;
39 43
 
40 44
     @Override
41 45
     @Transactional
@@ -46,117 +50,80 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
46 50
             return AjaxResult.success();
47 51
         }
48 52
         Integer arbitratMethod = caseApplication1.getArbitratMethod();
49
-        if(arbitratMethod==null) {
53
+        if (arbitratMethod == null) {
50 54
             return AjaxResult.error("请先指定仲裁方式");
51 55
         }
52
-            String caseNum = caseApplication1.getCaseNum();
53
-            if (opinion == 0) {   //拒绝
54
-                if (arbitratMethod == 2) {
55
-                    caseApplication1.setArbitratMethod(1);  // 更改仲裁方式
56
-                    //修改案件状态为待开庭审理
56
+        String caseNum = caseApplication1.getCaseNum();
57
+        if (opinion == 0) {   //拒绝
58
+            if (arbitratMethod == 2) {
59
+                caseApplication1.setArbitratMethod(1);  // 更改仲裁方式
60
+                //修改案件状态为待开庭审理
57 61
 //                caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_OPENCOURT_HEAR);
58
-                    //修改案件状态为待修改开庭时间
59
-                    caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
60
-                    // 新增日志
61
-                    CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
62
-
63
-                } else {
64
-                    caseApplication1.setArbitratMethod(2);
65
-                    //修改案件状态为待书面审理
66
-                    caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
67
-                    // 新增日志
68
-                    CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
62
+                //修改案件状态为待修改开庭时间
63
+                caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
64
+                // 新增日志
65
+                CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
69 66
 
70
-                }
71 67
             } else {
72
-                if (arbitratMethod == 2) {
73
-                    //修改案件状态为待书面审理
74
-                    caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
75
-                    // 新增日志
76
-                    CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
68
+                caseApplication1.setArbitratMethod(2);
69
+                //修改案件状态为待书面审理
70
+                caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
71
+                // 新增日志
72
+                CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
77 73
 
78
-                } else {
79
-                    //修改案件状态为待开庭审理
74
+            }
75
+        } else {
76
+            if (arbitratMethod == 2) {
77
+                //修改案件状态为待书面审理
78
+                caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
79
+                // 新增日志
80
+                CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
81
+
82
+            } else {
83
+                //修改案件状态为待开庭审理
80 84
 //                caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_OPENCOURT_HEAR);
81
-                    //修改案件状态为待修改开庭时间
82
-                    caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
83
-                    // 新增日志
84
-                    CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
85
+                //修改案件状态为待修改开庭时间
86
+                caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
87
+                // 新增日志
88
+                CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
85 89
 
86
-                }
87 90
             }
88
-            int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
89
-            if (i > 0) {
90
-                String arbitratMethodStr = caseApplication1.getArbitratMethod() == 1 ? "开庭审理" : "书面审理";
91
-                //发送短信通知
92
-                SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
91
+        }
92
+        int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
93
+        if (i > 0) {
94
+            String arbitratMethodStr = caseApplication1.getArbitratMethod() == 1 ? "开庭审理" : "书面审理";
95
+            //发送短信通知
96
+            SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
93 97
 
94
-                CaseAffiliate caseAffiliate = new CaseAffiliate();
95
-                caseAffiliate.setCaseAppliId(caseApplication1.getId());
96
-                List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);            //获取案件关联人信息
97
-                if (caseAffiliates != null && caseAffiliates.size() > 0) {
98
-                    for (CaseAffiliate affiliate : caseAffiliates) {
99
-                        //获取身份类型
100
-                        int identityType = affiliate.getIdentityType();
101
-                        if (identityType == 1) {    //申请人
102
-                            request.setTemplateId("1931000");
103
-                            request.setPhone(affiliate.getContactTelphone());
104
-                            // 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
105
-                            // 1931000 普通短信 确定仲裁方式通知 尊敬的{1}用户,您的{2}仲裁案件,仲裁方式已确定为{3},请知晓,如非本人操作,请忽略本短信。
106
-                            String name = affiliate.getName();
107
-                            request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
108
-                            SmsUtils.sendSms(request);
109
-                        } else {       //被申请人
110
-                            request.setTemplateId("1928006");
111
-                            request.setPhone(affiliate.getContactTelphone());
112
-                            // 模板id1928006 普通短信 案件应诉通知 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击https://phmapp.xayunmei.com选择是否应诉。
113
-                            String name = affiliate.getName();
114
-                            request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
115
-                            SmsUtils.sendSms(request);
116
-                        }
98
+            CaseAffiliate caseAffiliate = new CaseAffiliate();
99
+            caseAffiliate.setCaseAppliId(caseApplication1.getId());
100
+            List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);            //获取案件关联人信息
101
+            if (caseAffiliates != null && caseAffiliates.size() > 0) {
102
+                for (CaseAffiliate affiliate : caseAffiliates) {
103
+                    request.setTemplateId("1931000");
104
+                    request.setPhone(affiliate.getContactTelphone());
105
+                    // 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
106
+                    // 1931000 尊敬的{1}用户,您的{2}仲裁案件,仲裁方式已确定为{3},请知晓,如非本人操作,请忽略本短信。
107
+                    String name = affiliate.getName();
108
+                    request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
109
+                    if (SmsUtils.sendSms(request)) {
110
+                        //保存短信发送记录
111
+                        SmsSendRecord smsSendRecord = new SmsSendRecord();
112
+                        smsSendRecord.setCaseId(caseApplication.getId());
113
+                        smsSendRecord.setCaseNum(caseApplication1.getCaseNum());
114
+                        smsSendRecord.setPhone(request.getPhone());
115
+                        smsSendRecord.setSendTime(new Date());
116
+                        String content = "尊敬的" + name + "用户,您的" + caseNum + "仲裁案件,仲裁方式已确定为" + arbitratMethodStr + ",请知晓,如非本人操作,请忽略本短信。";
117
+                        smsSendRecord.setSendContent(content);
118
+                        smsSendRecord.setCreateBy(getUsername());
119
+                        smsRecordMapper.saveSmsSendRecord(smsSendRecord);
117 120
                     }
118 121
                 }
119
-
120
-                return AjaxResult.success("审核成功");
121 122
             }
122
-        return AjaxResult.success();
123
-    }
124 123
 
125
-    /**
126
-     * 发送短信
127
-     * @param caseApplicationById
128
-     * @param request
129
-     * @param caseNum
130
-     */
131
-    private void sendArbitratMethodMes(CaseApplication caseApplicationById, SmsUtils.SendSmsRequest request, String caseNum) {
132
-        String arbitratMethodStr = caseApplicationById.getArbitratMethod() == 1 ? "开庭审理" : "书面审理";
133
-
134
-        CaseAffiliate caseAffiliate = new CaseAffiliate();
135
-        caseAffiliate.setCaseAppliId(caseApplicationById.getId());
136
-        List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);            //获取案件关联人信息
137
-        if (CollectionUtil.isEmpty(caseAffiliates)) {
138
-            return;
139
-        }
140
-        for (CaseAffiliate affiliate : caseAffiliates) {
141
-            //获取身份类型
142
-            int identityType = affiliate.getIdentityType();
143
-            if (identityType == 1) {    //申请人
144
-                request.setTemplateId("1931000");
145
-                request.setPhone(affiliate.getContactTelphone());
146
-                // 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
147
-                // 1931000 普通短信 确定仲裁方式通知 尊敬的{1}用户,您的{2}仲裁案件,仲裁方式已确定为{3},请知晓,如非本人操作,请忽略本短信。
148
-                String name = affiliate.getName();
149
-                request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
150
-                SmsUtils.sendSms(request);
151
-            } else {       //被申请人
152
-                request.setTemplateId("1928006");
153
-                request.setPhone(affiliate.getContactTelphone());
154
-                // 模板id1928006 普通短信 案件应诉通知 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击https://phmapp.xayunmei.com选择是否应诉。
155
-                String name = affiliate.getName();
156
-                request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
157
-                SmsUtils.sendSms(request);
158
-            }
124
+            return AjaxResult.success("审核成功");
159 125
         }
126
+        return AjaxResult.success();
160 127
     }
161 128
 
162 129
     @Override
@@ -170,36 +137,36 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
170 137
 
171 138
         //先判断案件是否已经提交过仲裁结果
172 139
         ArbitrateRecord arbitrateRecord1 = arbitrateRecordMapper.selectArbitrateRecord(arbitrateRecord);
173
-        if (arbitrateRecord1!=null){
140
+        if (arbitrateRecord1 != null) {
174 141
             int i = arbitrateRecordMapper.updataArbitrateRecord(arbitrateRecord);
175
-            if (i>0){
142
+            if (i > 0) {
176 143
                 //案件日志表里添加数据
177 144
                 CaseLogRecord caseLogRecord = new CaseLogRecord();
178 145
                 caseLogRecord.setCaseAppliId(caseApplication1.getId());
179 146
                 caseLogRecord.setCaseNode(caseApplication1.getCaseStatus());
180
-                if (createBy!=null){
147
+                if (createBy != null) {
181 148
                     caseLogRecord.setCreateBy(createBy);
182 149
                 }
183 150
                 caseLogRecordMapper.insertCaseLogRecord(caseLogRecord);
184 151
                 // 新增日志
185
-                CaseLogUtils.insertCaseLog(caseApplication.getId(),CaseApplicationConstants.GENERATED_ARBITRATION,"");
152
+                CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.GENERATED_ARBITRATION, "");
186 153
 
187 154
             }
188
-        }else {
155
+        } else {
189 156
             //提交仲裁结果
190
-            int i =  arbitrateRecordMapper.insertArbitrateRecord(arbitrateRecord);
157
+            int i = arbitrateRecordMapper.insertArbitrateRecord(arbitrateRecord);
191 158
 
192
-            if (i>0){
159
+            if (i > 0) {
193 160
                 //案件日志表里添加数据
194 161
                 CaseLogRecord caseLogRecord = new CaseLogRecord();
195 162
                 caseLogRecord.setCaseAppliId(caseApplication1.getId());
196 163
                 caseLogRecord.setCaseNode(caseApplication1.getCaseStatus());
197
-                if (createBy!=null){
164
+                if (createBy != null) {
198 165
                     caseLogRecord.setCreateBy(createBy);
199 166
                 }
200 167
                 caseLogRecordMapper.insertCaseLogRecord(caseLogRecord);
201 168
                 // 新增日志
202
-                CaseLogUtils.insertCaseLog(caseApplication.getId(),CaseApplicationConstants.GENERATED_ARBITRATION,"");
169
+                CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.GENERATED_ARBITRATION, "");
203 170
 
204 171
             }
205 172
         }

+ 37
- 13
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CasePaymentServiceImpl.java Прегледај датотеку

@@ -4,23 +4,19 @@ package com.ruoyi.wisdomarbitrate.service.impl;
4 4
 import cn.hutool.core.collection.CollectionUtil;
5 5
 import com.ruoyi.ElegentPay;
6 6
 import com.ruoyi.common.constant.CaseApplicationConstants;
7
+import com.ruoyi.common.constant.HttpStatus;
7 8
 import com.ruoyi.common.core.domain.AjaxResult;
8 9
 import com.ruoyi.common.core.domain.model.LoginUser;
10
+import com.ruoyi.common.exception.ServiceException;
9 11
 import com.ruoyi.common.utils.SecurityUtils;
10
-import com.ruoyi.wisdomarbitrate.domain.CaseAttach;
12
+import com.ruoyi.wisdomarbitrate.domain.*;
11 13
 import com.ruoyi.wisdomarbitrate.domain.dto.CaseConfirmPayDTO;
12
-import com.ruoyi.wisdomarbitrate.mapper.CaseAttachMapper;
14
+import com.ruoyi.wisdomarbitrate.mapper.*;
13 15
 import com.ruoyi.wisdomarbitrate.utils.CaseLogUtils;
14 16
 import com.ruoyi.common.utils.SmsUtils;
15 17
 import com.ruoyi.dto.PayRequest;
16 18
 import com.ruoyi.dto.PayResponse;
17
-import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate;
18
-import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
19
-import com.ruoyi.wisdomarbitrate.domain.CasePaymentRecord;
20 19
 import com.ruoyi.wisdomarbitrate.domain.dto.CasePayDTO;
21
-import com.ruoyi.wisdomarbitrate.mapper.CaseAffiliateMapper;
22
-import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
23
-import com.ruoyi.wisdomarbitrate.mapper.CasePaymentRecordMapper;
24 20
 import com.ruoyi.wisdomarbitrate.service.ICasePaymentService;
25 21
 import org.springframework.beans.factory.annotation.Autowired;
26 22
 import org.springframework.stereotype.Service;
@@ -28,6 +24,7 @@ import org.springframework.transaction.annotation.Transactional;
28 24
 
29 25
 import java.util.Date;
30 26
 import java.util.List;
27
+import static com.ruoyi.common.utils.SecurityUtils.getUsername;
31 28
 
32 29
 @Service
33 30
 public class CasePaymentServiceImpl implements ICasePaymentService {
@@ -37,6 +34,8 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
37 34
     private final CaseAffiliateMapper caseAffiliateMapper;
38 35
     @Autowired
39 36
     private  CaseAttachMapper caseAttachMapper;
37
+    @Autowired
38
+    private SmsRecordMapper smsRecordMapper;
40 39
 
41 40
     @Autowired
42 41
     public CasePaymentServiceImpl(ElegentPay elegentPay
@@ -116,17 +115,39 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
116 115
                         request.setPhone(affiliate.getContactTelphone());
117 116
                         request.setTemplateId("1928003"); //传入申请人模板id
118 117
                         // 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
119
-                        // 模板id:1928003 普通短信 案件受理通知 尊敬的{1}用户,您的{2}案件{3}已成功受理。
118
+                        // 模板id:1928003 普通短信 案件受理通知
120 119
                         String name = affiliate.getName();
121 120
                         request.setTemplateParamSet(new String[]{name, caseName, caseNum});
122
-                        SmsUtils.sendSms(request);
121
+                        if (SmsUtils.sendSms(request)){
122
+                            //保存短信发送记录
123
+                            SmsSendRecord smsSendRecord = new SmsSendRecord();
124
+                            smsSendRecord.setCaseId(caseApplication.getId());
125
+                            smsSendRecord.setCaseNum(caseNum);
126
+                            smsSendRecord.setPhone(request.getPhone());
127
+                            smsSendRecord.setSendTime(new Date());
128
+                            String content="尊敬的"+name+"用户,您的"+caseName+"案件"+caseNum+"已成功受理。";
129
+                            smsSendRecord.setSendContent(content);
130
+                            smsSendRecord.setCreateBy(getUsername());
131
+                            smsRecordMapper.saveSmsSendRecord(smsSendRecord);
132
+                        }
123 133
                     } else {       //被申请人
124 134
                         request.setPhone(affiliate.getContactTelphone());
125
-                        request.setTemplateId("1928006");
126
-                        // 模板id1928006 普通短信 案件应诉通知 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击https://phmapp.xayunmei.com选择是否应诉。
135
+                        request.setTemplateId("1952840");
136
+                        // 1952840 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击链接:https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 选择是否应诉。如非本人操作,请忽略本短信
127 137
                         String name = affiliate.getName();
128 138
                         request.setTemplateParamSet(new String[]{name, caseName, caseNum});
129
-                        SmsUtils.sendSms(request);
139
+                        if (SmsUtils.sendSms(request)){
140
+                            //保存短信发送记录
141
+                            SmsSendRecord smsSendRecord = new SmsSendRecord();
142
+                            smsSendRecord.setCaseId(caseApplication.getId());
143
+                            smsSendRecord.setCaseNum(caseNum);
144
+                            smsSendRecord.setPhone(request.getPhone());
145
+                            smsSendRecord.setSendTime(new Date());
146
+                            String content="尊敬的"+name+"用户,您的"+caseName+"案件"+caseNum+"已成功受理,请点击链接:https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 选择是否应诉。如非本人操作,请忽略本短信";
147
+                            smsSendRecord.setSendContent(content);
148
+                            smsSendRecord.setCreateBy(getUsername());
149
+                            smsRecordMapper.saveSmsSendRecord(smsSendRecord);
150
+                        }
130 151
                     }
131 152
                 }
132 153
                 // 新增日志
@@ -164,4 +185,7 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
164 185
 
165 186
         return AjaxResult.success("确认缴费成功");
166 187
     }
188
+
189
+
190
+
167 191
 }

+ 52
- 0
ruoyi-system/src/main/resources/mapper/wisdomarbitrate/SmsRecordMapper.xml Прегледај датотеку

@@ -0,0 +1,52 @@
1
+<?xml version="1.0" encoding="UTF-8" ?>
2
+<!DOCTYPE mapper
3
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5
+
6
+<mapper namespace="com.ruoyi.wisdomarbitrate.mapper.SmsRecordMapper">
7
+    <resultMap type="SmsSendRecord" id="SmsSendRecordResult">
8
+        <id     property="id"       column="id"      />
9
+        <result property="caseId"       column="case_appli_id"      />
10
+        <result property="caseNum"       column="case_num"      />
11
+        <result property="phone"     column="phone"    />
12
+        <result property="sendTime"     column="send_time"    />
13
+        <result property="sendContent"        column="send_content"        />
14
+        <result property="createTime"   column="create_time"  />
15
+        <result property="updateTime"   column="update_time"  />
16
+        <result property="createBy"   column="create_by"  />
17
+        <result property="updateBy"   column="update_by"  />
18
+    </resultMap>
19
+    <insert id="saveSmsSendRecord" parameterType="SmsSendRecord" useGeneratedKeys="true" keyProperty="id">
20
+
21
+        insert into sms_send_record(
22
+        <if test="caseId != null ">case_appli_id,</if>
23
+        <if test="caseNum != null ">case_num,</if>
24
+        <if test="phone != null and phone != ''">phone,</if>
25
+        <if test="sendTime != null ">send_time,</if>
26
+        <if test="sendContent != null ">send_content,</if>
27
+        <if test="createBy != null and createBy != ''">create_by,</if>
28
+        create_time
29
+        )values(
30
+        <if test="caseId != null ">#{caseId},</if>
31
+        <if test="caseNum != null ">#{caseNum},</if>
32
+        <if test="phone != null and phone != ''">#{phone},</if>
33
+        <if test="sendTime != null ">#{sendTime},</if>
34
+        <if test="sendContent != null ">#{sendContent},</if>
35
+        <if test="createBy != null  and createBy != ''">#{createBy},</if>
36
+        sysdate()
37
+        )
38
+    </insert>
39
+
40
+    <select id="getSmsSendRecord" parameterType="SmsSendRecord" resultMap="SmsSendRecordResult">
41
+
42
+        select id ,case_appli_id ,case_num ,phone ,send_time ,send_content
43
+        from sms_send_record
44
+        <where>
45
+            <if test="caseNum != null and caseNum != ''">
46
+                AND case_num = #{caseNum}
47
+            </if>
48
+        </where>
49
+        order by send_time desc
50
+    </select>
51
+</mapper>
52
+