feat: 예상 지출 자동 동기화 Observer 구현
- expected_expenses 테이블에 source_type, source_id 컬럼 추가 - PurchaseExpenseSyncObserver: 매입 → 예상 지출 동기화 - WithdrawalExpenseSyncObserver: 카드결제만 → 예상 지출 동기화 - BillExpenseSyncObserver: 발행어음만 → 예상 지출 동기화 - 생성/수정/삭제/복원/강제삭제 이벤트 모두 처리 - 조건 변경 시 자동 동기화 해제 (카드→현금, 발행→수취) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -12,6 +12,8 @@
|
||||
use App\Models\Tenants\Deposit;
|
||||
use App\Models\Tenants\ExpectedExpense;
|
||||
use App\Models\Tenants\Stock;
|
||||
use App\Models\Tenants\Bill;
|
||||
use App\Models\Tenants\Purchase;
|
||||
use App\Models\Tenants\Tenant;
|
||||
use App\Models\Tenants\Withdrawal;
|
||||
use App\Observers\MenuObserver;
|
||||
@@ -24,6 +26,9 @@
|
||||
use App\Observers\TodayIssue\OrderIssueObserver;
|
||||
use App\Observers\TodayIssue\StockIssueObserver;
|
||||
use App\Observers\TodayIssue\WithdrawalIssueObserver;
|
||||
use App\Observers\ExpenseSync\BillExpenseSyncObserver;
|
||||
use App\Observers\ExpenseSync\PurchaseExpenseSyncObserver;
|
||||
use App\Observers\ExpenseSync\WithdrawalExpenseSyncObserver;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Relations\Relation;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
@@ -83,5 +88,10 @@ public function boot(): void
|
||||
Client::observe(ClientIssueObserver::class);
|
||||
Deposit::observe(DepositIssueObserver::class);
|
||||
Withdrawal::observe(WithdrawalIssueObserver::class);
|
||||
|
||||
// 예상 지출 자동 동기화 (매입/카드결제/발행어음 → expected_expenses)
|
||||
Purchase::observe(PurchaseExpenseSyncObserver::class);
|
||||
Withdrawal::observe(WithdrawalExpenseSyncObserver::class);
|
||||
Bill::observe(BillExpenseSyncObserver::class);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user