diff options
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 | 84 |
1 files changed, 46 insertions, 38 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 0dd33bcb..5a875541 100644 --- a/lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx +++ b/lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx @@ -373,49 +373,57 @@ export function getDetailColumns({ minSize: 130, }, - // 법무검토 요청일 + // 법무검토 상태 { - accessorKey: "legalReviewRequestedAt", + accessorKey: "legalReviewStatus", header: ({ column }) => ( - <DataTableColumnHeaderSimple column={column} title="법무검토 요청" /> + <DataTableColumnHeaderSimple column={column} title="법무검토 상태" /> ), cell: ({ row }) => { - const date = row.getValue("legalReviewRequestedAt") as Date | null - return date ? ( - <div className="text-sm text-purple-600"> - <div className="font-medium">요청됨</div> - <div className="text-xs">{formatDateTime(date, "KR")}</div> - </div> - ) : ( - <div className="text-sm text-gray-400">-</div> - ) - }, - minSize: 140, - }, - - // 법무검토 완료일 - { - accessorKey: "legalReviewCompletedAt", - header: ({ column }) => ( - <DataTableColumnHeaderSimple column={column} title="법무검토 완료" /> - ), - cell: ({ row }) => { - const date = row.getValue("legalReviewCompletedAt") as Date | null + const status = row.getValue("legalReviewStatus") as string | null const requestedDate = row.getValue("legalReviewRequestedAt") as Date | null - - return date ? ( - <div className="text-sm text-indigo-600"> - <div className="font-medium">완료</div> - <div className="text-xs">{formatDateTime(date, "KR")}</div> - </div> - ) : requestedDate ? ( - <div className="text-sm text-orange-500"> - <div className="font-medium">진행중</div> - <div className="text-xs">검토 대기</div> - </div> - ) : ( - <div className="text-sm text-gray-400">-</div> - ) + const completedDate = row.getValue("legalReviewCompletedAt") as Date | null + + // 법무검토 상태 우선, 없으면 기존 로직으로 판단 + if (status) { + const statusColors: Record<string, string> = { + '신규등록': 'text-blue-600', + '검토요청': 'text-purple-600', + '담당자배정': 'text-orange-600', + '검토중': 'text-yellow-600', + '답변완료': 'text-green-600', + '재검토요청': 'text-red-600', + '보류': 'text-gray-500', + '취소': 'text-red-700' + } + + return ( + <div className={`text-sm ${statusColors[status] || 'text-gray-600'}`}> + <div className="font-medium">{status}</div> + </div> + ) + } + + // legalWorks에 데이터가 없는 경우 기존 로직 사용 + if (completedDate) { + return ( + <div className="text-sm text-green-600"> + <div className="font-medium">완료</div> + <div className="text-xs">{formatDateTime(completedDate, "KR")}</div> + </div> + ) + } else if (requestedDate) { + return ( + <div className="text-sm text-orange-600"> + <div className="font-medium">진행중</div> + <div className="text-xs">검토 대기</div> + </div> + ) + } else { + return ( + <div className="text-sm text-gray-400">-</div> + ) + } }, minSize: 140, }, |
