|
|
@@ -7,14 +7,10 @@ import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
-import shop.alien.entity.store.ActivityInviteConfig;
|
|
|
-import shop.alien.entity.store.ActivityInviteLog;
|
|
|
-import shop.alien.entity.store.LifeUser;
|
|
|
+import shop.alien.entity.store.*;
|
|
|
import shop.alien.gateway.service.ActivityInviteConfigService;
|
|
|
import shop.alien.gateway.service.UserPointService;
|
|
|
-import shop.alien.mapper.ActivityInviteConfigMapper;
|
|
|
-import shop.alien.mapper.ActivityInviteLogMapper;
|
|
|
-import shop.alien.mapper.LifeUserMapper;
|
|
|
+import shop.alien.mapper.*;
|
|
|
|
|
|
import java.time.Instant;
|
|
|
import java.time.LocalDate;
|
|
|
@@ -36,6 +32,9 @@ public class ActivityInviteConfigServiceImpl extends ServiceImpl<ActivityInviteC
|
|
|
|
|
|
private final ActivityInviteLogMapper activityInviteLogMapper;
|
|
|
|
|
|
+ private final LifeDiscountCouponMapper lifeDiscountCouponMapper;
|
|
|
+
|
|
|
+ private final LifeDiscountCouponUserMapper LifeDiscountCouponUser;
|
|
|
|
|
|
@Override
|
|
|
public String bindInviteCode(Integer invitedUserId, String inviteCode) {
|
|
|
@@ -98,12 +97,18 @@ public class ActivityInviteConfigServiceImpl extends ServiceImpl<ActivityInviteC
|
|
|
activityInviteLog.setInvitedRewardPoint(activityInviteConfig.getInvitedRewardPoint());
|
|
|
activityInviteLog.setInviteTime(Date.from(Instant.now()));
|
|
|
activityInviteLogMapper.insert(activityInviteLog);
|
|
|
-
|
|
|
- if (activityInviteConfig.getInviteRewardType() == 2) {
|
|
|
- userPointService.addPoint(inviteUserId, activityInviteConfig.getInviteRewardPoint());
|
|
|
- }
|
|
|
- if (activityInviteConfig.getInvitedRewardType() == 2) {
|
|
|
- userPointService.addPoint(invitedUserId, activityInviteConfig.getInvitedRewardPoint());
|
|
|
+ int inviteCondition = activityInviteConfig.getInviteCondition();
|
|
|
+ if(inviteCondition == 1){
|
|
|
+ if(activityInviteConfig.getInviteRewardType() == 2){
|
|
|
+ userPointService.addPoint(inviteUserId, activityInviteConfig.getInviteRewardPoint());
|
|
|
+ } else if(activityInviteConfig.getInviteRewardType() == 1 && activityInviteConfig.getInviteRewardCoupon() > 0){
|
|
|
+ issuePlatformCoupon(inviteUserId, activityInviteConfig.getInviteRewardCoupon());
|
|
|
+ }
|
|
|
+ if(activityInviteConfig.getInvitedRewardType() == 2){
|
|
|
+ userPointService.addPoint(invitedUserId, activityInviteConfig.getInvitedRewardPoint());
|
|
|
+ } else if (activityInviteConfig.getInvitedRewardType() == 1 && activityInviteConfig.getInvitedRewardCoupon() > 0) {
|
|
|
+ issuePlatformCoupon(invitedUserId, activityInviteConfig.getInvitedRewardCoupon());
|
|
|
+ }
|
|
|
}
|
|
|
LifeUser updateLifeUser = new LifeUser();
|
|
|
updateLifeUser.setId(invitedLifeUser.getId());
|
|
|
@@ -117,4 +122,21 @@ public class ActivityInviteConfigServiceImpl extends ServiceImpl<ActivityInviteC
|
|
|
}
|
|
|
return "参数异常";
|
|
|
}
|
|
|
+
|
|
|
+ public void issuePlatformCoupon(Integer userId, Integer couponId) {
|
|
|
+ LifeDiscountCoupon lifeDiscountCoupon = lifeDiscountCouponMapper.selectById(couponId);
|
|
|
+ if(lifeDiscountCoupon == null){
|
|
|
+ //如果优惠券为空,则返回失败
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ LifeDiscountCouponUser lifeDiscountCouponUser = new LifeDiscountCouponUser();
|
|
|
+ lifeDiscountCouponUser.setUserId(userId);
|
|
|
+ lifeDiscountCouponUser.setCouponId(couponId);
|
|
|
+ lifeDiscountCouponUser.setReceiveTime(new Date());
|
|
|
+ lifeDiscountCouponUser.setExpirationTime(LocalDate.now().plusDays(Long.parseLong(lifeDiscountCoupon.getSpecifiedDay())));
|
|
|
+ lifeDiscountCouponUser.setStatus(0);
|
|
|
+ lifeDiscountCouponUser.setDeleteFlag(0);
|
|
|
+ lifeDiscountCouponUser.setCreatedTime(new Date());
|
|
|
+ LifeDiscountCouponUser.insert(lifeDiscountCouponUser);
|
|
|
+ }
|
|
|
}
|