From b11e867b904c902374efdcbaf5152363756b76a4 Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com>
Date: 星期五, 30 八月 2024 10:03:53 +0800
Subject: [PATCH] 获取用户最后收货时间
---
src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java | 42 ++++++++++++++++++++++++++++++++----------
1 files changed, 32 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java b/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java
index de6d5f1..3724c94 100644
--- a/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java
+++ b/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java
@@ -9,15 +9,13 @@
import com.mzl.flower.dto.request.coupon.CreateCouponRecordDTO;
import com.mzl.flower.dto.request.coupon.QueryCouponRecordDTO;
import com.mzl.flower.dto.request.coupon.QueryCouponStatisticsBO;
+import com.mzl.flower.dto.request.coupon.QueryExistCouponDTO;
import com.mzl.flower.dto.response.coupon.CouponRecordVO;
import com.mzl.flower.entity.coupon.CouponRecordDO;
import com.mzl.flower.entity.coupon.CouponTemplateDO;
import com.mzl.flower.entity.customer.Customer;
import com.mzl.flower.entity.system.User;
-import com.mzl.flower.enums.CouponCategoryEnum;
-import com.mzl.flower.enums.CouponUsageTimeTypeEnum;
-import com.mzl.flower.enums.CouponUsageTypeEnum;
-import com.mzl.flower.enums.CouponUsedStatusEnum;
+import com.mzl.flower.enums.*;
import com.mzl.flower.mapper.coupon.CouponRecordMapper;
import com.mzl.flower.mapper.coupon.CouponRecordMapperCustom;
import com.mzl.flower.mapper.customer.CustomerMapper;
@@ -74,14 +72,27 @@
throw new ValidationException("商户信息不存在");
}
+ final CouponTemplateDO couponTemplateDO = couponTemplateService.getById(dto.getCouponId());
+
+ // TODO 活动优惠券和积分优惠券需要根据库存来控制- 根据优惠券的发放数量来控制有没有超发
+
+
+ // TODO 根据用户领取设置的getLimit 查看当前用户是否已经超领优惠券
+
+
CouponRecordDO couponRecordDO=new CouponRecordDO();
BeanUtils.copyProperties(dto,couponRecordDO);
couponRecordDO.create(SecurityUtils.getUserId());
// 设置为待使用状态
couponRecordDO.setStatus(CouponUsedStatusEnum.UNUSED.getType());
+ // 根据商户设置用户id
+ if(StringUtils.isBlank(dto.getUserId()) && StringUtils.isNotBlank(customer.getUserId())){
+ couponRecordDO.setUserId(customer.getUserId());
+ }
+
// 优惠券字段冗余
- final CouponTemplateDO couponTemplateDO = couponTemplateService.getById(dto.getCouponId());
+
if(null!=couponTemplateDO){
couponRecordDO.setCategory(couponTemplateDO.getGetUserType());
couponRecordDO.setCouponCode(couponTemplateDO.getCouponCode());
@@ -125,11 +136,11 @@
}
if (couponTemplateDO.getUsageTimeType().equals(CouponUsageTimeTypeEnum.HOUR.getType())) {
// 小时
- couponRecordDO.setEffectiveEnd(currentTime.plusDays(couponTemplateDO.getUsageTimeNum()));
+ couponRecordDO.setEffectiveEnd(currentTime.plusHours(couponTemplateDO.getUsageTimeNum()));
}
if (couponTemplateDO.getUsageTimeType().equals(CouponUsageTimeTypeEnum.MINUTE.getType())) {
// 分钟
- couponRecordDO.setEffectiveEnd(currentTime.plusDays(couponTemplateDO.getUsageTimeNum()));
+ couponRecordDO.setEffectiveEnd(currentTime.plusMinutes(couponTemplateDO.getUsageTimeNum()));
}
}
@@ -273,16 +284,27 @@
}
@Override
- public int statisCouponTemplateCount(QueryCouponStatisticsBO queryCouponStatisticsBO) {
+ public Integer statisCouponTemplateCount(QueryCouponStatisticsBO queryCouponStatisticsBO) {
return couponRecordMapperCustom.statisCouponTemplateCount(queryCouponStatisticsBO);
}
@Override
- public int statisCouponTemplateCurMonCount(QueryCouponStatisticsBO queryCouponStatisticsBO) {
+ public Integer statisCouponTemplateCurMonCount(QueryCouponStatisticsBO queryCouponStatisticsBO) {
return couponRecordMapperCustom.statisCouponTemplateCurMonCount(queryCouponStatisticsBO);
}
@Override
- public int statisCouponPointCurMonPontAmonut(QueryCouponStatisticsBO queryCouponStatisticsBO) {
+ public Integer statisCouponPointCurMonPontAmonut(QueryCouponStatisticsBO queryCouponStatisticsBO) {
return couponRecordMapperCustom.statisCouponPointCurMonPointAmonut(queryCouponStatisticsBO);
}
+
+ @Override
+ public int getExistCouponAmount(QueryExistCouponDTO dto) {
+ QueryWrapper<CouponRecordDO> queryWrapper=new QueryWrapper<>();
+ queryWrapper.lambda().eq(CouponRecordDO::getDeleted, TrueOrFalseEnum.FALSE.isFlag())
+ .eq(StringUtils.isNotBlank(dto.getCouponId()), CouponRecordDO::getCouponId,dto.getCouponId())
+ .eq(StringUtils.isNotBlank(dto.getCustomerId()),CouponRecordDO::getCustomerId,dto.getCustomerId())
+ .eq(StringUtils.isNotBlank(dto.getCategory()),CouponRecordDO::getCategory,dto.getCategory());
+
+ return baseMapper.selectCount(queryWrapper);
+ }
}
--
Gitblit v1.9.3