소스 검색

修改提醒审批公证书

humuyu 3 년 전
부모
커밋
9bf03cce10

+ 2 - 0
eladmin-system/src/main/java/me/zhengjie/application/admin/service/impl/AdminOrderServiceImpl.java

@@ -473,6 +473,8 @@ public class AdminOrderServiceImpl implements AdminOrderService {
 			saveOrderFile.setUpdaterId(contextUtil.getCurrentUserId());
 			orderFileMapper.updateById(saveOrderFile);
 		}
+		//发送短信
+		smsTemplateService.remindSignNotarialCertificate(req.getBusinessNo());
 		return AppBaseResponse.success();
 	}
 

+ 40 - 13
eladmin-system/src/main/java/me/zhengjie/application/admin/service/impl/SmsTemplateServiceImpl.java

@@ -1,10 +1,12 @@
 package me.zhengjie.application.admin.service.impl;
 
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -19,14 +21,17 @@ import me.zhengjie.base.AppBaseResponse;
 import me.zhengjie.base.AppResultData;
 import me.zhengjie.base.ResultCode;
 import me.zhengjie.base.plus.AbstractServiceImpl;
+
 import me.zhengjie.base.sms.SmsRequest;
 import me.zhengjie.base.sms.SmsSendVo;
 import me.zhengjie.base.sms.SmsTemplateVo;
 import me.zhengjie.base.util.BeanCopyUtils;
 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.SysUserEntity;
 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.SysUserMapper;
 
@@ -51,6 +56,8 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
 	private SysUserMapper userDao;
 	@Autowired
 	ContractOrderMapper contractOrderMapper;
+	@Autowired
+	ISmsSendLogMapper sendLogMapper;
 
 	@Override
 	public AppBaseResponse<List<SmsTemplateEntity>> query(SmsTemplateVo req) {
@@ -150,7 +157,7 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
 		ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
 		List<String> param = new ArrayList<String>();
 		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>();
 		param.add(orderEntity.getContractNo());
 		param.add(orderEntity.getReturnReason());
-		sendCustomerManager(3, orderEntity.getCustomerId(), param);
+		sendCustomerManager(3, orderEntity, param);
 	}
 
 	// 4---开始公证(待公证) -- 2个公证员
@@ -174,8 +181,14 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
 
 	// 5--提醒审批公证书 2个公证员
 	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个人
@@ -185,7 +198,7 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
 		ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
 		List<String> param = new ArrayList<String>();
 		param.add(orderEntity.getContractNo());
-		sendCustomerManager(6, orderEntity.getCustomerId(), param);
+		sendCustomerManager(6, orderEntity, param);
 	}
 
 	// 7---公证审批未通过---客户经理1个人
@@ -196,24 +209,31 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
 		List<String> param = new ArrayList<String>();
 		param.add(orderEntity.getContractNo());
 		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);
 		if (templateId == null) {
 			log.warn("短信模板不存在或者被停用  {}  ", orderType);
 			return;
 		}
-		SysUserEntity userEntity = userDao.selectById(customerId);
+		SysUserEntity userEntity = userDao.selectById(orderEntity.getCustomerId());
 		Set<String> phone = new HashSet<>();
 		phone.add(userEntity.getPhone());
 		SmsSendVo smsSend = new SmsSendVo();
 		smsSend.setTemplateParam(param);
 		smsSend.setSetPhoneNumberSet(phone);
 		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);
 		ContractOrderEntity orderEntity = contractOrderMapper.selectOne(queryWrapper);
 		List<String> param = new ArrayList<String>();
-		if(orderType==1) {
+		if (orderType == 1) {
 			param.add(orderEntity.getCustomerName());
 		}
 		param.add(orderEntity.getConsultNo());
@@ -242,7 +262,14 @@ public class SmsTemplateServiceImpl extends AbstractServiceImpl<ISmsTemplateDao,
 		smsSend.setSetPhoneNumberSet(phone);
 		smsSend.setTemplateId(String.valueOf(templateId));
 		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);
 	}
 }

+ 77 - 0
eladmin-system/src/main/java/me/zhengjie/dao/mybatis/entity/SmsSendLogEntity.java

@@ -0,0 +1,77 @@
+package me.zhengjie.dao.mybatis.entity;
+
+import java.io.Serializable;
+import java.lang.reflect.Field;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import lombok.Getter;
+import lombok.Setter;
+import me.zhengjie.base.plus.QueryEntity;
+import me.zhengjie.base.plus.QueryKeyword;
+import me.zhengjie.base.plus.QueryWapper;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author
+ * @since 2022-09-09
+ */
+@Getter
+@Setter
+@TableName("sms_send_log")
+public class SmsSendLogEntity  implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	@TableId(value = "id", type = IdType.AUTO)
+	private Integer id;
+	/**
+	 * 待修改模板的ID
+	 */
+	@TableField("business_no")
+	private String businessNo;
+	/**
+	 * 待修改模板的ID
+	 */
+	@TableField("template_id")
+	private Long templateId;
+	/**
+	 * 手机号,多个用逗号隔开
+	 */
+	@TableField("phone")
+	private String phone;
+	/**
+	 * 订单状态,对应订单的状态
+	 */
+	@TableField("order_type")
+	private Integer orderType;
+	/**
+	 * 返回内容
+	 */
+	@TableField("return_content")
+	private String returnContent;
+
+	/**
+	 * 创建时间
+	 */
+	@TableField("create_time")
+	private LocalDateTime createTime;
+
+	/**
+	 * 更新时间
+	 */
+	@TableField("update_time")
+	private LocalDateTime updateTime;
+
+
+}

+ 20 - 0
eladmin-system/src/main/java/me/zhengjie/dao/mybatis/mapper/ISmsSendLogMapper.java

@@ -0,0 +1,20 @@
+package me.zhengjie.dao.mybatis.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import me.zhengjie.dao.mybatis.entity.SmsSendLogEntity;
+
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ * 公证处 Mapper 接口
+ * </p>
+ *
+ * @author <a href="https://www.fengwenyi.com?code">Erwin Feng</a>
+ * @since 2022-03-28
+ */
+@Mapper
+public interface ISmsSendLogMapper extends BaseMapper<SmsSendLogEntity> {
+
+}