This commit is contained in:
qitz
2023-10-27 09:58:13 +08:00
8 changed files with 299 additions and 136 deletions
@@ -9,10 +9,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.EsignDemoException; import com.ruoyi.common.exception.EsignDemoException;
import com.ruoyi.common.utils.WxAppletNotifyUtils; import com.ruoyi.common.utils.WxAppletNotifyUtils;
import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord; import com.ruoyi.wisdomarbitrate.domain.*;
import com.ruoyi.wisdomarbitrate.domain.BatchCaseApplication;
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO; import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount; import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount;
import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService; import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService;
@@ -336,4 +333,16 @@ public class CaseApplicationController extends BaseController {
return AjaxResult.success(caseApplicationService.updateCaseLockStatus(caseApplication)); return AjaxResult.success(caseApplicationService.updateCaseLockStatus(caseApplication));
} }
/**
* 查询短信发送记录
* @param smsSendRecord
* @return
*/
@PostMapping("/smsRecord")
public TableDataInfo getSmsSendRecord(@RequestBody SmsSendRecord smsSendRecord){
startPage();
List<SmsSendRecord> list = caseApplicationService.getSmsSendRecord(smsSendRecord);
return getDataTable(list);
}
} }
@@ -0,0 +1,40 @@
package com.ruoyi.wisdomarbitrate.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SmsSendRecord extends BaseEntity {
/**
* ID
*/
private Long id;
/**
* 案件申请id
*/
private Long caseId;
/**
* 案件编号
*/
private String caseNum;
/**
* 手机号
*/
private String phone;
/**
* 发送时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date sendTime;
/**
* 发送内容
*/
private String sendContent;
}
@@ -0,0 +1,14 @@
package com.ruoyi.wisdomarbitrate.mapper;
import com.ruoyi.wisdomarbitrate.domain.SmsSendRecord;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface SmsRecordMapper {
int saveSmsSendRecord(SmsSendRecord smsSendRecord);
List<SmsSendRecord> getSmsSendRecord(SmsSendRecord smsSendRecord);
}
@@ -2,10 +2,7 @@ package com.ruoyi.wisdomarbitrate.service;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.exception.EsignDemoException; import com.ruoyi.common.exception.EsignDemoException;
import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord; import com.ruoyi.wisdomarbitrate.domain.*;
import com.ruoyi.wisdomarbitrate.domain.BatchCaseApplication;
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO; import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount; import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
@@ -75,4 +72,10 @@ public interface ICaseApplicationService {
int updateCaseLockStatus(CaseApplication caseApplication); int updateCaseLockStatus(CaseApplication caseApplication);
AjaxResult uploadZipFile(MultipartFile file, Long id, String username, Long userId); AjaxResult uploadZipFile(MultipartFile file, Long id, String username, Long userId);
/**
* 查询短信发送记录
* @param smsSendRecord
* @return
*/
List<SmsSendRecord> getSmsSendRecord(SmsSendRecord smsSendRecord);
} }
@@ -87,6 +87,8 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
private CaseLogRecordMapper caseLogRecordMapper; private CaseLogRecordMapper caseLogRecordMapper;
@Autowired @Autowired
private CaseEvidenceDirectoryMapper caseEvidenceDirectoryMapper; private CaseEvidenceDirectoryMapper caseEvidenceDirectoryMapper;
@Autowired
private SmsRecordMapper smsRecordMapper;
// 手机号正则 // 手机号正则
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}$"); 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}$");
@@ -458,6 +460,11 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
} }
@Override
public List<SmsSendRecord> getSmsSendRecord(SmsSendRecord smsSendRecord) {
return smsRecordMapper.getSmsSendRecord(smsSendRecord);
}
private List<CaseLogRecord> getNofinishCasenode(Integer caseStatus) { private List<CaseLogRecord> getNofinishCasenode(Integer caseStatus) {
CaseLogRecord caseLogRecord1 = new CaseLogRecord(); CaseLogRecord caseLogRecord1 = new CaseLogRecord();
caseLogRecord1.setCaseNodeName("立案审查"); caseLogRecord1.setCaseNodeName("立案审查");
@@ -959,12 +966,26 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
} }
if (insertUserRow > 0) { if (insertUserRow > 0) {
caseAffiliate.setApplicantAgentUserId(String.valueOf(agentUser.getUserId())); caseAffiliate.setApplicantAgentUserId(String.valueOf(agentUser.getUserId()));
// 明天改下模板id:1956159 普通短信 通知用户认证注册 尊敬的{1},您的代理的案件已接入仲裁系统,复制访问https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 进入小程序进行认证注册。如非本人操作,请忽略本短信 // 尊敬的{1},您的代理的案件已接入仲裁系统,复制访问https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 进入小程序进行认证注册。如非本人操作,请忽略本短信
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest(); SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
request.setTemplateId("1956159"); request.setTemplateId("1956159");
request.setPhone(agentUser.getPhonenumber()); request.setPhone(agentUser.getPhonenumber());
request.setTemplateParamSet(new String[]{agentUser.getNickName()}); request.setTemplateParamSet(new String[]{agentUser.getNickName()});
SmsUtils.sendSms(request); if (SmsUtils.sendSms(request)){
//保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord();
smsSendRecord.setCaseId(caseAffiliate.getCaseAppliId());
CaseApplication caseApplication = new CaseApplication();
caseApplication.setId(caseAffiliate.getCaseAppliId());
caseApplication = caseApplicationMapper.selectCaseApplication(caseApplication);
smsSendRecord.setCaseNum(caseApplication.getCaseNum());
smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date());
String content="尊敬的"+agentUser.getNickName()+",您的代理的案件已接入仲裁系统,复制访问https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 进入小程序进行认证注册。如非本人操作,请忽略本短信";
smsSendRecord.setSendContent(content);
smsSendRecord.setCreateBy(getUsername());
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
}
} }
} else if (null != agentUser.getDeptId() && !String.valueOf(agentUser.getDeptId()).equals(caseAffiliate.getApplicationOrganId())) { } else if (null != agentUser.getDeptId() && !String.valueOf(agentUser.getDeptId()).equals(caseAffiliate.getApplicationOrganId())) {
// return "该申请代理人已在"+agentUser.getDeptName()+"申请机构下存在,请检查填写信息是否正确"; // return "该申请代理人已在"+agentUser.getDeptName()+"申请机构下存在,请检查填写信息是否正确";
@@ -1741,11 +1762,21 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
//发送短信通知 //发送短信通知
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest(); SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
request.setTemplateId("1952136"); request.setTemplateId("1952136");
// 1948332 普通短信 开庭审理房间号通知 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},请知晓,如非本人操作,请忽略本短信。 // 1948332 普通短信 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},请在微信内打开https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 请知晓,如非本人操作,请忽略本短信。
request.setPhone(caseAffiliate.getContactTelphone()); request.setPhone(caseAffiliate.getContactTelphone());
request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo()}); request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo()});
SmsUtils.sendSms(request); if (SmsUtils.sendSms(request)){
//保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord();
smsSendRecord.setCaseId(messageVO.getId());
smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum());
smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date());
String content="尊敬的"+caseAffiliate.getName()+"用户,您的"+ caseApplicationselect.getCaseNum()+"仲裁案件,开庭审理房间号为"+ messageVO.getRoomNo()+",请在微信内打开https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 请知晓,如非本人操作,请忽略本短信。";
smsSendRecord.setSendContent(content);
smsSendRecord.setCreateBy(getUsername());
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
}
return "短信发送成功"; return "短信发送成功";
} }
@@ -2026,7 +2057,18 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
// 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。 // 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
String name = user.getNickName(); String name = user.getNickName();
request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr}); request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
SmsUtils.sendSms(request); if (SmsUtils.sendSms(request)){
//保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord();
smsSendRecord.setCaseId(caseApplicationselect.getId());
smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum());
smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date());
String content="尊敬的"+name+"用户,您的"+caseNum+"仲裁案件,开庭日期已确定为"+hearDatestr+",请知晓,如非本人操作,请忽略本短信。";
smsSendRecord.setSendContent(content);
smsSendRecord.setCreateBy(getUsername());
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
}
} }
} }
@@ -2050,7 +2092,18 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
// 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。 // 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
String name = caseAffiliateselect.getName(); String name = caseAffiliateselect.getName();
request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr}); request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
SmsUtils.sendSms(request); if (SmsUtils.sendSms(request)){
//保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord();
smsSendRecord.setCaseId(caseApplication.getId());
smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum());
smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date());
String content="尊敬的"+name+"用户,您的"+caseNum+"仲裁案件,开庭日期已确定为"+hearDatestr+",请知晓,如非本人操作,请忽略本短信。";
smsSendRecord.setSendContent(content);
smsSendRecord.setCreateBy(getUsername());
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
}
} }
} }
// 新增日志 // 新增日志
@@ -2223,6 +2276,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
caseApplicationNew.setFeePayable(caseApplicationinsertDiffer.getFeePayable()); caseApplicationNew.setFeePayable(caseApplicationinsertDiffer.getFeePayable());
} }
// @Transactional // @Transactional
// public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException { // public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
// //
@@ -24,6 +24,8 @@ import java.util.*;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.ruoyi.common.utils.SecurityUtils.getUsername;
@Service @Service
public class CaseArbitrateServiceImpl implements ICaseArbitrateService { public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
@Autowired @Autowired
@@ -36,6 +38,8 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
private ArbitrateRecordMapper arbitrateRecordMapper; private ArbitrateRecordMapper arbitrateRecordMapper;
@Autowired @Autowired
private CaseAttachMapper caseAttachMapper; private CaseAttachMapper caseAttachMapper;
@Autowired
private SmsRecordMapper smsRecordMapper;
@Override @Override
@Transactional @Transactional
@@ -46,119 +50,82 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
return AjaxResult.success(); return AjaxResult.success();
} }
Integer arbitratMethod = caseApplication1.getArbitratMethod(); Integer arbitratMethod = caseApplication1.getArbitratMethod();
if(arbitratMethod==null) { if (arbitratMethod == null) {
return AjaxResult.error("请先指定仲裁方式"); return AjaxResult.error("请先指定仲裁方式");
} }
String caseNum = caseApplication1.getCaseNum(); String caseNum = caseApplication1.getCaseNum();
if (opinion == 0) { //拒绝 if (opinion == 0) { //拒绝
if (arbitratMethod == 2) { if (arbitratMethod == 2) {
caseApplication1.setArbitratMethod(1); // 更改仲裁方式 caseApplication1.setArbitratMethod(1); // 更改仲裁方式
//修改案件状态为待开庭审理 //修改案件状态为待开庭审理
// caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_OPENCOURT_HEAR); // caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_OPENCOURT_HEAR);
//修改案件状态为待修改开庭时间 //修改案件状态为待修改开庭时间
caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE); caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
// 新增日志 // 新增日志
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, ""); CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
} else {
caseApplication1.setArbitratMethod(2);
//修改案件状态为待书面审理
caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
// 新增日志
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
}
} else { } else {
if (arbitratMethod == 2) { caseApplication1.setArbitratMethod(2);
//修改案件状态为待书面审理 //修改案件状态为待书面审理
caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR); caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
// 新增日志 // 新增日志
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, ""); CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
} else {
//修改案件状态为待开庭审理
// caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_OPENCOURT_HEAR);
//修改案件状态为待修改开庭时间
caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
// 新增日志
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
}
} }
int i = caseApplicationMapper.submitCaseApplication(caseApplication1); } else {
if (i > 0) { if (arbitratMethod == 2) {
String arbitratMethodStr = caseApplication1.getArbitratMethod() == 1 ? "开庭审理" : "书面审理"; //修改案件状态为待书面审理
//发送短信通知 caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest(); // 新增日志
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
CaseAffiliate caseAffiliate = new CaseAffiliate(); } else {
caseAffiliate.setCaseAppliId(caseApplication1.getId()); //修改案件状态为待开庭审理
List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate); //获取案件关联人信息 // caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_OPENCOURT_HEAR);
if (caseAffiliates != null && caseAffiliates.size() > 0) { //修改案件状态为待修改开庭时间
for (CaseAffiliate affiliate : caseAffiliates) { caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
//获取身份类型 // 新增日志
int identityType = affiliate.getIdentityType(); CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
if (identityType == 1) { //申请人
request.setTemplateId("1931000"); }
request.setPhone(affiliate.getContactTelphone()); }
// 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置 int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
// 1931000 普通短信 确定仲裁方式通知 尊敬的{1}用户,您的{2}仲裁案件,仲裁方式已确定为{3},请知晓,如非本人操作,请忽略本短信。 if (i > 0) {
String name = affiliate.getName(); String arbitratMethodStr = caseApplication1.getArbitratMethod() == 1 ? "开庭审理" : "书面审理";
request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr}); //发送短信通知
SmsUtils.sendSms(request); SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
} else { //被申请人
request.setTemplateId("1928006"); CaseAffiliate caseAffiliate = new CaseAffiliate();
request.setPhone(affiliate.getContactTelphone()); caseAffiliate.setCaseAppliId(caseApplication1.getId());
// 模板id1928006 普通短信 案件应诉通知 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击https://phmapp.xayunmei.com选择是否应诉。 List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate); //获取案件关联人信息
String name = affiliate.getName(); if (caseAffiliates != null && caseAffiliates.size() > 0) {
request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr}); for (CaseAffiliate affiliate : caseAffiliates) {
SmsUtils.sendSms(request); request.setTemplateId("1931000");
} request.setPhone(affiliate.getContactTelphone());
// 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
// 1931000 尊敬的{1}用户,您的{2}仲裁案件,仲裁方式已确定为{3},请知晓,如非本人操作,请忽略本短信。
String name = affiliate.getName();
request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
if (SmsUtils.sendSms(request)) {
//保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord();
smsSendRecord.setCaseId(caseApplication.getId());
smsSendRecord.setCaseNum(caseApplication1.getCaseNum());
smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date());
String content = "尊敬的" + name + "用户,您的" + caseNum + "仲裁案件,仲裁方式已确定为" + arbitratMethodStr + ",请知晓,如非本人操作,请忽略本短信。";
smsSendRecord.setSendContent(content);
smsSendRecord.setCreateBy(getUsername());
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
} }
} }
return AjaxResult.success("审核成功");
} }
return AjaxResult.success("审核成功");
}
return AjaxResult.success(); return AjaxResult.success();
} }
/**
* 发送短信
* @param caseApplicationById
* @param request
* @param caseNum
*/
private void sendArbitratMethodMes(CaseApplication caseApplicationById, SmsUtils.SendSmsRequest request, String caseNum) {
String arbitratMethodStr = caseApplicationById.getArbitratMethod() == 1 ? "开庭审理" : "书面审理";
CaseAffiliate caseAffiliate = new CaseAffiliate();
caseAffiliate.setCaseAppliId(caseApplicationById.getId());
List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate); //获取案件关联人信息
if (CollectionUtil.isEmpty(caseAffiliates)) {
return;
}
for (CaseAffiliate affiliate : caseAffiliates) {
//获取身份类型
int identityType = affiliate.getIdentityType();
if (identityType == 1) { //申请人
request.setTemplateId("1931000");
request.setPhone(affiliate.getContactTelphone());
// 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
// 1931000 普通短信 确定仲裁方式通知 尊敬的{1}用户,您的{2}仲裁案件,仲裁方式已确定为{3},请知晓,如非本人操作,请忽略本短信。
String name = affiliate.getName();
request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
SmsUtils.sendSms(request);
} else { //被申请人
request.setTemplateId("1928006");
request.setPhone(affiliate.getContactTelphone());
// 模板id1928006 普通短信 案件应诉通知 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击https://phmapp.xayunmei.com选择是否应诉。
String name = affiliate.getName();
request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
SmsUtils.sendSms(request);
}
}
}
@Override @Override
@Transactional @Transactional
public AjaxResult writtenHear(ArbitrateRecord arbitrateRecord) { public AjaxResult writtenHear(ArbitrateRecord arbitrateRecord) {
@@ -170,36 +137,36 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
//先判断案件是否已经提交过仲裁结果 //先判断案件是否已经提交过仲裁结果
ArbitrateRecord arbitrateRecord1 = arbitrateRecordMapper.selectArbitrateRecord(arbitrateRecord); ArbitrateRecord arbitrateRecord1 = arbitrateRecordMapper.selectArbitrateRecord(arbitrateRecord);
if (arbitrateRecord1!=null){ if (arbitrateRecord1 != null) {
int i = arbitrateRecordMapper.updataArbitrateRecord(arbitrateRecord); int i = arbitrateRecordMapper.updataArbitrateRecord(arbitrateRecord);
if (i>0){ if (i > 0) {
//案件日志表里添加数据 //案件日志表里添加数据
CaseLogRecord caseLogRecord = new CaseLogRecord(); CaseLogRecord caseLogRecord = new CaseLogRecord();
caseLogRecord.setCaseAppliId(caseApplication1.getId()); caseLogRecord.setCaseAppliId(caseApplication1.getId());
caseLogRecord.setCaseNode(caseApplication1.getCaseStatus()); caseLogRecord.setCaseNode(caseApplication1.getCaseStatus());
if (createBy!=null){ if (createBy != null) {
caseLogRecord.setCreateBy(createBy); caseLogRecord.setCreateBy(createBy);
} }
caseLogRecordMapper.insertCaseLogRecord(caseLogRecord); caseLogRecordMapper.insertCaseLogRecord(caseLogRecord);
// 新增日志 // 新增日志
CaseLogUtils.insertCaseLog(caseApplication.getId(),CaseApplicationConstants.GENERATED_ARBITRATION,""); CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.GENERATED_ARBITRATION, "");
} }
}else { } else {
//提交仲裁结果 //提交仲裁结果
int i = arbitrateRecordMapper.insertArbitrateRecord(arbitrateRecord); int i = arbitrateRecordMapper.insertArbitrateRecord(arbitrateRecord);
if (i>0){ if (i > 0) {
//案件日志表里添加数据 //案件日志表里添加数据
CaseLogRecord caseLogRecord = new CaseLogRecord(); CaseLogRecord caseLogRecord = new CaseLogRecord();
caseLogRecord.setCaseAppliId(caseApplication1.getId()); caseLogRecord.setCaseAppliId(caseApplication1.getId());
caseLogRecord.setCaseNode(caseApplication1.getCaseStatus()); caseLogRecord.setCaseNode(caseApplication1.getCaseStatus());
if (createBy!=null){ if (createBy != null) {
caseLogRecord.setCreateBy(createBy); caseLogRecord.setCreateBy(createBy);
} }
caseLogRecordMapper.insertCaseLogRecord(caseLogRecord); caseLogRecordMapper.insertCaseLogRecord(caseLogRecord);
// 新增日志 // 新增日志
CaseLogUtils.insertCaseLog(caseApplication.getId(),CaseApplicationConstants.GENERATED_ARBITRATION,""); CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.GENERATED_ARBITRATION, "");
} }
} }
@@ -4,23 +4,19 @@ package com.ruoyi.wisdomarbitrate.service.impl;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import com.ruoyi.ElegentPay; import com.ruoyi.ElegentPay;
import com.ruoyi.common.constant.CaseApplicationConstants; import com.ruoyi.common.constant.CaseApplicationConstants;
import com.ruoyi.common.constant.HttpStatus;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.wisdomarbitrate.domain.CaseAttach; import com.ruoyi.wisdomarbitrate.domain.*;
import com.ruoyi.wisdomarbitrate.domain.dto.CaseConfirmPayDTO; import com.ruoyi.wisdomarbitrate.domain.dto.CaseConfirmPayDTO;
import com.ruoyi.wisdomarbitrate.mapper.CaseAttachMapper; import com.ruoyi.wisdomarbitrate.mapper.*;
import com.ruoyi.wisdomarbitrate.utils.CaseLogUtils; import com.ruoyi.wisdomarbitrate.utils.CaseLogUtils;
import com.ruoyi.common.utils.SmsUtils; import com.ruoyi.common.utils.SmsUtils;
import com.ruoyi.dto.PayRequest; import com.ruoyi.dto.PayRequest;
import com.ruoyi.dto.PayResponse; import com.ruoyi.dto.PayResponse;
import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate;
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
import com.ruoyi.wisdomarbitrate.domain.CasePaymentRecord;
import com.ruoyi.wisdomarbitrate.domain.dto.CasePayDTO; import com.ruoyi.wisdomarbitrate.domain.dto.CasePayDTO;
import com.ruoyi.wisdomarbitrate.mapper.CaseAffiliateMapper;
import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
import com.ruoyi.wisdomarbitrate.mapper.CasePaymentRecordMapper;
import com.ruoyi.wisdomarbitrate.service.ICasePaymentService; import com.ruoyi.wisdomarbitrate.service.ICasePaymentService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -28,6 +24,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import static com.ruoyi.common.utils.SecurityUtils.getUsername;
@Service @Service
public class CasePaymentServiceImpl implements ICasePaymentService { public class CasePaymentServiceImpl implements ICasePaymentService {
@@ -37,6 +34,8 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
private final CaseAffiliateMapper caseAffiliateMapper; private final CaseAffiliateMapper caseAffiliateMapper;
@Autowired @Autowired
private CaseAttachMapper caseAttachMapper; private CaseAttachMapper caseAttachMapper;
@Autowired
private SmsRecordMapper smsRecordMapper;
@Autowired @Autowired
public CasePaymentServiceImpl(ElegentPay elegentPay public CasePaymentServiceImpl(ElegentPay elegentPay
@@ -116,17 +115,39 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
request.setPhone(affiliate.getContactTelphone()); request.setPhone(affiliate.getContactTelphone());
request.setTemplateId("1928003"); //传入申请人模板id request.setTemplateId("1928003"); //传入申请人模板id
// 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置 // 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
// 模板id:1928003 普通短信 案件受理通知 尊敬的{1}用户,您的{2}案件{3}已成功受理。 // 模板id:1928003 普通短信 案件受理通知
String name = affiliate.getName(); String name = affiliate.getName();
request.setTemplateParamSet(new String[]{name, caseName, caseNum}); request.setTemplateParamSet(new String[]{name, caseName, caseNum});
SmsUtils.sendSms(request); if (SmsUtils.sendSms(request)){
//保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord();
smsSendRecord.setCaseId(caseApplication.getId());
smsSendRecord.setCaseNum(caseNum);
smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date());
String content="尊敬的"+name+"用户,您的"+caseName+"案件"+caseNum+"已成功受理。";
smsSendRecord.setSendContent(content);
smsSendRecord.setCreateBy(getUsername());
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
}
} else { //被申请人 } else { //被申请人
request.setPhone(affiliate.getContactTelphone()); request.setPhone(affiliate.getContactTelphone());
request.setTemplateId("1928006"); request.setTemplateId("1952840");
// 模板id1928006 普通短信 案件应诉通知 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击https://phmapp.xayunmei.com选择是否应诉。 // 1952840 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击链接:https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 选择是否应诉。如非本人操作,请忽略本短信
String name = affiliate.getName(); String name = affiliate.getName();
request.setTemplateParamSet(new String[]{name, caseName, caseNum}); request.setTemplateParamSet(new String[]{name, caseName, caseNum});
SmsUtils.sendSms(request); if (SmsUtils.sendSms(request)){
//保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord();
smsSendRecord.setCaseId(caseApplication.getId());
smsSendRecord.setCaseNum(caseNum);
smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date());
String content="尊敬的"+name+"用户,您的"+caseName+"案件"+caseNum+"已成功受理,请点击链接:https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 选择是否应诉。如非本人操作,请忽略本短信";
smsSendRecord.setSendContent(content);
smsSendRecord.setCreateBy(getUsername());
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
}
} }
} }
// 新增日志 // 新增日志
@@ -164,4 +185,7 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
return AjaxResult.success("确认缴费成功"); return AjaxResult.success("确认缴费成功");
} }
} }
@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.wisdomarbitrate.mapper.SmsRecordMapper">
<resultMap type="SmsSendRecord" id="SmsSendRecordResult">
<id property="id" column="id" />
<result property="caseId" column="case_appli_id" />
<result property="caseNum" column="case_num" />
<result property="phone" column="phone" />
<result property="sendTime" column="send_time" />
<result property="sendContent" column="send_content" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
<result property="createBy" column="create_by" />
<result property="updateBy" column="update_by" />
</resultMap>
<insert id="saveSmsSendRecord" parameterType="SmsSendRecord" useGeneratedKeys="true" keyProperty="id">
insert into sms_send_record(
<if test="caseId != null ">case_appli_id,</if>
<if test="caseNum != null ">case_num,</if>
<if test="phone != null and phone != ''">phone,</if>
<if test="sendTime != null ">send_time,</if>
<if test="sendContent != null ">send_content,</if>
<if test="createBy != null and createBy != ''">create_by,</if>
create_time
)values(
<if test="caseId != null ">#{caseId},</if>
<if test="caseNum != null ">#{caseNum},</if>
<if test="phone != null and phone != ''">#{phone},</if>
<if test="sendTime != null ">#{sendTime},</if>
<if test="sendContent != null ">#{sendContent},</if>
<if test="createBy != null and createBy != ''">#{createBy},</if>
sysdate()
)
</insert>
<select id="getSmsSendRecord" parameterType="SmsSendRecord" resultMap="SmsSendRecordResult">
select id ,case_appli_id ,case_num ,phone ,send_time ,send_content
from sms_send_record
<where>
<if test="caseNum != null and caseNum != ''">
AND case_num = #{caseNum}
</if>
</where>
order by send_time desc
</select>
</mapper>