[CLAUDE] FE-User: PE Thao tác 2-panel workspace mirror fe-admin
Chunk 2/3 — mirror y hệt Chunk 1 sang fe-user (rule §3.9 duplicate có chủ đích giữa 2 app — copy + sync tay khi breaking). Files (cùng diff Chunk 1, content identical): + fe-user/src/components/pe/PeListPanel.tsx + fe-user/src/components/pe/PeHeaderForm.tsx + fe-user/src/pages/pe/PurchaseEvaluationWorkspacePage.tsx ~ fe-user/src/components/pe/PeDetailTabs.tsx — add mode prop + Section 5 hint ~ fe-user/src/components/Layout.tsx — resolver Pe_*_Create map workspace ~ fe-user/src/App.tsx — route /purchase-evaluations/workspace Verify: npm run build (fe-user) pass. dotnet test 83 không bị ảnh hưởng (đã verify Chunk 1). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@ -81,7 +81,10 @@ function resolvePath(key: string): string | null {
|
||||
const typeInt = PE_CODE_TO_INT[code]
|
||||
if (!typeInt) return null
|
||||
if (action === 'List') return `/purchase-evaluations?type=${typeInt}`
|
||||
if (action === 'Create') return `/purchase-evaluations/new?type=${typeInt}`
|
||||
// "Thao tác" leaf → workspace 2-panel (Q4 2026-05-07): pick + create + sửa
|
||||
// tables inline. Header-only `/new` page giữ tồn tại cho deep-link cũ
|
||||
// (PeDetailTabs "Sửa header" button vẫn navigate sang đó).
|
||||
if (action === 'Create') return `/purchase-evaluations/workspace?type=${typeInt}`
|
||||
if (action === 'Pending') return `/purchase-evaluations?type=${typeInt}&pendingMe=1`
|
||||
}
|
||||
return null
|
||||
|
||||
Reference in New Issue
Block a user