[CLAUDE] FE-Admin FE-User: Chunk Q — Fix layout banner F3 violet mx-5 inset gap khiến button "+ Thêm hạng mục" lệch
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 3m15s
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 3m15s
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 - <div className="mx-5 mt-2 rounded border border-violet-200 bg-violet-50 px-3 py-2 text-[11px] text-violet-800"> + <div className="mb-3 rounded border border-violet-200 bg-violet-50 px-3 py-2 text-[11px] text-violet-800"> ``` - `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) <noreply@anthropic.com>
This commit is contained in:
@ -210,8 +210,11 @@ export function PeDetailTabs({
|
|||||||
</Section>
|
</Section>
|
||||||
<Section title={`2. Hạng mục + Báo giá NCC (${evaluation.details.length} hạng mục · ${evaluation.suppliers.length} NCC)`}>
|
<Section title={`2. Hạng mục + Báo giá NCC (${evaluation.details.length} hạng mục · ${evaluation.suppliers.length} NCC)`}>
|
||||||
{/* Mig 28 (S21 t4) — F3: itemsReadOnly cho phép approver edit Section 2 */}
|
{/* 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 && (
|
{approverEditMode && readOnly && (
|
||||||
<div className="mx-5 mt-2 rounded border border-violet-200 bg-violet-50 px-3 py-2 text-[11px] text-violet-800">
|
<div className="mb-3 rounded border border-violet-200 bg-violet-50 px-3 py-2 text-[11px] text-violet-800">
|
||||||
ⓘ Bạn được phép chỉnh sửa Hạng mục / NCC / Báo giá (workflow bật mode Approver edit).
|
ⓘ 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.
|
Mọi thay đổi sẽ được ghi vào Lịch sử chỉnh sửa.
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -215,8 +215,11 @@ export function PeDetailTabs({
|
|||||||
<Section title={`2. Hạng mục + Báo giá NCC (${evaluation.details.length} hạng mục · ${evaluation.suppliers.length} NCC)`}>
|
<Section title={`2. Hạng mục + Báo giá NCC (${evaluation.details.length} hạng mục · ${evaluation.suppliers.length} NCC)`}>
|
||||||
{/* Mig 28 (S21 t4) — F3: itemsReadOnly cho phép approver edit Section 2.
|
{/* 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. */}
|
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 && (
|
{approverEditMode && readOnly && (
|
||||||
<div className="mx-5 mt-2 rounded border border-violet-200 bg-violet-50 px-3 py-2 text-[11px] text-violet-800">
|
<div className="mb-3 rounded border border-violet-200 bg-violet-50 px-3 py-2 text-[11px] text-violet-800">
|
||||||
ⓘ Bạn được phép chỉnh sửa Hạng mục / NCC / Báo giá (workflow bật mode Approver edit).
|
ⓘ 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.
|
Mọi thay đổi sẽ được ghi vào Lịch sử chỉnh sửa.
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user