summaryrefslogtreecommitdiff
path: root/lib/bidding/vendor/partners-bidding-toolbar-actions.tsx
diff options
context:
space:
mode:
authordujinkim <dujin.kim@dtsolution.co.kr>2025-09-04 08:31:31 +0000
committerdujinkim <dujin.kim@dtsolution.co.kr>2025-09-04 08:31:31 +0000
commitb67e36df49f067cbd5ba899f9fbcc755f38d4b4f (patch)
tree5a71c5960f90d988cd509e3ef26bff497a277661 /lib/bidding/vendor/partners-bidding-toolbar-actions.tsx
parentb7f54b06c1ef9e619f5358fb0a5caad9703c8905 (diff)
(대표님, 최겸, 임수민) 작업사항 커밋
Diffstat (limited to 'lib/bidding/vendor/partners-bidding-toolbar-actions.tsx')
-rw-r--r--lib/bidding/vendor/partners-bidding-toolbar-actions.tsx29
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"