|
@@ -1,10 +1,12 @@
|
|
|
package me.zhengjie.application.admin.service.impl;
|
|
package me.zhengjie.application.admin.service.impl;
|
|
|
|
|
|
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
|
import java.util.HashSet;
|
|
import java.util.HashSet;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
|
|
|
|
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
@@ -19,14 +21,17 @@ import me.zhengjie.base.AppBaseResponse;
|
|
|
import me.zhengjie.base.AppResultData;
|
|
import me.zhengjie.base.AppResultData;
|
|
|
import me.zhengjie.base.ResultCode;
|
|
import me.zhengjie.base.ResultCode;
|
|
|
import me.zhengjie.base.plus.AbstractServiceImpl;
|
|
import me.zhengjie.base.plus.AbstractServiceImpl;
|
|
|
|
|
+
|
|
|
import me.zhengjie.base.sms.SmsRequest;
|
|
import me.zhengjie.base.sms.SmsRequest;
|
|
|
import me.zhengjie.base.sms.SmsSendVo;
|
|
import me.zhengjie.base.sms.SmsSendVo;
|
|
|
import me.zhengjie.base.sms.SmsTemplateVo;
|
|
import me.zhengjie.base.sms.SmsTemplateVo;
|
|
|
import me.zhengjie.base.util.BeanCopyUtils;
|
|
import me.zhengjie.base.util.BeanCopyUtils;
|
|
|
import me.zhengjie.dao.mybatis.entity.ContractOrderEntity;
|
|
import me.zhengjie.dao.mybatis.entity.ContractOrderEntity;
|
|
|
|
|
+import me.zhengjie.dao.mybatis.entity.SmsSendLogEntity;
|
|
|
import me.zhengjie.dao.mybatis.entity.SmsTemplateEntity;
|
|
import me.zhengjie.dao.mybatis.entity.SmsTemplateEntity;
|
|
|
import me.zhengjie.dao.mybatis.entity.SysUserEntity;
|
|
import me.zhengjie.dao.mybatis.entity.SysUserEntity;
|
|
|
import me.zhengjie.dao.mybatis.mapper.ContractOrderMapper;
|
|
import me.zhengjie.dao.mybatis.mapper.ContractOrderMapper;
|
|
|
|
|
+import me.zhengjie.dao.mybatis.mapper.ISmsSendLogMapper;
|
|
|
import me.zhengjie.dao.mybatis.mapper.ISmsTemplateDao;
|
|
import me.zhengjie.dao.mybatis.mapper.ISmsTemplateDao;
|
|
|
import me.zhengjie.dao.mybatis.mapper.SysUserMapper;
|
|
import me.zhengjie.dao.mybatis.mapper.SysUserMapper;
|
|
|
|
|
|
|
@@ -51,6 +56,8 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
private SysUserMapper userDao;
|
|
private SysUserMapper userDao;
|
|
|
@Autowired
|
|
@Autowired
|
|
|
ContractOrderMapper contractOrderMapper;
|
|
ContractOrderMapper contractOrderMapper;
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ ISmsSendLogMapper sendLogMapper;
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public AppBaseResponse<List<SmsTemplateEntity>> query(SmsTemplateVo req) {
|
|
public AppBaseResponse<List<SmsTemplateEntity>> query(SmsTemplateVo req) {
|
|
@@ -150,7 +157,7 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
|
|
ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
|
|
|
List<String> param = new ArrayList<String>();
|
|
List<String> param = new ArrayList<String>();
|
|
|
param.add(orderEntity.getContractNo());
|
|
param.add(orderEntity.getContractNo());
|
|
|
- sendCustomerManager(2, orderEntity.getCustomerId(), param);
|
|
|
|
|
|
|
+ sendCustomerManager(2, orderEntity, param);
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -163,7 +170,7 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
List<String> param = new ArrayList<String>();
|
|
List<String> param = new ArrayList<String>();
|
|
|
param.add(orderEntity.getContractNo());
|
|
param.add(orderEntity.getContractNo());
|
|
|
param.add(orderEntity.getReturnReason());
|
|
param.add(orderEntity.getReturnReason());
|
|
|
- sendCustomerManager(3, orderEntity.getCustomerId(), param);
|
|
|
|
|
|
|
+ sendCustomerManager(3, orderEntity, param);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 4---开始公证(待公证) -- 2个公证员
|
|
// 4---开始公证(待公证) -- 2个公证员
|
|
@@ -174,8 +181,14 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
|
|
|
|
|
// 5--提醒审批公证书 2个公证员
|
|
// 5--提醒审批公证书 2个公证员
|
|
|
public void remindSignNotarialCertificate(String businessNo) {
|
|
public void remindSignNotarialCertificate(String businessNo) {
|
|
|
-
|
|
|
|
|
- sendNotary(5, businessNo, "公证员");
|
|
|
|
|
|
|
+ // 保存发送短信
|
|
|
|
|
+ // 查询发送的短信,如果发送过了就不发送
|
|
|
|
|
+ QueryWrapper<SmsSendLogEntity> log = new QueryWrapper<>();
|
|
|
|
|
+ log.eq("business_no", businessNo);
|
|
|
|
|
+ long count = sendLogMapper.selectCount(log);
|
|
|
|
|
+ if (count == 0) {
|
|
|
|
|
+ sendNotary(5, businessNo, "公证书签发");
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 6--公证书签发成功 ---客户经理1个人
|
|
// 6--公证书签发成功 ---客户经理1个人
|
|
@@ -185,7 +198,7 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
|
|
ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
|
|
|
List<String> param = new ArrayList<String>();
|
|
List<String> param = new ArrayList<String>();
|
|
|
param.add(orderEntity.getContractNo());
|
|
param.add(orderEntity.getContractNo());
|
|
|
- sendCustomerManager(6, orderEntity.getCustomerId(), param);
|
|
|
|
|
|
|
+ sendCustomerManager(6, orderEntity, param);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 7---公证审批未通过---客户经理1个人
|
|
// 7---公证审批未通过---客户经理1个人
|
|
@@ -196,24 +209,31 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
List<String> param = new ArrayList<String>();
|
|
List<String> param = new ArrayList<String>();
|
|
|
param.add(orderEntity.getContractNo());
|
|
param.add(orderEntity.getContractNo());
|
|
|
param.add(orderEntity.getRejectReason());
|
|
param.add(orderEntity.getRejectReason());
|
|
|
- sendCustomerManager(7, orderEntity.getCustomerId(), param);
|
|
|
|
|
|
|
+ sendCustomerManager(7, orderEntity, param);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private void sendCustomerManager(Integer orderType, String customerId, List<String> param) {
|
|
|
|
|
|
|
+ private void sendCustomerManager(Integer orderType, ContractOrderEntity orderEntity, List<String> param) {
|
|
|
Long templateId = getTemplateId(orderType);
|
|
Long templateId = getTemplateId(orderType);
|
|
|
if (templateId == null) {
|
|
if (templateId == null) {
|
|
|
log.warn("短信模板不存在或者被停用 {} ", orderType);
|
|
log.warn("短信模板不存在或者被停用 {} ", orderType);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
- SysUserEntity userEntity = userDao.selectById(customerId);
|
|
|
|
|
|
|
+ SysUserEntity userEntity = userDao.selectById(orderEntity.getCustomerId());
|
|
|
Set<String> phone = new HashSet<>();
|
|
Set<String> phone = new HashSet<>();
|
|
|
phone.add(userEntity.getPhone());
|
|
phone.add(userEntity.getPhone());
|
|
|
SmsSendVo smsSend = new SmsSendVo();
|
|
SmsSendVo smsSend = new SmsSendVo();
|
|
|
smsSend.setTemplateParam(param);
|
|
smsSend.setTemplateParam(param);
|
|
|
smsSend.setSetPhoneNumberSet(phone);
|
|
smsSend.setSetPhoneNumberSet(phone);
|
|
|
smsSend.setTemplateId(String.valueOf(templateId));
|
|
smsSend.setTemplateId(String.valueOf(templateId));
|
|
|
- smsTemplate.sendMsg(smsSend);
|
|
|
|
|
-
|
|
|
|
|
|
|
+ String result = smsTemplate.sendMsg(smsSend);
|
|
|
|
|
+ SmsSendLogEntity log = new SmsSendLogEntity();
|
|
|
|
|
+ log.setBusinessNo(orderEntity.getBusinessNo());
|
|
|
|
|
+ log.setTemplateId(templateId);
|
|
|
|
|
+ log.setPhone(StringUtils.join(phone, ","));
|
|
|
|
|
+ log.setCreateTime(LocalDateTime.now());
|
|
|
|
|
+ log.setUpdateTime(LocalDateTime.now());
|
|
|
|
|
+ log.setReturnContent(result);
|
|
|
|
|
+ log.setOrderType(orderType);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -233,7 +253,7 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
queryWrapper.eq("business_no", businessNo);
|
|
queryWrapper.eq("business_no", businessNo);
|
|
|
ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
|
|
ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
|
|
|
List<String> param = new ArrayList<String>();
|
|
List<String> param = new ArrayList<String>();
|
|
|
- if(orderType==1) {
|
|
|
|
|
|
|
+ if (orderType == 1) {
|
|
|
param.add(orderEntity.getCustomerName());
|
|
param.add(orderEntity.getCustomerName());
|
|
|
}
|
|
}
|
|
|
param.add(orderEntity.getConsultNo());
|
|
param.add(orderEntity.getConsultNo());
|
|
@@ -242,7 +262,14 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
|
|
|
smsSend.setSetPhoneNumberSet(phone);
|
|
smsSend.setSetPhoneNumberSet(phone);
|
|
|
smsSend.setTemplateId(String.valueOf(templateId));
|
|
smsSend.setTemplateId(String.valueOf(templateId));
|
|
|
smsSend.setTemplateParam(param);
|
|
smsSend.setTemplateParam(param);
|
|
|
- smsTemplate.sendMsg(smsSend);
|
|
|
|
|
-
|
|
|
|
|
|
|
+ String result = smsTemplate.sendMsg(smsSend);
|
|
|
|
|
+ SmsSendLogEntity log = new SmsSendLogEntity();
|
|
|
|
|
+ log.setBusinessNo(businessNo);
|
|
|
|
|
+ log.setTemplateId(templateId);
|
|
|
|
|
+ log.setPhone(StringUtils.join(phone, ","));
|
|
|
|
|
+ log.setCreateTime(LocalDateTime.now());
|
|
|
|
|
+ log.setUpdateTime(LocalDateTime.now());
|
|
|
|
|
+ log.setReturnContent(result);
|
|
|
|
|
+ log.setOrderType(orderType);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|