feat: 하드웨어 자동 변경 이력 생성 및 자산 관리 프로세스 고도화
This commit is contained in:
@@ -105,7 +105,7 @@ export function renderHwDashboard(container: HTMLElement) {
|
||||
<th>유형</th>
|
||||
<th>모델명</th>
|
||||
<th>사용자/담당자</th>
|
||||
<th>구매일</th>
|
||||
<th>구매연월</th>
|
||||
<th>연령</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
@@ -22,6 +22,9 @@ export function renderEquipmentList(container: HTMLElement) {
|
||||
<button id="btn-reset-filters" class="btn btn-outline btn-reset">
|
||||
<i data-lucide="refresh-ccw"></i> 필터 초기화
|
||||
</button>
|
||||
<button id="btn-add-equip" class="btn btn-primary" style="margin-left: auto;">
|
||||
<i data-lucide="plus"></i> 자산 추가
|
||||
</button>
|
||||
`;
|
||||
container.appendChild(filterBar);
|
||||
|
||||
@@ -39,7 +42,7 @@ export function renderEquipmentList(container: HTMLElement) {
|
||||
<th style="text-align:center;">모델명</th>
|
||||
<th style="text-align:center;">보관위치</th>
|
||||
<th style="text-align:center;">관리자</th>
|
||||
<th style="text-align:center;">구매일</th>
|
||||
<th style="text-align:center;">구매연월</th>
|
||||
<th style="text-align:center;">금액</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
@@ -22,6 +22,9 @@ export function renderMobileList(container: HTMLElement) {
|
||||
<button id="btn-reset-filters" class="btn btn-outline btn-reset">
|
||||
<i data-lucide="refresh-ccw"></i> 필터 초기화
|
||||
</button>
|
||||
<button id="btn-add-mobile" class="btn btn-primary" style="margin-left: auto;">
|
||||
<i data-lucide="plus"></i> 자산 추가
|
||||
</button>
|
||||
`;
|
||||
container.appendChild(filterBar);
|
||||
|
||||
@@ -38,7 +41,7 @@ export function renderMobileList(container: HTMLElement) {
|
||||
<th style="text-align:center;">명칭</th>
|
||||
<th style="text-align:center;">보관위치</th>
|
||||
<th style="text-align:center;">관리자</th>
|
||||
<th style="text-align:center;">구매일</th>
|
||||
<th style="text-align:center;">구매연월</th>
|
||||
<th style="text-align:center;">금액</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -106,7 +109,8 @@ export function renderMobileList(container: HTMLElement) {
|
||||
(document.getElementById('filter-keyword') as HTMLInputElement).value = '';
|
||||
(document.getElementById('filter-corp') as HTMLSelectElement).value = '';
|
||||
updateTable();
|
||||
});
|
||||
});
|
||||
|
||||
updateTable();
|
||||
}
|
||||
|
||||
updateTable();
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { state } from '../../core/state';
|
||||
import { openPcModal } from '../../components/Modal/PCModal';
|
||||
import { openHwModal } from '../../components/Modal/HWModal';
|
||||
import { formatInline, sortAssets } from '../../core/utils';
|
||||
import { createIcons, Paperclip, RefreshCcw } from 'lucide';
|
||||
|
||||
@@ -28,7 +28,7 @@ export function renderPcList(container: HTMLElement) {
|
||||
const tableWrapper = document.createElement('div');
|
||||
tableWrapper.className = 'table-container';
|
||||
const table = document.createElement('table');
|
||||
table.innerHTML = `<thead><tr><th>No</th><th>구매법인</th><th>현 사용조직</th><th>자산코드</th><th>사용자</th><th>위치</th><th>CPU</th><th>RAM</th><th>Storage</th><th>구매일</th><th>금액</th><th>품의서</th><th>관리</th></tr></thead><tbody id="dynamic-tbody"></tbody>`;
|
||||
table.innerHTML = `<thead><tr><th>No</th><th>구매법인</th><th>현 사용조직</th><th>자산코드</th><th>사용자</th><th>위치</th><th>CPU</th><th>RAM</th><th>Storage</th><th>구매연월</th><th>금액</th><th>품의서</th><th>관리</th></tr></thead><tbody id="dynamic-tbody"></tbody>`;
|
||||
|
||||
tableWrapper.appendChild(table);
|
||||
container.appendChild(tableWrapper);
|
||||
@@ -69,12 +69,12 @@ export function renderPcList(container: HTMLElement) {
|
||||
<td>${asset.CPU||''}</td>
|
||||
<td>${asset.RAM||''}</td>
|
||||
<td>${formatInline(storage)}</td>
|
||||
<td>${asset.구매일||''}</td>
|
||||
<td>${asset.구매연월 || asset.구매일 || ''}</td>
|
||||
<td>${asset.금액||''}</td>
|
||||
<td style="text-align:center;">${asset.품의서명 ? '<i data-lucide="paperclip" class="text-primary"></i>' : '-'}</td>
|
||||
<td><button class="btn btn-outline btn-sm">수정</button></td>
|
||||
`;
|
||||
tr.addEventListener('click', (e) => { if (!(e.target as HTMLElement).closest('button')) openPcModal(asset, 'view'); });
|
||||
tr.addEventListener('click', (e) => { if (!(e.target as HTMLElement).closest('button')) openHwModal(asset, 'view'); });
|
||||
tbody.appendChild(tr);
|
||||
});
|
||||
createIcons({ icons: { Paperclip } });
|
||||
|
||||
@@ -102,7 +102,8 @@ export function renderServerList(container: HTMLElement) {
|
||||
(document.getElementById('filter-corp') as HTMLSelectElement).value = '';
|
||||
(document.getElementById('filter-org-unit') as HTMLSelectElement).value = '';
|
||||
updateTable();
|
||||
});
|
||||
});
|
||||
|
||||
updateTable();
|
||||
}
|
||||
|
||||
updateTable();
|
||||
}
|
||||
|
||||
@@ -49,7 +49,7 @@ export function renderSwList(container: HTMLElement) {
|
||||
<th style="text-align:center;">구매법인</th>
|
||||
<th style="text-align:center;">부서</th>
|
||||
<th style="text-align:center;">제품명</th>
|
||||
<th style="text-align:center;">구매일</th>
|
||||
<th style="text-align:center;">구매연월</th>
|
||||
${isSub ? '<th style="text-align:center;">구독일</th>' : ''}
|
||||
<th style="text-align:center;">금액</th>
|
||||
<th style="text-align:center;">수량</th>
|
||||
|
||||
Reference in New Issue
Block a user