Przeglądaj źródła

红德堂-运费模板,积分商品订单运费计算,奖励商品订单运费计算

Long 1 tydzień temu
rodzic
commit
c5e8d224fa

+ 0 - 1
fs-service/src/main/java/com/fs/course/service/impl/FsCourseCheckinReceiveServiceImpl.java

@@ -385,7 +385,6 @@ public class FsCourseCheckinReceiveServiceImpl implements IFsCourseCheckinReceiv
                         fsUserCoupon.setCouponId(coupon.getCouponId());
                         fsUserCoupon.setCouponId(coupon.getCouponId());
                         fsUserCoupon.setCouponCode("C"+System.currentTimeMillis());
                         fsUserCoupon.setCouponCode("C"+System.currentTimeMillis());
                         fsUserCoupon.setUserId(param.getUserId());
                         fsUserCoupon.setUserId(param.getUserId());
-                        fsUserCoupon.setBusinessType(4);
                         fsUserCoupon.setCreateTime(DateUtils.getNowDate());
                         fsUserCoupon.setCreateTime(DateUtils.getNowDate());
                         if (coupon.getLimitType() == 2){
                         if (coupon.getLimitType() == 2){
                             long limitDay = coupon.getLimitDay().longValue() * 24 * 60 * 60 * 1000;
                             long limitDay = coupon.getLimitDay().longValue() * 24 * 60 * 60 * 1000;

+ 4 - 4
fs-service/src/main/java/com/fs/his/dto/ComputeIntegralOrderMoneyDTO.java

@@ -10,12 +10,12 @@ public class ComputeIntegralOrderMoneyDTO {
     /**
     /**
      * 总积分
      * 总积分
      */
      */
-    private BigDecimal totalIntegral;
+    private BigDecimal totalIntegral = BigDecimal.ZERO;
 
 
     /**
     /**
      * 支付积分
      * 支付积分
      */
      */
-    private BigDecimal integral;
+    private BigDecimal integral = BigDecimal.ZERO;
 
 
     /**
     /**
      * 优惠积分
      * 优惠积分
@@ -25,12 +25,12 @@ public class ComputeIntegralOrderMoneyDTO {
     /**
     /**
      * 总金额
      * 总金额
      */
      */
-    private BigDecimal totalCash;
+    private BigDecimal totalCash = BigDecimal.ZERO;
 
 
     /**
     /**
      * 支付金额
      * 支付金额
      */
      */
-    private BigDecimal cash;
+    private BigDecimal cash = BigDecimal.ZERO;
 
 
     /**
     /**
      * 优惠金额
      * 优惠金额

+ 2 - 4
fs-service/src/main/java/com/fs/his/service/impl/FsIntegralOrderServiceImpl.java

@@ -374,15 +374,12 @@ public class FsIntegralOrderServiceImpl implements IFsIntegralOrderService {
         if (fsUserCoupon == null || !Objects.equals(fsUserCoupon.getUserId(), userId)) {
         if (fsUserCoupon == null || !Objects.equals(fsUserCoupon.getUserId(), userId)) {
             throw new CustomException("无效的优惠券");
             throw new CustomException("无效的优惠券");
         }
         }
-        if (fsUserCoupon.getBusinessType() != 4) {
-            throw new CustomException("优惠券类型不匹配,无法使用");
-        }
 
 
         if (fsUserCoupon.getStatus() == 1) {
         if (fsUserCoupon.getStatus() == 1) {
             throw new CustomException("优惠券已使用");
             throw new CustomException("优惠券已使用");
         }
         }
 
 
-        if (fsUserCoupon.getStatus() == 2 || fsUserCoupon.getLimitTime().before(new Date())) {
+        if (fsUserCoupon.getStatus() == 2 || (fsUserCoupon.getLimitTime() != null && fsUserCoupon.getLimitTime().before(new Date()))) {
             throw new CustomException("优惠券已过期");
             throw new CustomException("优惠券已过期");
         }
         }
 
 
@@ -478,6 +475,7 @@ public class FsIntegralOrderServiceImpl implements IFsIntegralOrderService {
                 updateUserCoupon.setStatus(1);
                 updateUserCoupon.setStatus(1);
                 updateUserCoupon.setUseTime(new Date());
                 updateUserCoupon.setUseTime(new Date());
                 updateUserCoupon.setBusinessId(order.getOrderId());
                 updateUserCoupon.setBusinessId(order.getOrderId());
+                updateUserCoupon.setBusinessType(4);
                 fsUserCouponMapper.updateFsUserCoupon(updateUserCoupon);
                 fsUserCouponMapper.updateFsUserCoupon(updateUserCoupon);
             }
             }
 
 

+ 9 - 7
fs-service/src/main/java/com/fs/reward/service/impl/FsRewardGoodsOrderServiceImpl.java

@@ -800,14 +800,16 @@ public class FsRewardGoodsOrderServiceImpl extends ServiceImpl<FsRewardGoodsOrde
         moneyDTO.setCash(fsRewardGoods.getPrice());
         moneyDTO.setCash(fsRewardGoods.getPrice());
         moneyDTO.setTotalCash(fsRewardGoods.getPrice());
         moneyDTO.setTotalCash(fsRewardGoods.getPrice());
 
 
-        FsUserAddress fsUserAddress = fsUserAddressService.selectFsUserAddressByAddressId(param.getUserAddressId());
-        if (fsUserAddress == null || fsUserAddress.getIsDel() == 1 || fsUserAddress.getIsConfirm() == 0
-                || !fsUser.getUserId().equals(fsUserAddress.getUserId())) {
-            return R.error("收货地址不存在");
-        }
+        if (param.getUserAddressId() != null) {
+            FsUserAddress fsUserAddress = fsUserAddressService.selectFsUserAddressByAddressId(param.getUserAddressId());
+            if (fsUserAddress == null || fsUserAddress.getIsDel() == 1 || fsUserAddress.getIsConfirm() == 0
+                    || !fsUser.getUserId().equals(fsUserAddress.getUserId())) {
+                return R.error("收货地址不存在");
+            }
 
 
-        // 计算运费
-        calcDeliveryMoney(moneyDTO, fsUserAddress, fsRewardGoods);
+            // 计算运费
+            calcDeliveryMoney(moneyDTO, fsUserAddress, fsRewardGoods);
+        }
 
 
         return R.ok().put("data", moneyDTO);
         return R.ok().put("data", moneyDTO);
     }
     }