From 17e6719a46ae4cfe41aabe1af9168a97667cfdd7 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 22 Mar 2023 11:41:15 +0800
Subject: [PATCH] 后台修改

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index 11f0189..b22cb17 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -861,7 +861,13 @@
         BigDecimal total = BigDecimal.ZERO;
         for (AddOrderItemDto item : addOrderDto.getItems()) {
             MallGoodsSku sku = mallGoodsSkuMapper.selectSkuInfoById(item.getSkuId());
+            if(ObjectUtil.isEmpty(sku)){
+                throw new FebsException("商品已更新,请重新下单");
+            }
             MallGoods mallGoods = mallGoodsMapper.selectById(sku.getGoodsId());
+            if(ObjectUtil.isEmpty(mallGoods)){
+                throw new FebsException("商品已更新,请重新下单");
+            }
             /**
              * 贡献点判断
              */
@@ -878,6 +884,12 @@
         }
 
         BigDecimal score = ObjectUtil.isEmpty(addOrderDto.getScore()) ? BigDecimal.ZERO : addOrderDto.getScore();
+
+        MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
+        BigDecimal prizeScore = mallMemberWallet.getPrizeScore();
+        if(prizeScore.compareTo(score) < 0){
+            throw new FebsException("积分不足");
+        }
         if(hasTc){
             //系统设置的个人贡献点最大值
             DataDictionaryCustom starGetDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
@@ -886,15 +898,9 @@
             if(ObjectUtil.isNotEmpty(starGetDic)){
                 String starGetStr = StrUtil.isEmpty(starGetDic.getValue()) ? "0" : starGetDic.getValue();
                 BigDecimal starGet = new BigDecimal(starGetStr);
-
-                MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
                 BigDecimal star = new BigDecimal(mallMemberWallet.getStar());
                 if(starGet.compareTo(BigDecimal.ZERO) != 0 && starGet.compareTo(star) <= 0){
                     throw new FebsException("无法购买套餐");
-                }
-                BigDecimal prizeScore = mallMemberWallet.getPrizeScore();
-                if(prizeScore.compareTo(score) < 0){
-                    throw new FebsException("积分不足");
                 }
             }
         }

--
Gitblit v1.9.1