我创建了一个用于在我的购物车中应用优惠券折扣的功能 该功能将更新我的订单表中要支付的总金额,并在优惠券兑换表中插入优惠券 ID 和用户 ID.. 一切正常。 但是删除已申请的优惠券和撤消订单表和优惠券兑换表的扣除折扣的功能逻辑如何
/**
* deduct discount in cart
*/
$cartGrandTotal = $cart->amount_to_be_paid;
$couponDiscountAmount = $coupon->discount_type === 'percentage'
? $cart->amount_to_be_paid * $coupon->minimum_discount_allowed/100
: $coupon->minimum_discount_allowed;
$cart->amount_to_be_paid = $cart->amount_to_be_paid - $couponDiscountAmount ;
$cart->discount = $couponDiscountAmount;
$cart->save();
/**
* update coupon usage table
*/
// return $cart;
$couponRedeemed = new CouponUsage;
// $couponRedeemed->user_id = auth()->user()->id;
$couponRedeemed->user_id = 2;
$couponRedeemed->coupon_id = $coupon->id;
$couponRedeemed->usage_count=$couponRedeemed->usage_count + 1;
$couponRedeemed->save();
// increase coupon usage count
$coupon->usage_count = $coupon->usage_count + 1;
$coupon->save();
return $cart;