summaryrefslogtreecommitdiff
path: root/lib/evaluation/table/evaluation-columns.tsx
diff options
context:
space:
mode:
authordujinkim <dujin.kim@dtsolution.co.kr>2025-10-27 10:03:06 +0000
committerdujinkim <dujin.kim@dtsolution.co.kr>2025-10-27 10:03:06 +0000
commita3525f8bdfcf849cc1716fab81cb8facadbe9a8e (patch)
tree0b5b534e92bcfe188d4906db7d16c37044262c2f /lib/evaluation/table/evaluation-columns.tsx
parente87b7b06d92dc7e7235ecda24c212169f30e82ec (diff)
(최겸) 구매 협력업체 관리(PQ/실사관리, 정기평가 협력업체 제출 상세 dialog 개발,
Diffstat (limited to 'lib/evaluation/table/evaluation-columns.tsx')
-rw-r--r--lib/evaluation/table/evaluation-columns.tsx46
1 files changed, 35 insertions, 11 deletions
diff --git a/lib/evaluation/table/evaluation-columns.tsx b/lib/evaluation/table/evaluation-columns.tsx
index e8b51b57..b68aa70d 100644
--- a/lib/evaluation/table/evaluation-columns.tsx
+++ b/lib/evaluation/table/evaluation-columns.tsx
@@ -6,13 +6,19 @@ import { type ColumnDef } from "@tanstack/react-table";
import { Checkbox } from "@/components/ui/checkbox";
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
-import { Pencil, Eye, MessageSquare, Check, X, Clock, FileText, Circle, Ellipsis, BarChart3 } from "lucide-react";
+import { Pencil, Eye, MessageSquare, Check, X, Clock, FileText, Circle, Ellipsis, BarChart3, ChevronDown } from "lucide-react";
import {
Tooltip,
TooltipContent,
TooltipProvider,
TooltipTrigger,
} from "@/components/ui/tooltip";
+import {
+ DropdownMenu,
+ DropdownMenuContent,
+ DropdownMenuItem,
+ DropdownMenuTrigger,
+} from "@/components/ui/dropdown-menu";
import { DataTableColumnHeaderSimple } from "@/components/data-table/data-table-column-simple-header";
import { PeriodicEvaluationView, PeriodicEvaluationAggregatedView } from "@/db/schema";
import { DataTableRowAction } from "@/types/table";
@@ -466,16 +472,34 @@ export function getPeriodicEvaluationsColumns({
cell: ({ row }) => {
return (
<div className="flex items-center gap-1">
- <Button
- variant="ghost"
- size="icon"
- className="size-8"
- onClick={() => setRowAction({ row, type: "view" })}
- aria-label="상세보기"
- title="상세보기"
- >
- <Ellipsis className="size-4" />
- </Button>
+ <DropdownMenu>
+ <DropdownMenuTrigger asChild>
+ <Button
+ variant="ghost"
+ size="icon"
+ className="size-8"
+ aria-label="평가 상세 메뉴"
+ >
+ <Ellipsis className="size-4" />
+ </Button>
+ </DropdownMenuTrigger>
+ <DropdownMenuContent align="end">
+ <DropdownMenuItem
+ onClick={() => setRowAction({ row, type: "view" })}
+ className="flex items-center gap-2"
+ >
+ <Eye className="h-4 w-4" />
+ 평가 상세
+ </DropdownMenuItem>
+ <DropdownMenuItem
+ onClick={() => setRowAction({ row, type: "vendor-submission" as any })}
+ className="flex items-center gap-2"
+ >
+ <FileText className="h-4 w-4" />
+ 협력업체 제출 상세
+ </DropdownMenuItem>
+ </DropdownMenuContent>
+ </DropdownMenu>
</div>
);
},