Selaa lähdekoodia

fix:订单优惠

liujunchi 2 vuotta sitten
vanhempi
commit
0c6903be1e

+ 2 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/io/request/coupon/CouponIssueVo.java

@@ -15,6 +15,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
+import org.joda.time.DateTime;
 import org.springframework.format.annotation.DateTimeFormat;
 
 import javax.validation.constraints.NotNull;
@@ -22,6 +23,7 @@ import javax.validation.constraints.Size;
 import java.io.Serializable;
 import java.util.Date;
 import java.util.List;
+import java.util.Optional;
 
 /**
  * Description

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CouponIssueServiceImp.java

@@ -223,7 +223,7 @@ public class CouponIssueServiceImp extends ServiceImpl<CouponIssueMapper, Coupon
             throw new BizException("未找到优惠券信息");
         }
         if (client == null) {
-            client = ClientEnum.valueOf(couponInfo.getClientType());
+            client = couponInfo.getClientType();
         }
 
         List<CouponIssueUserVo> list = sysUserMapper.queryCouponIssueUser(iPage,client, keyword);

+ 6 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderServiceImpl.java

@@ -319,6 +319,10 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
                 return HttpResponseResult.failed(StringUtil.isEmpty(createResult.getMsg()) ? "订单商品信息获取失败" : createResult.getMsg());
             }
             createRes.setGoodType(info.getGoodType());
+            BigDecimal couponAmount = BigDecimal.ZERO;
+            if (createRes.getCouponAmount() != null) {
+                couponAmount = createRes.getCouponAmount();
+            }
 
             // 计算优惠券金额
             couponOrderWrapper = couponInfoService.queryUserOrderCouponInfo(orderReq.getUserId(),
@@ -332,10 +336,8 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
                             .build());
 
             //todo 优惠券优惠金额,暂时为0
-            BigDecimal couponAmount = BigDecimal.valueOf(couponOrderWrapper.getDiscountedPrices());
-            if (createRes.getCouponAmount() != null) {
-                couponAmount = createRes.getCouponAmount();
-            }
+            couponAmount =couponAmount.add( BigDecimal.valueOf(couponOrderWrapper.getDiscountedPrices()));
+
             if (couponAmount.compareTo(createRes.getExpectPrice()) > 0 ){
                 couponAmount = createRes.getExpectPrice();
             }

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/coupon/CouponIssueWrapper.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.biz.dal.enums.coupon.CouponUseStateEnum;
 import io.swagger.annotations.ApiModelProperty;
 
 import java.math.BigDecimal;
+import java.util.Optional;
 
 /**
  * Description
@@ -233,7 +234,7 @@ public class CouponIssueWrapper {
     }
 
     public Long getUseTime() {
-        return useTime;
+        return Optional.ofNullable(useTime).filter(x -> x > 0).orElse(null);
     }
 
     public void setUseTime(Long useTime) {