From e0e1694d28c1eeb2edddfde6a738dd6259b0ad1d Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期二, 15 十月 2024 10:03:38 +0800
Subject: [PATCH] add:短信模板通知
---
src/main/java/com/mzl/flower/mapper/payment/OrderMapper.java | 15 +++++++++++++++
src/main/java/com/mzl/flower/schedule/ScheduleService.java | 33 +++++++++++++++++++++++++++++++--
2 files changed, 46 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/mzl/flower/mapper/payment/OrderMapper.java b/src/main/java/com/mzl/flower/mapper/payment/OrderMapper.java
index ec510dc..715debd 100644
--- a/src/main/java/com/mzl/flower/mapper/payment/OrderMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/payment/OrderMapper.java
@@ -55,4 +55,19 @@
List<OrderListExportDTO> selectOrderExportList(@Param("condition") OrderQueryDTO dto);
+
+ @Select("SELECT si.contact_tel " +
+ "FROM t_supplier_info si " +
+ "WHERE si.id IN ( " +
+ " SELECT oi.supplier_id " +
+ " FROM t_order_item oi " +
+ " JOIN t_order q ON oi.order_id = q.id " +
+ " WHERE q.deleted = 0 " +
+ " AND q.status_backend = #{Status} " +
+ " AND q.payment_time >= #{startTime} " +
+ " AND q.payment_time <= #{endTime} " +
+ " GROUP BY oi.supplier_id " +
+ ")")
+ List<String> getWaitSendMessageInfoBySupplier(String Status, LocalDateTime startTime, LocalDateTime endTime);
+
}
diff --git a/src/main/java/com/mzl/flower/schedule/ScheduleService.java b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
index 1cf50e6..afbca3b 100644
--- a/src/main/java/com/mzl/flower/schedule/ScheduleService.java
+++ b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
@@ -1,5 +1,6 @@
package com.mzl.flower.schedule;
+import com.aliyuncs.exceptions.ClientException;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.mzl.flower.constant.Constants;
import com.mzl.flower.dto.response.member.MemberGrowthRecordVO;
@@ -11,21 +12,24 @@
import com.mzl.flower.mapper.member.MemberGrowthRecordMapper;
import com.mzl.flower.mapper.partner.PartnerMapper;
import com.mzl.flower.mapper.payment.OrderMapper;
+import com.mzl.flower.service.BaseService;
import com.mzl.flower.service.coupon.CouponRecordService;
import com.mzl.flower.service.coupon.CouponTemplateService2;
import com.mzl.flower.service.flower.FlowerCategoryService;
import com.mzl.flower.service.menber.impl.GrowthValueDealService;
import com.mzl.flower.service.payment.*;
import com.mzl.flower.thread.FlowerCategoryPriceThread;
+import com.mzl.flower.utils.SmsUtil;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
-import org.springframework.util.CollectionUtils;
import java.time.LocalDate;
import java.time.LocalDateTime;
+import java.time.LocalTime;
import java.util.ArrayList;
import java.util.List;
@@ -77,6 +81,9 @@
@Autowired
private FlowerCategoryPriceThread thread;
+
+ @Autowired
+ private BaseService baseService;
@Scheduled(cron = "1 1 0/2 * * ?")
public void calculateAvePrice() {
@@ -255,6 +262,28 @@
log.info("优惠券记录过期开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
}
-
+ @Scheduled(cron = "0 15 17 * * ?")
+ public void DealSendMessageInfoBySupplier() {
+ log.info("供应商下单供货提示开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+ // 获取当前日期
+ LocalDate currentDate = LocalDate.now();
+ // 设置开始时间为前一天的17点以后
+ LocalDateTime startDateTime = LocalDateTime.of(currentDate.minusDays(1), LocalTime.of(17, 0));
+ // 设置结束时间为当前日期的17点
+ LocalDateTime endDateTime = LocalDateTime.of(currentDate, LocalTime.of(17, 0));
+ System.out.println("开始时间: " + startDateTime);
+ System.out.println("结束时间: " + endDateTime);
+ List<String> sends = orderMapper.getWaitSendMessageInfoBySupplier("SEND", startDateTime, endDateTime);
+ if(CollectionUtils.isNotEmpty(sends)) {
+ sends.forEach(s -> {
+ try {
+ SmsUtil.sendSms(s, "SMS_474500141", null);
+ } catch (ClientException e) {
+ log.error("发送短信失败,手机号:" + s, e);
+ }
+ });
+ }
+ log.info("供应商下单供货提示结束:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+ }
}
--
Gitblit v1.9.3