1. 컬럼 드래그 너비 조정 버그 수정 및 개선 (ListFactory.ts)
- 드래그 완료 시 click 이벤트 전파 차단으로 정렬(sorting) 오작동 방지
- getBoundingClientRect().width 활용한 소수점 정밀 너비 고정 및 레이아웃 시프트 방지
- 마우스 업 시점의 모든 컬럼 너비를 config.columns에 동기화하여 재렌더링 시 너비 영속성 보장
2. PC 자산 모달 필드 잠금 정책 세분화 (HWModal.ts)
- 자산 추가(add) 모드에서는 모든 필드(사용자 정보 포함) 입력 허용
- 자산 수정(edit) 모드에서만 사용자/조직 정보 관련 필드(lockedUserFields) 선택적 잠금 적용
- 시스템 사양, 네트워크, 위치, 구매 등 다른 모든 섹션은 수정 가능하도록 복구 및 안내 배너 갱신
3. 관리자 전용 메뉴 단일 페이지 앱(SPA) 통합 (Navigation.ts, main.ts, MapEditor.ts)
- 기존의 실사 승인 탭과 독립 실행형 좌표 에디터(MapEditor)를 GNB '관리도구' 하위 메뉴로 통합
- '실사 승인', '위치지정'을 GNB에서 ↳ 화살표 및 11px 폰트의 계층형 탭 스타일로 렌더링
- 내부 서브 탭 바를 삭제하고 메인 영역 전체 높이(calc(100vh - var(--header-height) - 48px))를 확보
- 다른 탭으로 이동 시 MapEditor 인스턴스의 window 이벤트 및 전역 바인딩을 소거하는 destroy() 리사이클 구현
4. 자산 이력(History) 가독성 개선 및 포맷팅 (HWModal.ts, SWModal.ts, DomainModal.ts)
- 자산 변경 이력 로그를 일자별로 그룹화하여 타임라인 렌더링
- 최초 등록 데이터에 녹색 '[최초등록]' 배지 추가
- 기존의 생 JSON 이력 데이터를 친절한 한국어 텍스트 포맷으로 가공하여 가독성 극대화
- Restored HW/SW Dashboard full features (Chart.js, filters, tables) from main
- Unified Search Bar & Filter Bar across all views (List, Location)
- Integrated asset identity info into all Modal Headers
- Standardized 'Remove Row' buttons as high-visibility circular circles
- Centralized hardcoded inline styles into dedicated CSS files
- Fixed various ReferenceErrors and layout regressions in HWModal
- Reverted HWModal to unified form structure from main branch
- Restored original field positions and visibility logic in all modals
- Applied Vercel-inspired CSS classes and removed legacy inline styles
- Restored SwDashboard 2x2 layout from main
- Cleaned up unused modular form files
- Fixed TypeError related to ASSET_MFR schema key
- 불필요한 마이그레이션 스크립트, JSON 덤프, 백업 폴더 일괄 삭제
- 프론트엔드 API_BASE_URL 상수 도입 및 하드코딩된 API 엔드포인트 통합
- 백엔드(server.js) GET/POST 라우팅 구조를 Map 기반 동적 라우팅으로 리팩토링
- 미사용 dummyDataGenerator 제거
- 서버PC 자산을 asset_pc 테이블로 통합 마이그레이션 및 스키마 확장 (위치, IP 정보 복구 완료)
- 하드웨어 자산 페이지의 구매법인 필터를 자산위치 필터로 교체 및 동적 데이터 바인딩 적용
- 모든 자산 리스트 페이지 상단에 설명(Description) 필드 추가 및 헤더 표준화
- 상세 모달 내 삭제 버튼 기능 구현 및 서버PC 용도 필드 노출 오류 수정
- 현 사용조직 필터 리스트가 비어있던 DOM 셀렉터 버그 수정
- SW 모달(구독, 영구, 클라우드) 통합 및 레이아웃 최적화
- 모든 자산 상세 모달에 '조회/수정 모드' 전환 로직(Edit Lock) 적용
- 하드웨어/소프트웨어 대시보드에서 '자산 추가' 버튼 연동 및 기본값 설정
- 클라우드 자산 리스트의 데이터 소스를 DB 직결(cloud_assets) 방식으로 변경
- 클라우드 자산 저장 API 연동 및 불필요한 구형 모달(CloudModal) 제거
- 리스트 뷰에서 상세 보기 시 '조회 모드'로 열리도록 호출 로직 수정
주요 정리 내용:
- 핵심 엔진 분리: state, excelHandler 등을 src/core/ 디렉토리로 격리
- 모달 컴포넌트화: index.html의 거대 HTML 구조를 각 모달 TS 파일로 내장 및 동적 주입
- index.html 최적화: 수백 줄의 중복 코드를 제거하여 슬림한 Shell 구조로 변환
- 전역 복구: 병합 과정에서 발생한 한글 인코딩 깨짐 전수 복구 및 빌드 오류 해결
- 경로 정합성: 파일 구조 변경에 따른 모든 import 경로 일괄 업데이트
주요 변경 사항:
- 서버 자산 상세 정보 4개 그룹(Identity, Connectivity, Specs, Operation)으로 최적화
- 모달 내 조회/수정 모드 전환 및 수정 강조색(#FF3D00) 적용
- 모든 모달의 버튼 사이즈 및 폰트 스타일 가이드 준수 통일
- 수정 취소(Revert) 기능 및 누락된 대시보드 상세 모달 추가
- TypeScript 타입 오류 및 런타임 렌더링 결함 긴급 복구
변경 파일 세부사항:
- index.html: S/W 자산 폼에 분야(select), 부서(input) 요소 추가
- src/components/Modal/SWModal.ts: 모달 오픈/저장 시 분야, 부서 데이터 Get/Set 바인딩 적용
- src/dummyDataGenerator.ts: S/W 더미 데이터 생성 시 임의의 분야 및 부서 값 할당 추가
- src/excelHandler.ts: 엑셀 파일 내 분야/부서 컬럼 정의, JSON 매핑 및 Export 로직 추가
- src/style.css: S/W 데이터 테이블(.sw-table td, th) 가운데 정렬 CSS 적용
- src/views/AssetTableView.ts: S/W 테이블 헤더 전면 개편 및 관리(아이콘) 스타일 개선