diff --git a/fe-admin/src/components/pipeline/PipelineTreePanel.tsx b/fe-admin/src/components/pipeline/PipelineTreePanel.tsx index dd351b7..8f50212 100644 --- a/fe-admin/src/components/pipeline/PipelineTreePanel.tsx +++ b/fe-admin/src/components/pipeline/PipelineTreePanel.tsx @@ -86,9 +86,15 @@ function buildTree(rows: PeListItem[]): YearNode[] { export function PipelineTreePanel({ currentStage, className, + bodyMaxHClass, }: { currentStage: PipelineStageNo className?: string + // [S168 GĐ3-D gate F-1] Host 3-panel (Panel-3 TỰ CUỘN) truyền class trần riêng cho THÂN + // cây (vd `lg:max-h-none` — panel giữ đúng 1 thanh cuộn; max-h mặc định 100vh−16rem là + // hiệu-chỉnh cho trang giấy-cuộn, vượt chỗ Panel-3 /inbox ~26px ⇒ 2 cuộn lồng nhau). + // Mặc định giữ nguyên — 3 host giấy-cuộn cũ không đổi hành vi. + bodyMaxHClass?: string }) { const { canPe, buildStages } = usePipelineStages() const [search, setSearch] = useState('') @@ -212,7 +218,7 @@ export function PipelineTreePanel({ /> -
Bạn chưa có quyền xem phiếu Duyệt NCC nên cây toàn trình chưa hiển thị được. diff --git a/fe-admin/src/pages/contracts/ContractsListPage.tsx b/fe-admin/src/pages/contracts/ContractsListPage.tsx index 2b87b98..0f08bda 100644 --- a/fe-admin/src/pages/contracts/ContractsListPage.tsx +++ b/fe-admin/src/pages/contracts/ContractsListPage.tsx @@ -14,9 +14,10 @@ import { useMemo } from 'react' import { useQuery } from '@tanstack/react-query' import { useNavigate, useSearchParams } from 'react-router-dom' -import { FileText, Search, X } from 'lucide-react' +import { FileText, Search } from 'lucide-react' import { ContractDetailContent } from '@/components/contracts/ContractDetailContent' import { WorkflowHistoryPanel } from '@/components/contracts/WorkflowHistoryPanel' +import { PipelineTreePanel } from '@/components/pipeline/PipelineTreePanel' import { PhaseBadge } from '@/components/PhaseBadge' import { SlaTimer } from '@/components/SlaTimer' import { EmptyState } from '@/components/EmptyState' @@ -240,12 +241,12 @@ export function ContractsListPage() { {/* Panel 3 — Workflow + history */}
Bạn chưa có quyền xem phiếu Duyệt NCC nên cây toàn trình chưa hiển thị được. diff --git a/fe-user/src/pages/InboxPage.tsx b/fe-user/src/pages/InboxPage.tsx index 6d747db..a675c7b 100644 --- a/fe-user/src/pages/InboxPage.tsx +++ b/fe-user/src/pages/InboxPage.tsx @@ -7,9 +7,10 @@ import { useMemo } from 'react' import { useQuery } from '@tanstack/react-query' import { useNavigate, useSearchParams } from 'react-router-dom' -import { Inbox, AlertTriangle, Clock, FileText, Search, X, ClipboardList } from 'lucide-react' +import { Inbox, AlertTriangle, Clock, FileText, Search, ClipboardList } from 'lucide-react' import { ContractDetailContent } from '@/components/contracts/ContractDetailContent' import { WorkflowHistoryPanel } from '@/components/contracts/WorkflowHistoryPanel' +import { PipelineTreePanel } from '@/components/pipeline/PipelineTreePanel' import { PhaseBadge } from '@/components/PhaseBadge' import { SlaTimer } from '@/components/SlaTimer' import { EmptyState } from '@/components/EmptyState' @@ -338,12 +339,13 @@ export function InboxPage() { {/* Panel 3 — Workflow + history */}