import { MasterAssetData } from './excelHandler'; import { generateDummyData } from './dummyDataGenerator'; import { realServerData } from './realServerData'; // --- State Definitions --- export interface AppState { masterData: MasterAssetData; activeCategory: 'hw' | 'sw'; activeSubTab: string; activeCharts: any[]; } const dummy = generateDummyData(); // 서버 데이터만 실제 데이터로 교체 const mergedHw = [ ...dummy.hw.filter(a => a.type !== '서버'), ...realServerData.map(s => ({ ...s, type: '서버', 관리자: s.담당자_정 || '홍길동', 담당자_정: s.담당자_정 || '홍길동', 담당자_부: s.담당자_부 || '김철수', MACaddress: s.MACaddress || '', HW사양: s.HW사양 || '', 구매일: s.구매일 || '', 금액: s.금액 || '', 납품업체: s.납품업체 || '', 품의서명: s.품의서명 || '', 원격접속: s.원격접속 || '', 서버ID: s.서버ID || '', 서버PW: s.서버PW || '', 비고: s.비고 || '' })) ]; // --- Initial State --- export const state: AppState = { masterData: { ...dummy, hw: mergedHw, logs: [] // 공동작업자의 수정 이력 배열 추가 }, activeCategory: 'hw', activeSubTab: '대시보드', activeCharts: [] }; // --- State Helpers --- export function updateState(newState: Partial) { Object.assign(state, newState); }