shish 2 vuotta sitten
vanhempi
commit
adfacb4f1c
2 muutettua tiedostoa jossa 34 lisäystä ja 32 poistoa
  1. 17 18
      biz-ghs/order/classes/OrderClass.php
  2. 17 14
      biz-hd/purchase/classes/PurchaseClass.php

+ 17 - 18
biz-ghs/order/classes/OrderClass.php

@@ -548,25 +548,24 @@ class OrderClass extends BaseClass
                 $meetNum = $shop->meetNum ?? 0;
                 $meetAmount = $shop->meetAmount ?? 0;
                 $cutAmount = $shop->cutAmount ?? 0;
-                if ($meetNum > 0) {
-                    if (isset($data['bigNum']) && $data['bigNum'] >= $meetNum) {
-                        if ($cutAmount > $actPrice) {
-                            util::fail('整单满减为负');
-                        }
-                        $actPrice = bcsub($actPrice, $cutAmount, 2);
-                        if (isset($data['reachDiscountPrice'])) {
-                            $data['reachDiscountPrice'] = bcadd($data['reachDiscountPrice'], $cutAmount, 2);
-                        }
-                    }
-                }
-                if ($meetAmount > 0) {
-                    if (isset($data['itemPrice']) && $data['itemPrice'] >= $meetAmount) {
-                        if ($cutAmount > $actPrice) {
-                            util::fail('整单满减为负');
+                if ($cutAmount > 0) {
+                    if ($meetNum > 0) {
+                        if (isset($data['bigNum']) && $data['bigNum'] >= $meetNum) {
+                            if ($cutAmount > $actPrice) {
+                                util::fail('整单满减为负');
+                            }
+                            $actPrice = bcsub($actPrice, $cutAmount, 2);
+                            $data['orderReachDiscountPrice'] = $cutAmount;
                         }
-                        $actPrice = bcsub($actPrice, $cutAmount, 2);
-                        if (isset($data['reachDiscountPrice'])) {
-                            $data['reachDiscountPrice'] = bcadd($data['reachDiscountPrice'], $cutAmount, 2);
+                    } else {
+                        if ($meetAmount > 0) {
+                            if (isset($data['itemPrice']) && $data['itemPrice'] >= $meetAmount) {
+                                if ($cutAmount > $actPrice) {
+                                    util::fail('整单满减为负');
+                                }
+                                $actPrice = bcsub($actPrice, $cutAmount, 2);
+                                $data['orderReachDiscountPrice'] = $cutAmount;
+                            }
                         }
                     }
                 }

+ 17 - 14
biz-hd/purchase/classes/PurchaseClass.php

@@ -841,22 +841,25 @@ class PurchaseClass extends BaseClass
                     $meetNum = $ghsShop->meetNum ?? 0;
                     $meetAmount = $ghsShop->meetAmount ?? 0;
                     $cutAmount = $ghsShop->cutAmount ?? 0;
-                    if ($meetNum > 0) {
-                        if ($bigNum >= $meetNum) {
-                            if ($cutAmount > $actPrice) {
-                                util::fail('整单满减为负');
+                    if ($cutAmount > 0) {
+                        if ($meetNum > 0) {
+                            if ($bigNum >= $meetNum) {
+                                if ($cutAmount > $actPrice) {
+                                    util::fail('整单满减为负');
+                                }
+                                $actPrice = bcsub($actPrice, $cutAmount, 2);
+                                $data['orderReachDiscountPrice'] = $cutAmount;
                             }
-                            $actPrice = bcsub($actPrice, $cutAmount, 2);
-                            $totalReachDiscount = bcadd($totalReachDiscount, $cutAmount, 2);
-                        }
-                    }
-                    if ($meetAmount > 0) {
-                        if (isset($data['itemPrice']) && $data['itemPrice'] >= $meetAmount) {
-                            if ($cutAmount > $actPrice) {
-                                util::fail('整单满减为负');
+                        } else {
+                            if ($meetAmount > 0) {
+                                if (isset($data['itemPrice']) && $data['itemPrice'] >= $meetAmount) {
+                                    if ($cutAmount > $actPrice) {
+                                        util::fail('整单满减为负');
+                                    }
+                                    $actPrice = bcsub($actPrice, $cutAmount, 2);
+                                    $data['orderReachDiscountPrice'] = $cutAmount;
+                                }
                             }
-                            $actPrice = bcsub($actPrice, $cutAmount, 2);
-                            $totalReachDiscount = bcadd($totalReachDiscount, $cutAmount, 2);
                         }
                     }
                 }