|
@@ -796,7 +796,7 @@ class OrderService
|
|
|
if ($couponDetail->coupon_category == 'PIECE' && $countAndAmount['count'] < $couponDetail->coupon_minimum_limit) {
|
|
|
continue;
|
|
|
}
|
|
|
- if (in_array($couponDetail->coupon_classify, ['立减券', '满减券'])) {
|
|
|
+ if (in_array($couponDetail->coupon_classify, ['立减券','满减券'])) {
|
|
|
if (Redis::sIsMember($cacheKey, $couponId)) {
|
|
|
continue;
|
|
|
}
|
|
@@ -804,7 +804,34 @@ class OrderService
|
|
|
if ($couponDetail->coupon_category == 'PIECE' || ($couponDetail->coupon_category == 'NORMAL' && $countAndAmount['amount'] >= $couponDetail->coupon_minimum_limit)) {
|
|
|
$payAmount = $payAmount - $couponDetail->coupon_value;
|
|
|
}
|
|
|
- } elseif ($couponDetail->coupon_classify == '折扣券') {
|
|
|
+ }
|
|
|
+// elseif ($couponDetail->coupon_classify == '满减券') {
|
|
|
+// if (Redis::sIsMember($cacheKey, $couponId)) {
|
|
|
+// continue;
|
|
|
+// }
|
|
|
+// Redis::sAdd($cacheKey, $couponId);
|
|
|
+// // 计件
|
|
|
+// if ($couponDetail->coupon_category == 'PIECE' && $countAndAmount['count'] >= $couponDetail->coupon_minimum_limit) {
|
|
|
+// $goodsIds = array_splice($countAndAmount['goodsIds'], 0, $couponDetail->coupon_value);
|
|
|
+// $amount = 0;
|
|
|
+// $goodsNbr = 0;
|
|
|
+// foreach ($goods as $countAndAmountGood) {
|
|
|
+// if (in_array($countAndAmountGood['goods_id'], $goodsIds) && $goodsNbr < $couponDetail->coupon_value) {
|
|
|
+// if ($goodsNbr + $countAndAmountGood['nbr'] <= $couponDetail->coupon_value) {
|
|
|
+// $amount = $amount + round($countAndAmountGood['goods_sales_price'] * $countAndAmountGood['nbr'], 2);
|
|
|
+// $goodsNbr += $countAndAmountGood['nbr'];
|
|
|
+// } elseif ($goodsNbr + $countAndAmountGood['nbr'] > $couponDetail->coupon_value) {
|
|
|
+// $amount = $amount + round($countAndAmountGood['goods_sales_price'] * ($couponDetail->coupon_value - $goodsNbr), 2);
|
|
|
+// $goodsNbr = $couponDetail->coupon_value - $goodsNbr;
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// $payAmount = $payAmount - $amount;
|
|
|
+// }else if ($couponDetail->coupon_category == 'NORMAL' && $countAndAmount['amount'] >= $couponDetail->coupon_minimum_limit) { // 金额
|
|
|
+// $payAmount = $payAmount - $couponDetail->coupon_value;
|
|
|
+// }
|
|
|
+// }
|
|
|
+ elseif ($couponDetail->coupon_classify == '折扣券') {
|
|
|
if (Redis::sIsMember($cacheKey, $couponId)) {
|
|
|
continue;
|
|
|
}
|
|
@@ -894,7 +921,7 @@ class OrderService
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- return compact('count', 'amount','goodsIds');
|
|
|
+ return compact('count', 'amount', 'goodsIds');
|
|
|
} catch (\Exception $e) {
|
|
|
dump($e->getTrace());
|
|
|
}
|