You've already forked FrameTour-BE
Merge branch 'price_inquery'
This commit is contained in:
@@ -1,8 +1,13 @@
|
||||
package com.ycwl.basic.repository;
|
||||
|
||||
import com.ycwl.basic.mapper.SourceMapper;
|
||||
import com.ycwl.basic.model.pc.face.entity.FaceEntity;
|
||||
import com.ycwl.basic.model.pc.source.entity.MemberSourceEntity;
|
||||
import com.ycwl.basic.model.pc.source.entity.SourceEntity;
|
||||
import com.ycwl.basic.pricing.dto.VoucherInfo;
|
||||
import com.ycwl.basic.pricing.enums.VoucherDiscountType;
|
||||
import com.ycwl.basic.pricing.service.IVoucherService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -10,12 +15,17 @@ import org.springframework.stereotype.Component;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@Slf4j
|
||||
@Component
|
||||
public class SourceRepository {
|
||||
@Autowired
|
||||
private SourceMapper sourceMapper;
|
||||
@Autowired
|
||||
private RedisTemplate<String, String> redisTemplate;
|
||||
@Autowired
|
||||
private IVoucherService iVoucherService;
|
||||
@Autowired
|
||||
private FaceRepository faceRepository;
|
||||
|
||||
public void addSource(SourceEntity source) {
|
||||
sourceMapper.add(source);
|
||||
@@ -42,6 +52,19 @@ public class SourceRepository {
|
||||
}
|
||||
|
||||
public boolean getUserIsBuy(Long userId, int type, Long faceId) {
|
||||
FaceEntity face = faceRepository.getFace(faceId);
|
||||
if (face == null) {
|
||||
log.info("faceId:{} is not exist", faceId);
|
||||
return false;
|
||||
}
|
||||
// 确认人员faceId是否有券码
|
||||
List<VoucherInfo> voucherDetails = iVoucherService.getVoucherDetails(faceId, face.getScenicId());
|
||||
if (voucherDetails != null && !voucherDetails.isEmpty()) {
|
||||
VoucherInfo voucherInfo = voucherDetails.getFirst();
|
||||
if (voucherInfo.getDiscountType().equals(VoucherDiscountType.FREE_ALL)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
switch (type) {
|
||||
case 1:
|
||||
List<SourceEntity> videoSourceList = sourceMapper.listVideoByFaceRelation(userId, faceId);
|
||||
|
@@ -3,6 +3,10 @@ package com.ycwl.basic.repository;
|
||||
import com.ycwl.basic.biz.PriceBiz;
|
||||
import com.ycwl.basic.model.mobile.order.IsBuyBatchRespVO;
|
||||
import com.ycwl.basic.model.mobile.order.IsBuyRespVO;
|
||||
import com.ycwl.basic.pricing.dto.DiscountDetectionContext;
|
||||
import com.ycwl.basic.pricing.dto.VoucherInfo;
|
||||
import com.ycwl.basic.pricing.enums.VoucherDiscountType;
|
||||
import com.ycwl.basic.pricing.service.IVoucherService;
|
||||
import com.ycwl.basic.utils.JacksonUtil;
|
||||
import com.ycwl.basic.mapper.VideoMapper;
|
||||
import com.ycwl.basic.model.pc.video.entity.MemberVideoEntity;
|
||||
@@ -15,6 +19,7 @@ import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@Component
|
||||
@@ -29,6 +34,8 @@ public class VideoRepository {
|
||||
@Autowired
|
||||
@Lazy
|
||||
private PriceBiz priceBiz;
|
||||
@Autowired
|
||||
private IVoucherService iVoucherService;
|
||||
|
||||
public VideoEntity getVideo(Long videoId) {
|
||||
if (redisTemplate.hasKey(String.format(VIDEO_CACHE_KEY, videoId))) {
|
||||
@@ -106,6 +113,14 @@ public class VideoRepository {
|
||||
if (buy.isBuy()) {
|
||||
return true;
|
||||
}
|
||||
// 确认人员faceId是否有券码
|
||||
List<VoucherInfo> voucherDetails = iVoucherService.getVoucherDetails(memberVideo.getFaceId(), memberVideo.getScenicId());
|
||||
if (voucherDetails != null && !voucherDetails.isEmpty()) {
|
||||
VoucherInfo voucherInfo = voucherDetails.getFirst();
|
||||
if (voucherInfo.getDiscountType().equals(VoucherDiscountType.FREE_ALL)) {
|
||||
isBuy = true;
|
||||
}
|
||||
}
|
||||
return isBuy;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user