refactor(order): 移除优惠券相关业务逻辑

- 删除 CouponBiz 类及其所有方法调用
- 移除 OrderBiz 中对优惠券使用的处理逻辑
- 清理 PriceBiz 中与优惠券查询相关的代码
- 移除 GoodsServiceImpl 中的优惠券查询功能
- 删除 OrderServiceImpl 中创建订单时的优惠券计算逻辑
- 移除多个类中对 CouponBiz 的依赖注入
- 清理与优惠券记录和折扣价格计算相关的冗余代码
This commit is contained in:
2025-12-17 22:14:17 +08:00
parent 6c404e210e
commit 3e938ad171
6 changed files with 7 additions and 212 deletions

View File

@@ -13,7 +13,6 @@ import com.ycwl.basic.model.pc.source.entity.MemberSourceEntity;
import com.ycwl.basic.repository.MemberRelationRepository;
import com.ycwl.basic.repository.OrderRepository;
import com.ycwl.basic.utils.JacksonUtil;
import com.ycwl.basic.biz.CouponBiz;
import com.ycwl.basic.biz.OrderBiz;
import com.ycwl.basic.constant.StorageConstant;
import com.ycwl.basic.image.watermark.ImageWatermarkFactory;
@@ -99,8 +98,6 @@ public class GoodsServiceImpl implements GoodsService {
@Autowired
private DeviceRepository deviceRepository;
@Autowired
private CouponBiz couponBiz;
@Autowired
private VideoUpdateConfig videoUpdateConfig;
@Autowired
private MemberRelationRepository memberRelationRepository;
@@ -248,15 +245,6 @@ public class GoodsServiceImpl implements GoodsService {
goodsDetailVO.setShotTime(videoTaskRepository.getTaskShotDate(video.getTaskId()));
goodsDetailVO.setLensNum(videoTaskRepository.getTaskLensNum(video.getTaskId()));
goodsDetailVO.setDevicesNum(videoTaskRepository.getTaskDeviceNum(video.getTaskId()));
CouponRecordQueryResp couponRecord = couponBiz.queryUserCouponRecord(video.getScenicId(), userId, video.getFaceId(), video.getTemplateId().toString());
if (couponRecord != null) {
if (couponRecord.isUsable()) {
goodsDetailVO.setCouponId(couponRecord.getCouponId());
goodsDetailVO.setCouponRecordId(couponRecord.getId());
goodsDetailVO.setCouponPrice(couponRecord.getCoupon().calculateDiscountPrice(goodsDetailVO.getOrigPrice()));
goodsDetailVO.setPrice(couponRecord.getCoupon().calculateDiscountedPrice(goodsDetailVO.getPrice()));
}
}
return ApiResponse.success(goodsDetailVO);
}

View File

@@ -480,7 +480,7 @@ public class FaceServiceImpl implements FaceService {
contentPageVO.setLockType(1);
}
}
boolean buy = orderBiz.checkUserBuyFaceItem(userId, faceId, contentPageVO.getGoodsType(), contentPageVO.getContentId());
boolean buy = orderRepository.checkUserBuyFaceItem(userId, faceId, contentPageVO.getGoodsType(), contentPageVO.getContentId());
if (buy) {
contentPageVO.setIsBuy(1);
} else {

View File

@@ -15,7 +15,6 @@ import com.ycwl.basic.pricing.service.ICouponService;
import com.ycwl.basic.pricing.service.IVoucherService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.ycwl.basic.biz.CouponBiz;
import com.ycwl.basic.biz.OrderBiz;
import com.ycwl.basic.biz.PriceBiz;
import com.ycwl.basic.constant.BaseContextHandler;
@@ -122,12 +121,8 @@ public class OrderServiceImpl implements OrderService {
@Autowired
private FaceRepository faceRepository;
@Autowired
private CouponBiz couponBiz;
@Autowired
private TemplateRepository templateRepository;
@Autowired
private TaskTaskServiceImpl taskTaskService;
@Autowired
private PrinterMapper printerMapper;
@Autowired
private ScenicService scenicService;
@@ -786,45 +781,6 @@ public class OrderServiceImpl implements OrderService {
order.setStatus(OrderStateEnum.UNPAID.getState());
}
}
// 只有新订单才计算优惠券,避免重复处理
if (!haveOldOrder) {
// coupon
CouponRecordQueryResp couponRecord = null;
switch (createOrderReqVO.getGoodsType()) {
case 0: // vlog
VideoEntity video = videoRepository.getVideo(createOrderReqVO.getGoodsId());
if (video != null && video.getTemplateId() != null) {
couponRecord = couponBiz.queryUserCouponRecord(order.getScenicId(), userId, order.getFaceId(), video.getTemplateId().toString());
}
break;
case 1:
case 2:
couponRecord = couponBiz.queryUserCouponRecord(order.getScenicId(), userId, order.getFaceId(), String.valueOf(createOrderReqVO.getGoodsType()));
break;
}
order.setCouponPrice(BigDecimal.ZERO);
order.setCouponRecordId(null);
order.setCouponId(null);
if (couponRecord != null) {
if (couponRecord.isUsable()) {
log.info("优惠券可用,优惠券记录ID:{},优惠券ID:{}", couponRecord.getId(), couponRecord.getCouponId());
order.setCouponId(couponRecord.getCouponId());
order.setCouponRecordId(couponRecord.getId());
order.setCouponPrice(couponRecord.getCoupon().calculateDiscountPrice(order.getPrice()));
order.setPayPrice(order.getPayPrice().subtract(order.getCouponPrice()));
if (order.getPayPrice().compareTo(BigDecimal.ZERO) < NumberConstant.ZERO) {
// 至少需要支付0.01
order.setPayPrice(BigDecimal.valueOf(0.01));
}
} else {
log.info("优惠券不可用,优惠券记录ID:{},优惠券ID:{}", couponRecord.getId(), couponRecord.getCouponId());
order.setCouponId(null);
order.setCouponRecordId(null);
order.setCouponPrice(BigDecimal.ZERO);
}
}
}
List<OrderItemEntity> orderItems = new ArrayList<>();
OrderItemEntity orderItem = new OrderItemEntity();
orderItem.setGoodsId(createOrderReqVO.getGoodsId());