fix: 종합분석 오늘의 이슈 승인/반려 버그 수정

- ComprehensiveAnalysisService::getTodayIssue() 수정
  - 현재 사용자가 결재자인 문서만 조회하도록 whereHas 조건 추가
  - 이전: 테넌트의 모든 대기 결재 표시 → "결재 순서가 아닙니다" 오류
  - 수정: 현재 로그인 사용자가 approver_id인 문서만 표시

- ComprehensiveAnalysisSeeder 테스트 데이터 수정
  - Tenant 287 (프론트_테스트회사) 기준
  - User 33 (홍킬동) 기준으로 결재 단계 생성

- Client 모델 재무 컬럼 추가 (마이그레이션 포함)
  - outstanding_balance: 미수금
  - credit_limit: 여신한도

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-27 18:47:46 +09:00
parent c694c65467
commit 472cf53289
4 changed files with 352 additions and 1 deletions

View File

@@ -5,6 +5,7 @@
use App\Models\BadDebts\BadDebt;
use App\Models\Orders\Client;
use App\Models\Tenants\Approval;
use App\Models\Tenants\ApprovalStep;
use App\Models\Tenants\Deposit;
use App\Models\Tenants\ExpectedExpense;
use Carbon\Carbon;
@@ -35,14 +36,20 @@ public function getAnalysis(array $params): array
}
/**
* 오늘의 이슈 - 결재 대기 문서
* 오늘의 이슈 - 현재 사용자가 결재할 수 있는 대기 문서
*/
protected function getTodayIssue(Carbon $date): array
{
$tenantId = $this->tenantId();
$userId = $this->apiUserId();
// 현재 사용자가 결재자인 대기 문서만 조회
$pendingApprovals = Approval::where('tenant_id', $tenantId)
->pending()
->whereHas('steps', function ($q) use ($userId) {
$q->where('approver_id', $userId)
->where('status', ApprovalStep::STATUS_PENDING);
})
->with(['form', 'drafter'])
->orderBy('drafted_at', 'desc')
->limit(10)