'use client';

/**
 * 전량완료 확인 다이얼로그
 *
 * "자재 투입이 필요합니다" 안내 후 확인 클릭 시 MaterialInputModal로 이동
 */

import { ConfirmDialog } from '@/components/ui/confirm-dialog';
import type { WorkOrder } from '../ProductionDashboard/types';

interface CompletionConfirmDialogProps {
  open: boolean;
  onOpenChange: (open: boolean) => void;
  order: WorkOrder | null;
  onConfirm: () => void; // 확인 클릭 시 → MaterialInputModal 열기
}

export function CompletionConfirmDialog({
  open,
  onOpenChange,
  order,
  onConfirm,
}: CompletionConfirmDialogProps) {
  const handleConfirm = () => {
    onOpenChange(false);
    onConfirm(); // 부모에서 MaterialInputModal 열기
  };

  if (!order) return null;

  return (
    <ConfirmDialog
      open={open}
      onOpenChange={onOpenChange}
      onConfirm={handleConfirm}
      variant="warning"
      title={<span className="text-orange-600">자재 투입이 필요합니다!</span>}
      description={
        <div className="space-y-3">
          <div className="bg-gray-50 p-3 rounded-lg space-y-1 text-sm">
            <p>
              <span className="text-muted-foreground">작업지시:</span>{' '}
              <span className="font-medium text-foreground">{order.orderNo}</span>
            </p>
            <p>
              <span className="text-muted-foreground">공정:</span>{' '}
              <span className="font-medium text-foreground">
                {order.processName}
              </span>
            </p>
          </div>
          <p className="text-orange-600 font-medium">
            자재 투입 없이 완료 처리하시겠습니까?
          </p>
          <p className="text-sm text-muted-foreground">
            (LOT 추적이 불가능해집니다)
          </p>
        </div>
      }
      confirmText="확인"
    />
  );
}