From 108268a2e248cb0479750b3617d5eb7881229648 Mon Sep 17 00:00:00 2001 From: pqhuy1987 Date: Fri, 15 May 2026 13:38:34 +0700 Subject: [PATCH] =?UTF-8?q?[CLAUDE]=20FE-Admin=20FE-User:=20Chunk=20Q=20?= =?UTF-8?q?=E2=80=94=20Fix=20layout=20banner=20F3=20violet=20`mx-5`=20inse?= =?UTF-8?q?t=20gap=20khi=E1=BA=BFn=20button=20"+=20Th=C3=AAm=20h=E1=BA=A1n?= =?UTF-8?q?g=20m=E1=BB=A5c"=20l=E1=BB=87ch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bro UAT screenshot 2026-05-15 sau Plan O+P deploy: PE/2026/A/025 Phase=ChoDuyet actor NV Test có F3 AllowApproverEditDetails=TRUE — banner violet "Bạn được phép chỉnh sửa Hạng mục / NCC / Báo giá" render ĐÚNG nhưng layout: ``` [Section padding px-5 = 20px] [Banner mx-5 inset 20px both sides] ← gap 20px right edge [ItemsTab header flex justify-between] [text "1 hạng mục..."] [Button "+ Thêm hạng mục"] ``` Banner mx-5 đẩy inset 20px khỏi Section padding x-5 → tạo gap visual 20px bên phải banner. Phía dưới gap đó là button right-aligned (full Section width) → trông button "lệch" so với banner end + có khoảng trắng phía trên. Fix mirror 2 app (rule §3.9): ```diff -
+
``` - `mx-5` → drop (banner full Section padding width) - `mt-2` → `mb-3` (consistent spacing với ItemsTab header `mb-3` style) Visual sau fix: ``` [Section padding px-5] [Banner full width] [ItemsTab header: text + button align Section right edge] ``` Button "+ Thêm hạng mục" align cùng phải edge với banner. KHÔNG còn gap visual. Files (2 mirror): - fe-user/src/components/pe/PeDetailTabs.tsx:218-223 - fe-admin/src/components/pe/PeDetailTabs.tsx:213-218 Verify: - npm run build fe-user PASS clean (0 TS err, 7.67s) - npm run build fe-admin PASS clean (0 TS err, 7.50s) KHÔNG đụng BE. KHÔNG đụng logic. CSS layout polish only. Pending: bro UAT verify layout fix + Plan P CICD Monitor verify F1+F2 wire (spawn earlier, vẫn running). Co-Authored-By: Claude Opus 4.7 (1M context) --- fe-admin/src/components/pe/PeDetailTabs.tsx | 5 ++++- fe-user/src/components/pe/PeDetailTabs.tsx | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/fe-admin/src/components/pe/PeDetailTabs.tsx b/fe-admin/src/components/pe/PeDetailTabs.tsx index 9167056..e24fdab 100644 --- a/fe-admin/src/components/pe/PeDetailTabs.tsx +++ b/fe-admin/src/components/pe/PeDetailTabs.tsx @@ -210,8 +210,11 @@ export function PeDetailTabs({
{/* Mig 28 (S21 t4) — F3: itemsReadOnly cho phép approver edit Section 2 */} + {/* Plan Q S23 t7 — Drop mx-5 banner, full-width Section padding to + align với ItemsTab header (button "+ Thêm hạng mục" right-aligned + KHÔNG còn lệch khỏi banner inset gap). */} {approverEditMode && readOnly && ( -
+
ⓘ Bạn được phép chỉnh sửa Hạng mục / NCC / Báo giá (workflow bật mode Approver edit). Mọi thay đổi sẽ được ghi vào Lịch sử chỉnh sửa.
diff --git a/fe-user/src/components/pe/PeDetailTabs.tsx b/fe-user/src/components/pe/PeDetailTabs.tsx index 2bb6a9c..e856560 100644 --- a/fe-user/src/components/pe/PeDetailTabs.tsx +++ b/fe-user/src/components/pe/PeDetailTabs.tsx @@ -215,8 +215,11 @@ export function PeDetailTabs({
{/* Mig 28 (S21 t4) — F3: itemsReadOnly cho phép approver edit Section 2. Banner cảnh báo "Bạn đang chỉnh sửa khi đang duyệt" khi approverEditMode. */} + {/* Plan Q S23 t7 — Drop mx-5 banner, full-width Section padding to + align với ItemsTab header (button "+ Thêm hạng mục" right-aligned + KHÔNG còn lệch khỏi banner inset gap). */} {approverEditMode && readOnly && ( -
+
ⓘ Bạn được phép chỉnh sửa Hạng mục / NCC / Báo giá (workflow bật mode Approver edit). Mọi thay đổi sẽ được ghi vào Lịch sử chỉnh sửa.