summaryrefslogtreecommitdiff
path: root/lib/pq/pq-review-table-new/cancel-investigation-dialog.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pq/pq-review-table-new/cancel-investigation-dialog.tsx')
-rw-r--r--lib/pq/pq-review-table-new/cancel-investigation-dialog.tsx62
1 files changed, 59 insertions, 3 deletions
diff --git a/lib/pq/pq-review-table-new/cancel-investigation-dialog.tsx b/lib/pq/pq-review-table-new/cancel-investigation-dialog.tsx
index 94b33ab4..e135d8b8 100644
--- a/lib/pq/pq-review-table-new/cancel-investigation-dialog.tsx
+++ b/lib/pq/pq-review-table-new/cancel-investigation-dialog.tsx
@@ -55,9 +55,9 @@ export function CancelInvestigationDialog({
>
취소
</Button>
- <Button
- variant="destructive"
- onClick={handleConfirm}
+ <Button
+ variant="destructive"
+ onClick={handleConfirm}
disabled={isPending}
>
{isPending ? "처리 중..." : "실사 의뢰 취소"}
@@ -66,4 +66,60 @@ export function CancelInvestigationDialog({
</DialogContent>
</Dialog>
)
+}
+
+interface ReRequestInvestigationDialogProps {
+ isOpen: boolean
+ onClose: () => void
+ onConfirm: () => Promise<void>
+ selectedCount: number
+}
+
+export function ReRequestInvestigationDialog({
+ isOpen,
+ onClose,
+ onConfirm,
+ selectedCount,
+}: ReRequestInvestigationDialogProps) {
+ const [isPending, setIsPending] = React.useState(false)
+
+ async function handleConfirm() {
+ setIsPending(true)
+ try {
+ await onConfirm()
+ } finally {
+ setIsPending(false)
+ }
+ }
+
+ return (
+ <Dialog open={isOpen} onOpenChange={(open) => !open && onClose()}>
+ <DialogContent>
+ <DialogHeader>
+ <DialogTitle>실사 재의뢰</DialogTitle>
+ <DialogDescription>
+ 선택한 {selectedCount}개 협력업체의 실사를 재의뢰하시겠습니까?
+ 취소 상태인 실사만 재의뢰할 수 있습니다.
+ </DialogDescription>
+ </DialogHeader>
+ <DialogFooter>
+ <Button
+ type="button"
+ variant="outline"
+ onClick={onClose}
+ disabled={isPending}
+ >
+ 취소
+ </Button>
+ <Button
+ variant="default"
+ onClick={handleConfirm}
+ disabled={isPending}
+ >
+ {isPending ? "처리 중..." : "실사 재의뢰"}
+ </Button>
+ </DialogFooter>
+ </DialogContent>
+ </Dialog>
+ )
} \ No newline at end of file