feat : coupon

This commit is contained in:
2025-03-21 16:15:28 +08:00
parent 11a36ece80
commit 8a4674b1dc
11 changed files with 190 additions and 11 deletions

View File

@@ -8,6 +8,7 @@ use App\Constants\Common\CouponCode;
use App\Constants\Common\OrderCode;
use App\Lib\Log;
use App\Model\Order;
use App\Model\OrderGood;
use App\Model\UserCoupon;
use App\Service\ServiceTrait\Api\CouponTrait;
use App\Service\ServiceTrait\Api\OrderTrait;
@@ -54,6 +55,12 @@ class CancelOrderConsumer extends ConsumerMessage
#[Inject]
protected UserCoupon $userCouponModel;
/**
* @var OrderGood
*/
#[Inject]
protected OrderGood $orderGoodModel;
/**
* @param $data
* @param AMQPMessage $message
@@ -92,7 +99,11 @@ class CancelOrderConsumer extends ConsumerMessage
$this->rollbackCoupon($orderType, $orderInfo);
$orderInfo->status = OrderCode::CANCEL;
if (!$orderInfo->save()) throw new Exception('CancelOrderConsumer:error:orderStatusSaveError:'.json_encode($orderInfo->toArray()));
$updateGoods = $this->orderGoodModel->where('order_id',$orderInfo->id)->update([
'status' => OrderCode::CANCEL,
]);
if (!$orderInfo->save() || !$updateGoods) throw new Exception('CancelOrderConsumer:error:orderStatusSaveError:'.json_encode($orderInfo->toArray()));
Db::commit();
}catch (Exception $e){