Files
sam-api/.serena/memories/comprehensive-analysis-fix-2025-12-27.md

58 lines
1.7 KiB
Markdown
Raw Permalink Normal View History

# 종합분석 버그 수정 완료 (2025-12-27)
## 해결한 문제
**증상**: 종합분석 페이지(`/reports/comprehensive-analysis`)에서 승인/반려 클릭 시 "결재 순서가 아닙니다" 오류
**원인**:
- `ComprehensiveAnalysisService::getTodayIssue()`가 테넌트의 **모든** 대기 결재를 반환
- 현재 사용자(홍킬동, User 33)가 결재자가 아닌 문서도 포함되어 있음
- 다른 사용자(Ops Admin, User 12)가 결재자인 문서를 승인하려고 하면 오류 발생
## 수정 내용
### 1. ComprehensiveAnalysisService.php
```php
// 수정 전
$pendingApprovals = Approval::where('tenant_id', $tenantId)
->pending()
->with(['form', 'drafter'])
->get();
// 수정 후
$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'])
->get();
```
### 2. ComprehensiveAnalysisSeeder.php
- `tenantId = 287` (프론트_테스트회사)
- `userId = 33` (홍킬동)
- 결재 단계에서 `approver_id = 33` 설정
## 테스트 환경
| 항목 | 값 |
|------|-----|
| Tenant ID | 287 |
| 테스트 User | 홍킬동 (User 33, hhhhhh@example.com) |
| 보조 User | Ops Admin (User 12) |
## Git 커밋
- **api**: `fix: 종합분석 오늘의 이슈 승인/반려 버그 수정`
- **docs**: `docs: 종합분석 버그 수정 변경이력 추가`
## 관련 파일
- `api/app/Services/ComprehensiveAnalysisService.php`
- `api/database/seeders/ComprehensiveAnalysisSeeder.php`
- `docs/plans/react-mock-remaining-tasks.md`