fix(booking): 交易內只攔截業務例外,資料庫錯誤改交由例外處理器

新增 BookingRuleViolationException,MemberBookingController::store 與
ProviderBookingController::confirm 只 catch 此型別並回 422(訊息不變)。
QueryException 等其他例外不再被當成 422 回傳 SQL,改由 Laravel 回 500
並回報 Sentry。對應 OpenSpec change fix-booking-exception-handling(M7)。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-18 01:35:38 +08:00
parent dcbf3e4a9a
commit ddbf956144
5 changed files with 224 additions and 16 deletions
@@ -0,0 +1,5 @@
<?php
namespace App\Exceptions;
final class BookingRuleViolationException extends \RuntimeException {}