From 718b9c5217eb435dcba07f8322591564d49e364a Mon Sep 17 00:00:00 2001
From: dujinkim <dujin.kim@dtsolution.co.kr>
Date: Fri, 5 Dec 2025 09:19:08 +0000
Subject: (임수민) 준법 버튼 활성화 수정
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ...basic-contract-detail-table-toolbar-actions.tsx | 46 ++++++++++++----------
 1 file changed, 25 insertions(+), 21 deletions(-)

(limited to 'lib/basic-contract/status-detail/basic-contract-detail-table-toolbar-actions.tsx')

diff --git a/lib/basic-contract/status-detail/basic-contract-detail-table-toolbar-actions.tsx b/lib/basic-contract/status-detail/basic-contract-detail-table-toolbar-actions.tsx
index 56857b8d..77e36bc7 100644
--- a/lib/basic-contract/status-detail/basic-contract-detail-table-toolbar-actions.tsx
+++ b/lib/basic-contract/status-detail/basic-contract-detail-table-toolbar-actions.tsx
@@ -36,7 +36,6 @@ interface RedFlagResolutionState {
 interface BasicContractDetailTableToolbarActionsProps {
     table: Table<BasicContractView>
     gtcData?: Record<number, { gtcDocumentId: number | null; hasComments: boolean }>
-    agreementCommentData?: Record<number, { hasComments: boolean; commentCount: number }>
     redFlagData?: Record<number, boolean>
     redFlagResolutionData?: Record<number, RedFlagResolutionState>
     isComplianceTemplate?: boolean
@@ -45,7 +44,6 @@ interface BasicContractDetailTableToolbarActionsProps {
 export function BasicContractDetailTableToolbarActions({ 
     table, 
     gtcData = {},
-    agreementCommentData = {},
     redFlagData = {},
     redFlagResolutionData = {},
     isComplianceTemplate = false
@@ -90,10 +88,10 @@ export function BasicContractDetailTableToolbarActions({
         return true;
     });
 
-    // 법무검토 요청 가능 여부: 항상 활성화
+    // 법무검토 요청 가능 여부: 준법서약 템플릿이 아닐 때 항상 활성화
     const canRequestLegalReview = !isComplianceTemplate;
 
-    // 준법문의 버튼 활성화 가능 여부: 항상 활성화
+    // 준법문의 버튼 활성화 가능 여부: 준법서약 템플릿일 때 항상 활성화
     const canRequestComplianceInquiry = isComplianceTemplate;
 
     // 필터링된 계약서들 계산
@@ -557,26 +555,32 @@ export function BasicContractDetailTableToolbarActions({
     // 법무검토 요청 / 준법문의
     const handleRequestLegalReview = async () => {
         if (isComplianceTemplate) {
-            // 준법문의: 요청일 기록 후 외부 URL 열기
+            // 준법문의: 선택된 계약서가 있으면 요청일 기록 후 외부 URL 열기, 없으면 URL만 열기
             const selectedContractIds = selectedRows.map(row => row.original.id)
-            try {
-                setLoading(true)
-                const result = await requestComplianceInquiryAction(selectedContractIds)
-                if (result.success) {
-                    toast.success(result.message)
-                    router.refresh()
-                    window.open(complianceInquiryUrl, '_blank', 'noopener,noreferrer')
-                } else {
-                    toast.error(result.message)
+            
+            if (selectedContractIds.length > 0) {
+                try {
+                    setLoading(true)
+                    const result = await requestComplianceInquiryAction(selectedContractIds)
+                    if (result.success) {
+                        toast.success(result.message)
+                        router.refresh()
+                    } else {
+                        toast.error(result.message)
+                    }
+                } catch (error) {
+                    console.error('준법문의 요청 처리 실패:', error)
+                    toast.error('준법문의 요청 중 오류가 발생했습니다.')
+                } finally {
+                    setLoading(false)
                 }
-            } catch (error) {
-                console.error('준법문의 요청 처리 실패:', error)
-                toast.error('준법문의 요청 중 오류가 발생했습니다.')
-            } finally {
-                setLoading(false)
             }
+            
+            // 선택된 계약서가 있든 없든 URL은 항상 열기
+            window.open(complianceInquiryUrl, '_blank', 'noopener,noreferrer')
             return
         }
+        // 법무검토 요청: 선택된 행이 없어도 다이얼로그 열기
         setLegalReviewDialog(true)
     }
 
@@ -683,7 +687,7 @@ export function BasicContractDetailTableToolbarActions({
                         size="sm"
                         onClick={handleRequestLegalReview}
                         className="gap-2"
-                        disabled={!canRequestComplianceInquiry || loading}
+                        disabled={loading}
                         title="준법문의 링크로 이동"
                     >
                         <FileText className="size-4" aria-hidden="true" />
@@ -697,7 +701,7 @@ export function BasicContractDetailTableToolbarActions({
                         size="sm"
                         onClick={handleRequestLegalReview}
                         className="gap-2"
-                        disabled={!canRequestLegalReview || loading}
+                        disabled={loading}
                         title="법무검토 요청 링크 선택"
                     >
                         <FileText className="size-4" aria-hidden="true" />
-- 
cgit v1.2.3

