feat: S/W 테이블 분야/부서 스키마 확장 및 UI 개선

변경 파일 세부사항:

- 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 테이블 헤더 전면 개편 및 관리(아이콘) 스타일 개선
This commit is contained in:
2026-04-14 11:46:46 +09:00
parent 77563994e9
commit 7860edd8d0
6 changed files with 43 additions and 9 deletions

View File

@@ -19,7 +19,9 @@ export function initSWModal(renderContent: () => void, closeModals: () => void)
const newAsset: SoftwareAsset = {
id: id || Math.random().toString(36).substring(2, 9),
type: (document.getElementById('sw-asset-type') as HTMLInputElement).value,
: (document.getElementById('sw-분야') as HTMLSelectElement).value,
: (document.getElementById('sw-법인') as HTMLSelectElement).value,
: (document.getElementById('sw-부서') as HTMLInputElement).value,
: (document.getElementById('sw-제품명') as HTMLInputElement).value,
: (document.getElementById('sw-구매일') as HTMLInputElement).value,
: (document.getElementById('sw-구독일') as HTMLInputElement).value,
@@ -82,7 +84,9 @@ export function openSwModal(asset?: SoftwareAsset) {
(document.getElementById('sw-asset-id') as HTMLInputElement).value = asset.id;
(document.getElementById('sw-asset-type') as HTMLInputElement).value = asset.type;
(document.getElementById('sw-분야') as HTMLSelectElement).value = asset. || '업무공통';
(document.getElementById('sw-법인') as HTMLSelectElement).value = asset.;
(document.getElementById('sw-부서') as HTMLInputElement).value = asset. || '';
(document.getElementById('sw-제품명') as HTMLInputElement).value = asset.;
(document.getElementById('sw-구매일') as HTMLInputElement).value = asset. || '';
(document.getElementById('sw-구독일') as HTMLInputElement).value = asset. || '';
@@ -97,6 +101,8 @@ export function openSwModal(asset?: SoftwareAsset) {
deleteBtn.style.display = 'none';
(document.getElementById('sw-asset-id') as HTMLInputElement).value = '';
(document.getElementById('sw-asset-type') as HTMLInputElement).value = state.activeSubTab;
(document.getElementById('sw-분야') as HTMLSelectElement).value = '업무공통';
(document.getElementById('sw-법인') as HTMLSelectElement).value = '한맥';
(document.getElementById('sw-부서') as HTMLInputElement).value = '';
}
}