[CLAUDE] Scaffold: khoi tao SOLUTION_ERP Phase 0

- .NET 10 Clean Architecture: Domain/Application/Infrastructure/Api (4 project)
- 2 React + Vite + TS app: fe-admin (:8082), fe-user (:8080) voi proxy /api
- Node engines >=20, .nvmrc = 20 cho CI (bai hoc NamGroup)
- SQL Server 2022 qua docker-compose (dev)
- Parse 8 FORM -> docs/forms-spec.md (catalog + ma HD format RG-001)
- Parse QUY_TRINH -> docs/workflow-contract.md (9 phase state machine + role matrix)
- docs: CLAUDE.md, STATUS.md, PROJECT-MAP.md, migration-todos.md (roadmap 5 phase)
- .claude/skills: 3 placeholder (contract-workflow, form-engine, permission-matrix)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
pqhuy1987
2026-04-21 10:37:34 +07:00
commit 25dad7f36f
69 changed files with 3616 additions and 0 deletions

View File

@ -0,0 +1,34 @@
---
name: contract-workflow
description: State machine 9 phase cho hợp đồng TP/NCC/Tổ đội — guard rule, SLA auto-approve, role × phase matrix. Dùng khi debug transition, approve HĐ, xử lý HĐ quá hạn.
when-to-use:
- "transition contract"
- "chuyển phase hợp đồng"
- "HĐ quá hạn auto-approve"
- "role không duyệt được"
- "reject contract về draft"
---
# Contract Workflow Skill
> **Phase 3 deliverable.** Hiện tại skill này là PLACEHOLDER — sẽ được expand khi implement Phase 3.
## Context
Xem đầy đủ ở [`docs/workflow-contract.md`](../../../docs/workflow-contract.md):
- 9 state: `DangChon``DangSoanThao``DangGopY``DangDamPhan``DangInKy``DangKiemTraCCM``DangTrinhKy``DangDongDau``DaPhatHanh` (+ `TuChoi`)
- SLA mỗi phase: Draft 7d, GópÝ 7d, ĐàmPhán 7d, InKý 1d, CCMCheck 3d, BOD 1d
- Role × Phase matrix (Drafter, TBP/TPB, PD/PM, PRO/EQU/FIN/ACT, CCM, BOD/NĐUQ, HRA)
## Code pointers (sẽ có sau Phase 3)
- `src/Backend/SolutionErp.Domain/Contracts/ContractPhase.cs` (enum)
- `src/Backend/SolutionErp.Domain/Contracts/Contract.cs` (aggregate root)
- `src/Backend/SolutionErp.Application/Contracts/Services/IContractWorkflowService.cs`
- `src/Backend/SolutionErp.Infrastructure/HostedServices/SlaExpiryJob.cs`
## Common pitfalls (dự kiến — update khi build)
- Không check bypass flag khi HĐ với Chủ đầu tư → sẽ reject oan ở CCM phase
- Gen mã HĐ trước khi BOD approve → có thể waste số thứ tự nếu reject sau đó
- Auto-approve chạy trong transaction dài → lock table → timeout