diff --git a/app/admin/logic/beforehand_order/BeforehandOrderLogic.php b/app/admin/logic/beforehand_order/BeforehandOrderLogic.php index b8ee8059..9448650a 100644 --- a/app/admin/logic/beforehand_order/BeforehandOrderLogic.php +++ b/app/admin/logic/beforehand_order/BeforehandOrderLogic.php @@ -274,6 +274,9 @@ class BeforehandOrderLogic extends BaseLogic } if ($_order['deduction_price'] > 0) { $_order['pay_price'] = bcsub($_order['pay_price'], $_order['deduction_price'], 2); + if ($_order['pay_price'] < 0.01) { + throw new BusinessException('支付金额不能小于0.01元'); + } } $_order['uid'] = $uid; $_order['spread_uid'] = 0; diff --git a/app/admin/logic/purchase_product_offer/PurchaseProductOfferLogic.php b/app/admin/logic/purchase_product_offer/PurchaseProductOfferLogic.php index ca9e9a33..a0f790af 100644 --- a/app/admin/logic/purchase_product_offer/PurchaseProductOfferLogic.php +++ b/app/admin/logic/purchase_product_offer/PurchaseProductOfferLogic.php @@ -515,7 +515,7 @@ class PurchaseProductOfferLogic extends BaseLogic 'unit' => $product['unit'], 'cart_num' => $product['nums'], 'accept_num' => $product['nums'], - 'mark' => $product['mark'], + 'mark' => $product['mark'] ?? '', 'is_buyer' => 1, 'procurement_order_id' => $procurementOrder['id'], 'total_price' => bcmul($product['price'], $product['nums'], 2), @@ -533,7 +533,7 @@ class PurchaseProductOfferLogic extends BaseLogic 'unit' => $product['unit'], 'is_buyer' => 1, 'need_num' => $product['nums'], - 'mark' => $product['mark'], + 'mark' => $product['mark'] ?? '', 'buyer_id' => $params['buyer_id'], 'status' => 0, 'source_order_info' => [ @@ -541,7 +541,7 @@ class PurchaseProductOfferLogic extends BaseLogic 'source_order_id' => $procurementOrder['id'], 'product_id' => $product['product_id'], 'need_num' => $product['nums'], - 'mark' => $product['mark'], + 'mark' => $product['mark'] ?? '', ] ] ]; diff --git a/app/api/logic/order/OrderLogic.php b/app/api/logic/order/OrderLogic.php index c0221356..89be6ee2 100644 --- a/app/api/logic/order/OrderLogic.php +++ b/app/api/logic/order/OrderLogic.php @@ -293,6 +293,9 @@ class OrderLogic extends BaseLogic if (isset($params['deduction_price']) && $params['deduction_price'] > 0) { $_order['deduction_price'] = $params['deduction_price']; $_order['pay_price'] = bcsub($_order['pay_price'], $_order['deduction_price'], 2); + if ($_order['pay_price'] < 0.01) { + throw new BusinessException('支付金额不能小于0.01元'); + } } if ($uid > 0) { diff --git a/app/common/logic/PayNotifyLogic.php b/app/common/logic/PayNotifyLogic.php index e560ac23..58069b0e 100644 --- a/app/common/logic/PayNotifyLogic.php +++ b/app/common/logic/PayNotifyLogic.php @@ -630,7 +630,7 @@ class PayNotifyLogic extends BaseLogic continue; } } - if ($order['source'] != OrderEnum::SOURCE_20) { + if ($order['source'] != OrderEnum::SOURCE_20 || $order['store_id'] == 3) { if ($branchProduct) { $stock = bcsub($branchProduct['stock'], $v['cart_num'], 2); StoreBranchProduct::update([