summaryrefslogtreecommitdiff
path: root/lib/basic-contract/status-detail/basic-contracts-detail-columns.tsx
diff options
context:
space:
mode:
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.tsx84
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,
},