fix(date): UTC 기반 날짜를 로컬 타임존으로 변경

- 공통 날짜 유틸리티 함수 추가 (src/utils/date.ts)
  - getLocalDateString(): 로컬 타임존 YYYY-MM-DD 포맷
  - getTodayString(): 오늘 날짜 반환
  - getDateAfterDays(): N일 후 날짜 계산
  - formatDateForInput(): API 응답 → input 포맷 변환

- toISOString().split('T')[0] 패턴을 공통 함수로 교체
  - 견적: QuoteRegistration, QuoteRegistrationV2, types
  - 건설: contract, site-briefings, estimates, bidding types
  - 건설: IssueDetailForm, ConstructionDetailClient, ProjectEndDialog
  - 자재: InspectionCreate, ReceivingReceiptContent, StockStatus/mockData
  - 품질: InspectionManagement/mockData
  - 기타: PricingFormClient, ShipmentCreate, PurchaseOrderDocument
  - 기타: MainDashboard, attendance/actions, dev/generators

문제: toISOString()은 UTC 기준이라 한국(UTC+9)에서 오전 9시 이전에
      전날 날짜가 표시되는 버그 발생
해결: 로컬 타임존 기반 날짜 포맷 함수로 통일
This commit is contained in:
2026-01-26 17:15:22 +09:00
parent 7be8caf3f7
commit f9dafbc02c
21 changed files with 161 additions and 82 deletions

View File

@@ -3,6 +3,7 @@
*/
import type { StockItem, StockDetail, StockStats, FilterTab } from './types';
import { getLocalDateString } from '@/utils/date';
// 재고 상태 결정 함수
function getStockStatus(stockQty: number, safetyStock: number): 'normal' | 'low' | 'out' {
@@ -418,7 +419,7 @@ export function generateStockDetail(item: StockItem): StockDetail {
const daysAgo = seededInt(lotSeed, 5, 60);
const date = new Date('2025-12-23'); // 고정 날짜 사용
date.setDate(date.getDate() - daysAgo);
const dateStr = date.toISOString().split('T')[0];
const dateStr = getLocalDateString(date);
const lotDate = dateStr.replace(/-/g, '').slice(2);
return {