From 37be14fc1e419396af3441da0701e2bf99f47112 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 09 Aug 2024 16:29:47 +0800
Subject: [PATCH] 短信指定楼栋发送
---
src/main/java/org/springblade/modules/smsTask/service/impl/SmsTaskServiceImpl.java | 7 ++
src/main/java/org/springblade/modules/smsTask/entity/SmsTaskEntity.java | 4 +
src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java | 76 ++++++++++++++-----------
src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.java | 4 +
src/main/java/org/springblade/modules/smsTask/service/ISmsTaskService.java | 9 +++
src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.xml | 22 +++++++
6 files changed, 87 insertions(+), 35 deletions(-)
diff --git a/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java b/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
index 4537d86..80267d8 100644
--- a/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
+++ b/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
@@ -16,6 +16,7 @@
*/
package org.springblade.modules.sms.service.impl;
+import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -32,14 +33,15 @@
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.modules.resource.entity.Sms;
import org.springblade.modules.resource.service.ISmsService;
+import org.springblade.modules.sms.entity.SmsRecordEntity;
import org.springblade.modules.sms.entity.SmsTemplateEntity;
import org.springblade.modules.sms.mapper.SmsTemplateMapper;
+import org.springblade.modules.sms.service.ISmsRecordService;
import org.springblade.modules.sms.service.ISmsSendService;
import org.springblade.modules.sms.service.ISmsTemplateService;
-import org.springblade.modules.sms.entity.SmsRecordEntity;
-import org.springblade.modules.sms.service.ISmsRecordService;
import org.springblade.modules.smsTask.entity.SmsTaskEntity;
import org.springblade.modules.smsTask.service.ISmsTaskService;
+import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.service.IUserService;
import org.springblade.modules.system.vo.UserVO;
import org.springblade.modules.task.entity.TaskPlaceSelfCheckEntity;
@@ -358,6 +360,11 @@
public Boolean batchSendNotice(Long smsTaskId) {
ISmsTaskService taskService = SpringUtils.getBean(ISmsTaskService.class);
SmsTaskEntity smsTaskEntity = taskService.getById(smsTaskId);
+ List<User> phoneList = taskService.selectSmsTaskListByPhone(smsTaskEntity);
+ if (CollectionUtil.isEmpty(phoneList)) {
+ logger.error("未查询到电话好好");
+ return false;
+ }
Sms serviceOne = iSmsService.getOne(Wrappers.<Sms>lambdaQuery().eq(Sms::getStatus, 2));
if (serviceOne == null) {
@@ -370,38 +377,41 @@
logger.error("未找到对应的短信模板");
return false;
}
+ Boolean aBoolean = false;
+ for (User user : phoneList) {
+ // 发送的手机号
+ List<Map> phonesList = new ArrayList<>();
+ Map phoneMap = new HashMap();
+ phoneMap.put("phone", user.getPhone());
+ List<String> varList = new ArrayList<>();
+ // 设置参数
+ phoneMap.put("varList", varList);
+ phonesList.add(phoneMap);
+ // 短信内容
+ String content = smsTemplateEntity.getContent();
+ // 发送时间
+ LocalDateTime nowDateTime = LocalDateTime.now();
+ String send_time = nowDateTime.format(SECOND_FORMATTER);
+ Map params = new HashMap();
+ params.put("phones", phonesList);
+ // 短信主题
+ params.put("subject", "对外接口不同内容发送-动态模板");
+ params.put("content", content);
+ // 短信模板
+ params.put("template_id", null);
+ // 发送时间
+ params.put("send_time", send_time);
+ // 优先级,高级=5,中级=3,低级=1
+ params.put("priority", "1");
+ // 不同内容发送类型,1=动态模板发送,2=文件内容发送
+ params.put("type", "1");
+ // 创建人主键
+ params.put("sop_create_by", serviceOne.getSmsCode());
+ // 短信发送记录
+ saveSmsRecord(user.getPhone(), serviceOne, user.getName(), content);
+ aBoolean = sendSmsGet(serviceOne, params);
+ }
- //发送的手机号
- List<Map> phonesList = new ArrayList<>();
- Map phoneMap = new HashMap();
- // phoneMap.put("phone", phone);
- List<String> varList = new ArrayList<>();
- // 设置参数
- phoneMap.put("varList", varList);
- phonesList.add(phoneMap);
- //短信内容
- String content = smsTemplateEntity.getContent();
- //发送时间
- LocalDateTime nowDateTime = LocalDateTime.now();
- String send_time = nowDateTime.format(SECOND_FORMATTER);
- Map params = new HashMap();
- params.put("phones", phonesList);
- //短信主题
- params.put("subject", "对外接口不同内容发送-动态模板");
- params.put("content", content);
- //短信模板
- params.put("template_id", null);
- // 发送时间
- params.put("send_time", send_time);
- //优先级,高级=5,中级=3,低级=1
- params.put("priority", "1");
- //不同内容发送类型,1=动态模板发送,2=文件内容发送
- params.put("type", "1");
- //创建人主键
- params.put("sop_create_by", serviceOne.getSmsCode());
- //短信发送记录
- // saveSmsRecord(phone, serviceOne, placeSelfCheckEntity.getPlaceName(), content);
- Boolean aBoolean = sendSmsGet(serviceOne, params);
return aBoolean;
}
diff --git a/src/main/java/org/springblade/modules/smsTask/entity/SmsTaskEntity.java b/src/main/java/org/springblade/modules/smsTask/entity/SmsTaskEntity.java
index 9ade732..5e30561 100644
--- a/src/main/java/org/springblade/modules/smsTask/entity/SmsTaskEntity.java
+++ b/src/main/java/org/springblade/modules/smsTask/entity/SmsTaskEntity.java
@@ -92,4 +92,8 @@
@ApiModelProperty(value = "楼栋名称", example = "")
@TableField("building_name")
private String buildingName;
+
+ @ApiModelProperty(value = "状态", example = "")
+ @TableField("status")
+ private String status;
}
diff --git a/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.java b/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.java
index 13dd206..0cb8cb8 100644
--- a/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.java
+++ b/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.java
@@ -22,7 +22,10 @@
import org.springblade.modules.smsTask.vo.SmsTaskVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.system.entity.User;
+
import java.util.List;
+import java.util.Map;
/**
* 短信发送任务 Mapper 接口
@@ -56,4 +59,5 @@
*/
public List<SmsTaskDTO> selectSmsTaskList(SmsTaskDTO smsTaskDTO);
+ List<User> selectSmsTaskListByPhone(SmsTaskEntity smsTaskEntity);
}
diff --git a/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.xml b/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.xml
index 3bcec9b..e745bd8 100644
--- a/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.xml
+++ b/src/main/java/org/springblade/modules/smsTask/mapper/SmsTaskMapper.xml
@@ -46,7 +46,8 @@
district_id,
building_code,
building_name,
- district_name
+ district_name,
+ status
from
jczz_sms_task
</sql>
@@ -73,4 +74,23 @@
</select>
+ <select id="selectSmsTaskListByPhone" resultType="org.springblade.modules.system.entity.User">
+ SELECT DISTINCT
+ bu.phone,
+ bu.name
+ FROM
+ blade_user bu
+ LEFT JOIN jczz_household jhd ON bu.id = jhd.associated_user_id
+ LEFT JOIN jczz_house jh ON jhd.house_code = jh.house_code
+ LEFT JOIN jczz_district jd ON jd.aoi_code = jh.district_code
+ LEFT JOIN jczz_sms_task jst ON jst.district_id = jd.id
+ <where>
+ <if test="id != null">jst.id = #{id}</if>
+ <if test="buildingCode != null and buildingCode != ''">and building_code = #{buildingCode}</if>
+ and jhd.relationship = 1
+ and bu.phone is not null
+ </where>
+ </select>
+
+
</mapper>
diff --git a/src/main/java/org/springblade/modules/smsTask/service/ISmsTaskService.java b/src/main/java/org/springblade/modules/smsTask/service/ISmsTaskService.java
index e2d93fe..76f6694 100644
--- a/src/main/java/org/springblade/modules/smsTask/service/ISmsTaskService.java
+++ b/src/main/java/org/springblade/modules/smsTask/service/ISmsTaskService.java
@@ -22,8 +22,10 @@
import org.springblade.modules.smsTask.vo.SmsTaskVO;
import org.springblade.core.mp.base.BaseService;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.system.entity.User;
import java.util.List;
+import java.util.Map;
/**
* 短信发送任务 服务类
@@ -59,4 +61,11 @@
*/
public List<SmsTaskDTO> selectSmsTaskList(SmsTaskDTO smsTaskDTO);
+ /**
+ *
+ * @param
+ * @return
+ */
+ public List<User> selectSmsTaskListByPhone(SmsTaskEntity smsTaskEntity);
+
}
diff --git a/src/main/java/org/springblade/modules/smsTask/service/impl/SmsTaskServiceImpl.java b/src/main/java/org/springblade/modules/smsTask/service/impl/SmsTaskServiceImpl.java
index bed4934..e8fb3c6 100644
--- a/src/main/java/org/springblade/modules/smsTask/service/impl/SmsTaskServiceImpl.java
+++ b/src/main/java/org/springblade/modules/smsTask/service/impl/SmsTaskServiceImpl.java
@@ -23,10 +23,12 @@
import org.springblade.modules.smsTask.mapper.SmsTaskMapper;
import org.springblade.modules.smsTask.service.ISmsTaskService;
import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.modules.system.entity.User;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
+import java.util.Map;
/**
* 短信发送任务 服务实现类
@@ -67,5 +69,8 @@
return this.baseMapper.selectSmsTaskList(smsTaskDTO);
}
-
+ @Override
+ public List<User> selectSmsTaskListByPhone(SmsTaskEntity smsTaskEntity) {
+ return baseMapper.selectSmsTaskListByPhone(smsTaskEntity);
+ }
}
--
Gitblit v1.9.3