From 5a370de52d6947d35aa07f9545c4f6a4d83eadd7 Mon Sep 17 00:00:00 2001 From: joonhoekim <26rote@gmail.com> Date: Wed, 26 Nov 2025 18:43:10 +0900 Subject: (김준회) dolce 메모리 효율적 동기화 처리(Streaming), 로컬 건 Date 정보 formatting, Uploader 정보 네임 표시 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/dolce/table/detail-drawing-columns.tsx | 7 ++++++- lib/dolce/utils/date-formatter.ts | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) (limited to 'lib/dolce') diff --git a/lib/dolce/table/detail-drawing-columns.tsx b/lib/dolce/table/detail-drawing-columns.tsx index 30290817..215a0cff 100644 --- a/lib/dolce/table/detail-drawing-columns.tsx +++ b/lib/dolce/table/detail-drawing-columns.tsx @@ -104,7 +104,7 @@ export function createDetailDrawingColumns( minSize: 180, cell: ({ row }) => { // 항상 RegisterKindENM 필드를 보여줌 - return
{row.getValue("RegisterKindENM")}
; + return
{row.getValue("RegisterKindENM") || row.original.RegisterKind}
; }, }, { @@ -114,6 +114,11 @@ export function createDetailDrawingColumns( cell: ({ row }) => { const userENM = row.original.CreateUserENM; const userNM = row.getValue("CreateUserNM") as string; + + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const localUserName = (row.original as any).userName; + if (localUserName) return
{localUserName}
; + return
{lng === "en" ? (userENM || userNM) : (userNM || userENM)}
; }, }, diff --git a/lib/dolce/utils/date-formatter.ts b/lib/dolce/utils/date-formatter.ts index 83e78b0d..ebf9653a 100644 --- a/lib/dolce/utils/date-formatter.ts +++ b/lib/dolce/utils/date-formatter.ts @@ -6,12 +6,30 @@ */ import { formatSwpDate } from "@/lib/swp/utils"; +import { format, parseISO, isValid } from "date-fns"; /** * SWP와 동일한 방식 + * Postgres Date 타입(ISO String) 처리 추가 */ export function formatDolceDateTime(dateStr: string | null): string { if (!dateStr) return "-"; + + // ISO string check (e.g. "2023-11-27T10:20:30.000Z" or similar) + if (dateStr.includes("-") && (dateStr.includes("T") || dateStr.includes(":"))) { + try { + const date = parseISO(dateStr); + if (isValid(date)) { + // Requested format: YYYY-MM-DD AM/PM HH:mm:ss + // date-fns format: yyyy-MM-dd a hh:mm:ss + return format(date, "yyyy-MM-dd a hh:mm:ss"); + } + } catch (e) { + // ignore parse error, fallback to default + console.error("Date parse error", e); + } + } + return formatSwpDate(dateStr); } -- cgit v1.2.3