From c1d6ccad5a0929cbad5d392f17164c9b820e7d23 Mon Sep 17 00:00:00 2001 From: xhxu Date: Tue, 21 Jun 2022 22:18:04 +0800 Subject: [PATCH] //tt test --- .../schedule/CouponSendScheduleTest.java | 330 +++++++++--------- 1 file changed, 165 insertions(+), 165 deletions(-) diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/CouponSendScheduleTest.java b/mallinkSchedule/src/main/java/com/iformall/schedule/CouponSendScheduleTest.java index 390307b93..cb6c18953 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/CouponSendScheduleTest.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/CouponSendScheduleTest.java @@ -1,167 +1,167 @@ -package com.iformall.schedule; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.iformall.domain.dto.WxCUserBasicInfoDto; -import com.iformall.domain.po.*; -import com.iformall.domain.po.base.TenantEntity; -import com.iformall.domain.po.msg.WxMsgRecord; -import com.iformall.domain.vo.WxCouponSendVo; -import com.iformall.enums.*; -import com.iformall.mapper.*; -import com.iformall.mq.MqBaseProducer; -import com.iformall.service.*; -import com.iformall.sms.EnumSMSChannel; -import com.iformall.sms.SMSFactory; -import com.iformall.utils.CreditUtil; -import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Lazy; -import org.springframework.scheduling.annotation.Async; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.math.BigDecimal; -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.ZoneId; -import java.time.temporal.TemporalAdjusters; -import java.util.*; -import java.util.stream.Collectors; - -import static java.util.stream.Collectors.toList; - -@Component -public class CouponSendScheduleTest { - - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - @Autowired - private WxMallMapper wxMallMapper; - - @Autowired - private WxCUserBasicInfoMapper wxCUserBasicInfoMapper; - - @Autowired - private WxCUserBasicInfoService wxCUserBasicInfoService; - - @Autowired - private WxOrderService wxOrderService; - - @Autowired - private WxCouponActionLogService wxCouponActionLogService; - - @Autowired - private WxCouponSendInjectMapper wxCouponSendInjectMapper; - - @Autowired - private MqBaseProducer mqBaseProducer; - - - @Async - //@Scheduled(cron = "0 0 6 1 * ?") // 每月1号发放会员的权益券 - @Scheduled(cron = "0 */10 * * * ?") // 测试每天6点发券 - //@Scheduled(cron = "*/30 * * * * ?") // 测试30秒中一次 - public void couponSendSchedule() { - - WxCouponSendInject sendInject = new WxCouponSendInject(); - sendInject.setSendStatus(EnumYesOrNo.NO.getCode()); - - List list = wxCouponSendInjectMapper.findList(sendInject); - for (WxCouponSendInject inject:list) { - try { - WxCouponOrder couponOrder = wxOrderService.sendFreeCouponToUser(inject.getUserId(), inject,inject.getCouponId(), null,EnumPayWay.PAY_WAY_NOT_UNPAY_INJECT_SEND,null,null); - if(couponOrder != null){ - inject.setSendStatus(EnumYesOrNo.YES.getCode()); - inject.setOrderId(couponOrder.getOrderId()); - inject.setCouponOrderId(couponOrder.getId()); - inject.setUpdateTime(new Date()); - wxCouponSendInjectMapper.updateById(inject); - wxCouponActionLogService.addOne(inject, inject.getCouponId(), couponOrder.getId(), EnumCouponSendSendType.INJECT.getCode(), 0L,0L); - } - - } catch (Exception e) { - logger.error("定时发券:发券失败 couponId=" + inject.getCouponId() + " userId=" + inject.getUserId() + e.getMessage()); - continue; - } - } - - } - +//package com.iformall.schedule; +// +//import com.alibaba.fastjson.JSON; +//import com.alibaba.fastjson.JSONObject; +//import com.iformall.domain.dto.WxCUserBasicInfoDto; +//import com.iformall.domain.po.*; +//import com.iformall.domain.po.base.TenantEntity; +//import com.iformall.domain.po.msg.WxMsgRecord; +//import com.iformall.domain.vo.WxCouponSendVo; +//import com.iformall.enums.*; +//import com.iformall.mapper.*; +//import com.iformall.mq.MqBaseProducer; +//import com.iformall.service.*; +//import com.iformall.sms.EnumSMSChannel; +//import com.iformall.sms.SMSFactory; +//import com.iformall.utils.CreditUtil; +//import org.apache.commons.collections.CollectionUtils; +//import org.apache.commons.lang3.StringUtils; +//import org.slf4j.Logger; +//import org.slf4j.LoggerFactory; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.context.annotation.Lazy; +//import org.springframework.scheduling.annotation.Async; +//import org.springframework.scheduling.annotation.Scheduled; +//import org.springframework.stereotype.Component; +// +//import java.math.BigDecimal; +//import java.text.DateFormat; +//import java.text.SimpleDateFormat; +//import java.time.LocalDateTime; +//import java.time.LocalTime; +//import java.time.ZoneId; +//import java.time.temporal.TemporalAdjusters; +//import java.util.*; +//import java.util.stream.Collectors; +// +//import static java.util.stream.Collectors.toList; +// +//@Component +//public class CouponSendScheduleTest { +// +// private final Logger logger = LoggerFactory.getLogger(this.getClass()); +// +// @Autowired +// private WxMallMapper wxMallMapper; +// +// @Autowired +// private WxCUserBasicInfoMapper wxCUserBasicInfoMapper; +// +// @Autowired +// private WxCUserBasicInfoService wxCUserBasicInfoService; +// +// @Autowired +// private WxOrderService wxOrderService; +// +// @Autowired +// private WxCouponActionLogService wxCouponActionLogService; +// +// @Autowired +// private WxCouponSendInjectMapper wxCouponSendInjectMapper; +// +// @Autowired +// private MqBaseProducer mqBaseProducer; +// +// // @Async - //@Scheduled(cron = "0 0 6 1 * ?") // 每月1号发放会员的权益券 +// //@Scheduled(cron = "0 0 6 1 * ?") // 每月1号发放会员的权益券 // @Scheduled(cron = "0 */10 * * * ?") // 测试每天6点发券 - //@Scheduled(cron = "*/30 * * * * ?") // 测试30秒中一次 - public void couponSendMsgSchedule() { - - TenantEntity tenantEntity = new TenantEntity(); - tenantEntity.setTenantId("1038"); - - - WxCouponSendInject sendInject = new WxCouponSendInject(); - sendInject.updateTenantInfo(tenantEntity); - sendInject.setSendStatus(EnumYesOrNo.YES.getCode()); - sendInject.setSendMsg(EnumYesOrNo.NO.getCode()); - sendInject.setCouponId(698841722461515776l); - - List list1 = wxCouponSendInjectMapper.findList(sendInject); - sendSMS(tenantEntity,list1,"0.5元购大桶爆米花"); - - sendInject.setCouponId(698842872011190272l); - - List list2 = wxCouponSendInjectMapper.findList(sendInject); - sendSMS(tenantEntity,list2,"9.9元购普通厅单人观影票"); - - sendInject.setCouponId(698843398773829632l); - - List list3 = wxCouponSendInjectMapper.findList(sendInject); - sendSMS(tenantEntity,list3,"49.9元购双人欢乐套餐"); - - } - - - private void sendSMS(TenantEntity tenantEntity ,List list1,String couponTitle) { - - String validDate = "2022年6月30日"; - try{ - if(list1 != null && list1.size() > 0){ - List userIds = list1.stream().map(s -> s.getUserId()).collect(toList()); - WxCUserBasicInfo cUserBasicInfoQ = new WxCUserBasicInfo(); - cUserBasicInfoQ.setFinalTenantId(tenantEntity.getFinalTenantId()); - cUserBasicInfoQ.setIds(userIds); - List listPhoneAndNameByIds = wxCUserBasicInfoMapper.findListPhoneAndNameByIds(cUserBasicInfoQ); - List collect = listPhoneAndNameByIds.stream().map(u -> u.getPhone()).collect(toList()); - String phone = String.join(",", collect); - - - WxMsgConfig wxMsgConfig = new WxMsgConfig(); - wxMsgConfig.setSmsChannel(EnumSMSChannel.ALIYUN.getCode()); - Map dynamicContentMap = new HashMap<>(); - dynamicContentMap.put("couponTitle",couponTitle); - dynamicContentMap.put("validDate",validDate); - String result = SMSFactory.sendSms(wxMsgConfig, phone, "富茂", null, - null, null, JSON.toJSONString(dynamicContentMap), - "SMS_243651558",null); - - JSONObject jsonObjectResult = JSONObject.parseObject(result); - String ret = jsonObjectResult.get("ret").toString(); - String batchNo = jsonObjectResult.get("data").toString(); - if (ret.equals("1")) { - wxCouponSendInjectMapper.updateMsgByUserIds(userIds); - - }else{ - logger.error("发短信失败 couponId="+couponTitle); - } - - } - }catch(Exception e){ - logger.error("发短信失败 couponId="+couponTitle+e.getMessage()); - } - - } -} \ No newline at end of file +// //@Scheduled(cron = "*/30 * * * * ?") // 测试30秒中一次 +// public void couponSendSchedule() { +// +// WxCouponSendInject sendInject = new WxCouponSendInject(); +// sendInject.setSendStatus(EnumYesOrNo.NO.getCode()); +// +// List list = wxCouponSendInjectMapper.findList(sendInject); +// for (WxCouponSendInject inject:list) { +// try { +// WxCouponOrder couponOrder = wxOrderService.sendFreeCouponToUser(inject.getUserId(), inject,inject.getCouponId(), null,EnumPayWay.PAY_WAY_NOT_UNPAY_INJECT_SEND,null,null); +// if(couponOrder != null){ +// inject.setSendStatus(EnumYesOrNo.YES.getCode()); +// inject.setOrderId(couponOrder.getOrderId()); +// inject.setCouponOrderId(couponOrder.getId()); +// inject.setUpdateTime(new Date()); +// wxCouponSendInjectMapper.updateById(inject); +// wxCouponActionLogService.addOne(inject, inject.getCouponId(), couponOrder.getId(), EnumCouponSendSendType.INJECT.getCode(), 0L,0L); +// } +// +// } catch (Exception e) { +// logger.error("定时发券:发券失败 couponId=" + inject.getCouponId() + " userId=" + inject.getUserId() + e.getMessage()); +// continue; +// } +// } +// +// } +// +//// @Async +// //@Scheduled(cron = "0 0 6 1 * ?") // 每月1号发放会员的权益券 +//// @Scheduled(cron = "0 */10 * * * ?") // 测试每天6点发券 +// //@Scheduled(cron = "*/30 * * * * ?") // 测试30秒中一次 +// public void couponSendMsgSchedule() { +// +// TenantEntity tenantEntity = new TenantEntity(); +// tenantEntity.setTenantId("1038"); +// +// +// WxCouponSendInject sendInject = new WxCouponSendInject(); +// sendInject.updateTenantInfo(tenantEntity); +// sendInject.setSendStatus(EnumYesOrNo.YES.getCode()); +// sendInject.setSendMsg(EnumYesOrNo.NO.getCode()); +// sendInject.setCouponId(698841722461515776l); +// +// List list1 = wxCouponSendInjectMapper.findList(sendInject); +// sendSMS(tenantEntity,list1,"0.5元购大桶爆米花"); +// +// sendInject.setCouponId(698842872011190272l); +// +// List list2 = wxCouponSendInjectMapper.findList(sendInject); +// sendSMS(tenantEntity,list2,"9.9元购普通厅单人观影票"); +// +// sendInject.setCouponId(698843398773829632l); +// +// List list3 = wxCouponSendInjectMapper.findList(sendInject); +// sendSMS(tenantEntity,list3,"49.9元购双人欢乐套餐"); +// +// } +// +// +// private void sendSMS(TenantEntity tenantEntity ,List list1,String couponTitle) { +// +// String validDate = "2022年6月30日"; +// try{ +// if(list1 != null && list1.size() > 0){ +// List userIds = list1.stream().map(s -> s.getUserId()).collect(toList()); +// WxCUserBasicInfo cUserBasicInfoQ = new WxCUserBasicInfo(); +// cUserBasicInfoQ.setFinalTenantId(tenantEntity.getFinalTenantId()); +// cUserBasicInfoQ.setIds(userIds); +// List listPhoneAndNameByIds = wxCUserBasicInfoMapper.findListPhoneAndNameByIds(cUserBasicInfoQ); +// List collect = listPhoneAndNameByIds.stream().map(u -> u.getPhone()).collect(toList()); +// String phone = String.join(",", collect); +// +// +// WxMsgConfig wxMsgConfig = new WxMsgConfig(); +// wxMsgConfig.setSmsChannel(EnumSMSChannel.ALIYUN.getCode()); +// Map dynamicContentMap = new HashMap<>(); +// dynamicContentMap.put("couponTitle",couponTitle); +// dynamicContentMap.put("validDate",validDate); +// String result = SMSFactory.sendSms(wxMsgConfig, phone, "富茂", null, +// null, null, JSON.toJSONString(dynamicContentMap), +// "SMS_243651558",null); +// +// JSONObject jsonObjectResult = JSONObject.parseObject(result); +// String ret = jsonObjectResult.get("ret").toString(); +// String batchNo = jsonObjectResult.get("data").toString(); +// if (ret.equals("1")) { +// wxCouponSendInjectMapper.updateMsgByUserIds(userIds); +// +// }else{ +// logger.error("发短信失败 couponId="+couponTitle); +// } +// +// } +// }catch(Exception e){ +// logger.error("发短信失败 couponId="+couponTitle+e.getMessage()); +// } +// +// } +//} \ No newline at end of file