diff options
| author | 0-Zz-ang <s1998319@gmail.com> | 2025-10-28 14:57:14 +0900 |
|---|---|---|
| committer | 0-Zz-ang <s1998319@gmail.com> | 2025-10-28 14:57:14 +0900 |
| commit | 5b0994f2af11c77b61ac59df6211ccb20fae4d44 (patch) | |
| tree | 3cdd7d9039b058d9cde776536e4c38275a720178 /lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx | |
| parent | 06cf51e5dd14e118fa8dbb8c666d78ace61cbf9b (diff) | |
(박서영)준법설문 관련요구사항 반영
Diffstat (limited to 'lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx')
| -rw-r--r-- | lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx b/lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx index 9a140b27..c6f82fc8 100644 --- a/lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx +++ b/lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx @@ -30,6 +30,7 @@ import { BasicContractView } from "@/db/schema" import { downloadFile, quickPreview } from "@/lib/file-download" import { toast } from "sonner" import { useRouter } from "next/navigation" +import { getComplianceResponseByBasicContractId } from "@/lib/compliance/services" interface GetColumnsProps { setRowAction: React.Dispatch<React.SetStateAction<DataTableRowAction<BasicContractView> | null>> @@ -151,7 +152,26 @@ export function getDetailColumns({ <Mail className="mr-2 h-4 w-4" /> 재발송 </DropdownMenuItem> - <DropdownMenuItem onClick={() => setRowAction({ type: "view", row })}> + <DropdownMenuItem onClick={async () => { + // 준법서약 템플릿인 경우 compliance 응답 페이지로 이동 + if (contract.templateName?.includes('준법')) { + try { + const response = await getComplianceResponseByBasicContractId(contract.id); + + if (response) { + router.push(`/evcp/compliance/${response.templateId}/responses/${response.id}`); + } else { + toast.error("준법서약 응답을 찾을 수 없습니다."); + setRowAction({ type: "view", row }); + } + } catch (error) { + console.error("Error fetching compliance response:", error); + toast.error("응답 정보를 가져오는데 실패했습니다."); + } + } else { + setRowAction({ type: "view", row }); + } + }}> <FileText className="mr-2 h-4 w-4" /> 상세 정보 </DropdownMenuItem> |
