From 6e6a5bbc6ed0bc05da9ed8c0ab9b55bde79c5b03 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 11 Nov 2021 15:35:46 +0800
Subject: [PATCH] 20211108
---
gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java | 48 +++++++++++++++++++++++++++---------------------
1 files changed, 27 insertions(+), 21 deletions(-)
diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java b/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java
index b5146f9..3ba1080 100644
--- a/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java
+++ b/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java
@@ -234,28 +234,34 @@
if (ScoreGoods.ISQG_YES.equals(goods.getIsQg())) {
//限购数量
Integer quotaTime = goods.getQuotaTime() == null ? 0:goods.getQuotaTime();
- //抢购时间内,用户购买该商品的数量
- Integer sumCnt = scoreOrderMapper.selectGoodsQuotaTime(addGoodsOrderDto.getUserId(),goods.getId(),goods.getQgStartTime(),goods.getQgEndTime());
- //剩余限购数量
- quotaTime = quotaTime-sumCnt;
- if(goods.getQgStartTime().before(new Date()) && goods.getQgEndTime().after(new Date())){
- if(addGoodsOrderDto.getCnt() <= quotaTime){
- totalPrice = sku.getPresentPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
- unitPrice = sku.getPresentPrice();
- }else{
- if(quotaTime > 0){
- totalPrice = sku.getPresentPrice().multiply(BigDecimal.valueOf(quotaTime)).add(
- sku.getOriginalPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()-quotaTime)));
- unitPrice = totalPrice.divide(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
- }else{
- totalPrice = sku.getOriginalPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
- unitPrice = sku.getOriginalPrice();
- }
- }
+ //不限购
+ if(quotaTime == 0){
+ totalPrice = sku.getPresentPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
+ unitPrice = sku.getPresentPrice();
}else{
- //开启抢购,不再时间内,直接原价* 数量
- totalPrice = sku.getOriginalPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
- unitPrice = sku.getOriginalPrice();
+ //抢购时间内,用户购买该商品的数量
+ Integer sumCnt = scoreOrderMapper.selectGoodsQuotaTime(addGoodsOrderDto.getUserId(),goods.getId(),goods.getQgStartTime(),goods.getQgEndTime());
+ //剩余限购数量
+ quotaTime = quotaTime-sumCnt;
+ if(goods.getQgStartTime().before(new Date()) && goods.getQgEndTime().after(new Date())){
+ if(addGoodsOrderDto.getCnt() <= quotaTime){
+ totalPrice = sku.getPresentPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
+ unitPrice = sku.getPresentPrice();
+ }else{
+ if(quotaTime > 0){
+ totalPrice = sku.getPresentPrice().multiply(BigDecimal.valueOf(quotaTime)).add(
+ sku.getOriginalPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()-quotaTime)));
+ unitPrice = totalPrice.divide(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
+ }else{
+ totalPrice = sku.getOriginalPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
+ unitPrice = sku.getOriginalPrice();
+ }
+ }
+ }else{
+ //开启抢购,不再时间内,直接原价* 数量
+ totalPrice = sku.getOriginalPrice().multiply(BigDecimal.valueOf(addGoodsOrderDto.getCnt()));
+ unitPrice = sku.getOriginalPrice();
+ }
}
}else{
//没有开启抢购,直接现价* 数量
--
Gitblit v1.9.1