[CLAUDE] FE-User: workflow-matrix view — thêm flag thứ 8 "Duyệt là KẾT THÚC quy trình" (thiếu từ Mig 58)
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m1s

WorkflowMatrixViewPage (màn "Luồng duyệt" read-only của user, build S24 với 7 flag) thiếu flag
thứ 8 allowApproverFinalize ("Duyệt là KẾT THÚC quy trình, không trình tiếp CEO") thêm ở Mig 58
(S87) → matrix "chưa hiển thị chính xác" QT-DN-V2-001 (anh Kiệt FDC). BE overview DTO đã gửi sẵn
field này (ApprovalWorkflowV2AdminFeatures.cs:41/188), chỉ FE matrix + AwLevelDto type thiếu.

Thêm allowApproverFinalize vào AwLevelDto + FlagRow thứ 8 (colSpan2, mirror admin Designer).
FE-user only (matrix là view user-app, không có bản fe-admin). Build xanh.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
pqhuy1987
2026-06-25 15:45:28 +07:00
parent 9c920ad4c3
commit fef4c33527
2 changed files with 7 additions and 2 deletions

View File

@ -8,7 +8,8 @@
// rowSpan cho Bước (Step) + Cấp (Level order). Color coding 2 layer:
// - Step bg + headerBg cycle 5 màu (blue/purple/emerald/amber/pink)
// - Cấp badge ring cycle 5 màu (violet/sky/teal/orange/rose)
// Mỗi cell Quyền duyệt = 7 checkbox read-only label nguyên văn admin Designer.
// Mỗi cell Quyền duyệt = 8 checkbox read-only label nguyên văn admin Designer
// (7 cũ Mig 29/30/31 + flag thứ 8 "Duyệt là KẾT THÚC" Mig 58 — S89).
//
// URL: /purchase-evaluations/workflow-matrix?type=1|2
// Mirror layout admin `fe-admin/src/pages/system/ApprovalWorkflowsV2Page.tsx`
@ -277,6 +278,8 @@ function WorkflowCard({ wf }: { wf: AwDefinitionDto }) {
<FlagRow active={r.level.allowApproverEditDetails} label="Cho phép chỉnh sửa Section 2 (Hạng mục/NCC/Báo giá) lúc đang duyệt" colSpan2 />
<FlagRow active={r.level.allowApproverEditBudget} label="Cho phép chỉnh sửa Section ngân sách lúc đang duyệt" colSpan2 />
<FlagRow active={r.level.allowApproverSkipToFinal} label="Cho phép duyệt thẳng Cấp cuối khi đang duyệt" colSpan2 />
{/* [Mig 58 — anh Kiệt FDC, S89] Flag thứ 8: cấp này Duyệt = KẾT THÚC (không trình CEO) — trước đây matrix thiếu nên "chưa hiển thị chính xác". */}
<FlagRow active={r.level.allowApproverFinalize} label="Duyệt là KẾT THÚC quy trình (không trình tiếp CEO)" colSpan2 />
</div>
</td>
</tr>

View File

@ -2,7 +2,7 @@
// ApprovalWorkflowV2AdminFeatures.cs). Chỉ subset cần cho fe-user read-only
// matrix view (Plan AA Chunk B S24).
//
// 7 Allow* flag per slot Level — Mig 29/30/31 cumulative.
// 8 Allow* flag per slot Level — Mig 29/30/31 + Mig 58 (allowApproverFinalize).
export type AwLevelDto = {
id: string
@ -18,6 +18,8 @@ export type AwLevelDto = {
allowApproverEditDetails: boolean
allowApproverEditBudget: boolean
allowApproverSkipToFinal: boolean
// [Mig 58 — anh Kiệt FDC, S89] Flag thứ 8: cấp này Duyệt = KẾT THÚC quy trình (không trình tiếp CEO).
allowApproverFinalize: boolean
}
export type AwStepDto = {