diff options
| author | dujinkim <dujin.kim@dtsolution.co.kr> | 2025-09-04 08:31:31 +0000 |
|---|---|---|
| committer | dujinkim <dujin.kim@dtsolution.co.kr> | 2025-09-04 08:31:31 +0000 |
| commit | b67e36df49f067cbd5ba899f9fbcc755f38d4b4f (patch) | |
| tree | 5a71c5960f90d988cd509e3ef26bff497a277661 /lib/bidding/vendor/partners-bidding-toolbar-actions.tsx | |
| parent | b7f54b06c1ef9e619f5358fb0a5caad9703c8905 (diff) | |
(대표님, 최겸, 임수민) 작업사항 커밋
Diffstat (limited to 'lib/bidding/vendor/partners-bidding-toolbar-actions.tsx')
| -rw-r--r-- | lib/bidding/vendor/partners-bidding-toolbar-actions.tsx | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/lib/bidding/vendor/partners-bidding-toolbar-actions.tsx b/lib/bidding/vendor/partners-bidding-toolbar-actions.tsx index c45568bd..324e21d1 100644 --- a/lib/bidding/vendor/partners-bidding-toolbar-actions.tsx +++ b/lib/bidding/vendor/partners-bidding-toolbar-actions.tsx @@ -2,19 +2,21 @@ import * as React from "react" import { type Table } from "@tanstack/react-table" -import { Users } from "lucide-react" +import { Users, CheckCircle, XCircle } from "lucide-react" import { Button } from "@/components/ui/button" import { PartnersBiddingListItem } from '../detail/service' interface PartnersBiddingToolbarActionsProps { table: Table<PartnersBiddingListItem> + companyId: number onRefresh: () => void setRowAction?: (action: { type: string; row: { original: PartnersBiddingListItem } }) => void } export function PartnersBiddingToolbarActions({ table, + companyId, onRefresh, setRowAction }: PartnersBiddingToolbarActionsProps) { @@ -29,6 +31,11 @@ export function PartnersBiddingToolbarActions({ selectedBidding.invitationStatus === 'submitted' ) + // 참여 의사 결정 버튼 활성화 조건 (sent 상태이고 아직 참여의사를 결정하지 않은 경우) + const canDecideParticipation = selectedBidding && + selectedBidding.invitationStatus === 'sent' && + selectedBidding.isPreQuoteSelected === null + const handleAttendanceClick = () => { if (selectedBidding && setRowAction) { setRowAction({ @@ -38,11 +45,31 @@ export function PartnersBiddingToolbarActions({ } } + const handleParticipationClick = () => { + if (selectedBidding && setRowAction) { + setRowAction({ + type: 'participation', + row: { original: selectedBidding } + }) + } + } + return ( <div className="flex items-center gap-2"> <Button variant="outline" size="sm" + onClick={handleParticipationClick} + disabled={!canDecideParticipation} + className="flex items-center gap-2" + > + <CheckCircle className="w-4 h-4" /> + 참여 의사 결정 + </Button> + + <Button + variant="outline" + size="sm" onClick={handleAttendanceClick} disabled={!canManageAttendance} className="flex items-center gap-2" |
