QzStoreTicketDiscountService.java 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. package com.kmall.schedule.service;
  2. import com.google.common.collect.Maps;
  3. import com.kmall.common.constant.Dict;
  4. import com.kmall.common.utils.DateUtils;
  5. import com.kmall.common.utils.MapUtils;
  6. import com.kmall.common.utils.StringUtils;
  7. import com.kmall.schedule.dao.QzStorePromMapper;
  8. import com.kmall.schedule.dao.QzStoreTicketDiscountMapper;
  9. import org.apache.commons.logging.Log;
  10. import org.apache.commons.logging.LogFactory;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.stereotype.Service;
  13. import org.springframework.transaction.annotation.Transactional;
  14. import java.util.Date;
  15. import java.util.HashMap;
  16. import java.util.List;
  17. import java.util.Map;
  18. /**
  19. * 渠道推广定时任务
  20. *
  21. * @author HUANGYAQIN(CN)
  22. * @date 2019/5/5
  23. */
  24. @Service
  25. public class QzStoreTicketDiscountService {
  26. private static Log logger = LogFactory.getLog(QzStoreTicketDiscountService.class);
  27. @Autowired
  28. private QzStoreTicketDiscountMapper qzStoreTicketDiscountMapper;
  29. /**
  30. * 查询优惠券有效时间是否过期,修改过期优惠券数据结束状态为无效,修改过期用户优惠券状态为无效
  31. */
  32. @Transactional
  33. public void updateQueryTicketDiscount() {
  34. logger.info(">>>>>>>>>>>>>>>>>>>>updateQueryTicketDiscount is start ");
  35. logger.info(">>>>>>>>>>>>>>>>>>>>修改过期优惠券数据结束状态为无效,修改过期用户优惠券状态为无效");
  36. //查询时间类型为固定时间,且超时的优惠券数据
  37. List<Map> storeTicketDiscountList00 = qzStoreTicketDiscountMapper.queryStoreTicketDiscountListBy00();
  38. if (null != storeTicketDiscountList00 && storeTicketDiscountList00.size() > 0) {
  39. for (Map map : storeTicketDiscountList00) {
  40. Integer ticketDistId = MapUtils.getInteger("ticketDistId", map);
  41. Integer userCouponId = MapUtils.getInteger("userCouponId", map);
  42. Integer storeTopicId = MapUtils.getInteger("storeTopicId", map);
  43. if(userCouponId != null) {
  44. //修改用户优惠券为不可用
  45. Map userCouponMap = Maps.newHashMap();
  46. userCouponMap.put("userCouponId", userCouponId);
  47. qzStoreTicketDiscountMapper.updateUserCoupon(userCouponMap);//修改用户领取优惠券状态为不可用
  48. }
  49. if(ticketDistId != null){
  50. Map param = Maps.newHashMap();
  51. param.put("ticketDistId", ticketDistId);
  52. param.put("isPast", Dict.discountIsPast.item_1.getItem());//已过期 是否过期,0:否,1:是
  53. param.put("isValid", 1);//不可用
  54. qzStoreTicketDiscountMapper.updateStoreTicketDiscount(param);//修改状态
  55. Map adMap = qzStoreTicketDiscountMapper.selectAdIdByDiscId(ticketDistId);
  56. if(adMap != null){
  57. Integer adId = MapUtils.getInteger("adId", adMap);
  58. Map updateAdMap = new HashMap();
  59. updateAdMap.put("enabled", 0);
  60. updateAdMap.put("adId", adId);
  61. qzStoreTicketDiscountMapper.updateAd(updateAdMap);
  62. }
  63. }
  64. if(storeTopicId != null){
  65. qzStoreTicketDiscountMapper.updateStoreTopic(storeTopicId);
  66. }
  67. }
  68. }
  69. //查询时间类型为领取后,且时间失效的优惠券数据
  70. List<Map> storeTicketDiscountList01 = qzStoreTicketDiscountMapper.queryStoreTicketDiscountListBy01();
  71. if (null != storeTicketDiscountList01 && storeTicketDiscountList01.size() > 0) {
  72. for (Map map : storeTicketDiscountList01) {
  73. Integer userCouponId = MapUtils.getInteger("userCouponId", map);
  74. Date endTime = MapUtils.getDate("endTime", map);
  75. if (!DateUtils.compareDate(new Date(), endTime)) {
  76. if (userCouponId != null) {
  77. //修改用户优惠券为不可用
  78. Map userCouponMap = Maps.newHashMap();
  79. userCouponMap.put("userCouponId", userCouponId);
  80. qzStoreTicketDiscountMapper.updateUserCoupon(userCouponMap);
  81. }
  82. }
  83. }
  84. }
  85. /*//查询没库存的优惠券
  86. List<Map> storeTicketDiscountList = qzStoreTicketDiscountMapper.queryStoreTicketDiscountListByLimit();
  87. if (null != storeTicketDiscountList && storeTicketDiscountList.size() > 0) {
  88. for (Map map : storeTicketDiscountList) {
  89. Integer ticketDistId = MapUtils.getInteger("ticketDistId", map);
  90. Map param = Maps.newHashMap();
  91. param.put("ticketDistId", ticketDistId);
  92. param.put("isValid", 1);//不可用
  93. qzStoreTicketDiscountMapper.updateStoreTicketDiscount(param);//修改状态
  94. }
  95. }*/
  96. logger.info(">>>>>>>>>>>>>>>>>>>>updateQueryTicketDiscount is end ");
  97. }
  98. public static void main(String[] args) {
  99. }
  100. }