diff --git a/backup_atam_data.json b/backup_atam_data.json new file mode 100644 index 0000000..90a0674 --- /dev/null +++ b/backup_atam_data.json @@ -0,0 +1,3889 @@ +{ + "server_assets": [ + { + "id": "0yx8ear", + "corp": "삼안", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "SATIS 01", + "details": "구 SATIS 서버, 세금계산서 발행(회계)", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.228", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "satissg11707808", + "model_name": "HPE ProLiant DL380p GEN8", + "os": "Windows Server 2008 R2", + "cpu": "Intel(R) Xeon(R) CPU E5-2643 0 @ 3.30GHz 3.30GHz", + "ram": "20GB", + "gpu": "", + "storage1": "100GB", + "storage2": "458GB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "1k3qili", + "corp": "", + "asset_code": "SVR-201707-0003", + "purchase_date": "201707", + "type": "서버", + "purpose": "XR WAS Server", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promise Vess R3600", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "223pghb", + "corp": "", + "asset_code": "PC-202412-0002", + "purchase_date": "202412", + "type": "PC", + "purpose": "Ai-Cell-A100-1", + "details": "OCR, Local LLM 등 30여종", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "조립", + "os": "Ubuntu 24.04", + "cpu": "AMD Ryzen Threadripper PRO 7975WX", + "ram": "256GB", + "gpu": "", + "storage1": "2 TB", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "2vyfpks", + "corp": "", + "asset_code": "SVR-202305-0001", + "purchase_date": "202305", + "type": "서버", + "purpose": "HM MapService 2.0 서버", + "details": "공간데이터 다운로드 서비스 등", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "172.16.42.127", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HPE ProLiant DL380 Gen10", + "os": "Windows Server 2019 Standard", + "cpu": "Intel Xeon Silver 4208", + "ram": "128 GB", + "gpu": "", + "storage1": "1.2 TB", + "storage2": "40 TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "3fyng4l", + "corp": "", + "asset_code": "SVR-201908-0002", + "purchase_date": "201908", + "type": "서버", + "purpose": "한맥 백업 서버", + "details": "한라 웹 소스 및 Miso DB 백업 서버", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "SuperMicro IR5019P-Series", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "3t8595f", + "corp": "", + "asset_code": "SVR-201707-0001", + "purchase_date": "201707", + "type": "서버", + "purpose": "구)스마트건설 서버", + "details": "XR 가상화 메인 서버 → IDC 산하ERP서버", + "current_org": "산하", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "172.16.10.226", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "ProLiant DL360 Gen10", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "46pa6q9", + "corp": "", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "GSIM 서버", + "details": "Basemap 데이터 저장", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Windows Server 2019 Standard", + "cpu": "Intel(R) Xeon(R) Silver 4214R", + "ram": "32GB", + "gpu": "", + "storage1": "300GB", + "storage2": "4TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "5b7er5d", + "corp": "", + "asset_code": "PC-201701-0001", + "purchase_date": "201701", + "type": "PC", + "purpose": "저장소 및 전산모사", + "details": "ParaView, CFDCore\r\n디지털화설문, 검색WIKI 웹서비스", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "172.16.10.213", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "조립PC\r\nProLiant DL360 Gen10", + "os": "Windows 10 Pro", + "cpu": "Intel Core i7-7700 CPU 3.60GHz", + "ram": "32GB", + "gpu": "", + "storage1": "500GB", + "storage2": "2TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "5ijlr2q", + "corp": "", + "asset_code": "SVR-201710-0002", + "purchase_date": "201710", + "type": "PC", + "purpose": "Ai-Cell-Util", + "details": "깃티, 매터모스트 등 70여종", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HP Z6", + "os": "Ubuntu 24.04", + "cpu": "Intel(R) Xeon(R) Gold 6248R", + "ram": "64GB", + "gpu": "", + "storage1": "2 TB", + "storage2": "8 TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "615nity", + "corp": "삼안", + "asset_code": "SVR-201912-0001", + "purchase_date": "201912", + "type": "서버", + "purpose": "삼안 인트라넷", + "details": "", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.237", + "remote_tool": "원격데스크탑\r\nRemote Util", + "server_id": "administrator\r\n118.220.172.237", + "server_pw": "samanerp1!\r\n1234아이티!", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Windows Server 2016", + "cpu": "intel xeon silver4214R CPU @2.40GHz 2.39GHZ", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "3.27TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "692s3fa", + "corp": "삼안", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "SATIS 02", + "details": "SATIS 리뉴얼 버전 (ERP 서버)", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.229", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "satissg11707808", + "model_name": "HPE ProLiant DL380p GEN8", + "os": "Windows Server 2008 R2", + "cpu": "Intel(R) Xeon(R) CPU E5-2643 0 @ 3.30GHz 3.30GHz", + "ram": "20GB", + "gpu": "", + "storage1": "100GB", + "storage2": "458GB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "as0irys", + "corp": "PTC", + "asset_code": "SVR-202204-0002", + "purchase_date": "202204", + "type": "서버", + "purpose": "예비서버", + "details": "PTC 인트라넷 예비서버", + "current_org": "PTC", + "prev_org": "PTC", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "192.168.10.8", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "1234dkdlxl!", + "model_name": "HPE ProLiant DL360 GEN10", + "os": "Windows Server 2019", + "cpu": "Intel Xeon(R) Silver 4210R CPU @ 2.40GHz", + "ram": "32GB", + "gpu": "", + "storage1": "278GB", + "storage2": "1.09TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "b46o1oh", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "AutoCAD 테스트 서버", + "details": "오토캐드 테스트 서버", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "Windows 10 Pro", + "cpu": "AMD Ryzen9 3900X 12-Core Processor", + "ram": "32GB", + "gpu": "", + "storage1": "500GB", + "storage2": "2TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "byzop6f", + "corp": "(주)장헌", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "서버", + "purpose": "(주) 장헌 인트라넷", + "details": "2025.12.23 (주) 장헌 센터 MDF에서 IDC로 이전 설치", + "current_org": "(주)장헌", + "prev_org": "장헌", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.76", + "remote_tool": "원격데스크탑", + "server_id": "User", + "server_pw": "Hanmac2141!%", + "model_name": "", + "os": "Windows 10", + "cpu": "12th Gen Intel(R) Core(TM) i7-12700F", + "ram": "32GB", + "gpu": "", + "storage1": "465GB", + "storage2": "1.81TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "c716tha", + "corp": "현타", + "asset_code": "SVR-202209-0003", + "purchase_date": "202209", + "type": "서버", + "purpose": "인트라넷", + "details": "", + "current_org": "현타", + "prev_org": "현타", + "location": "IDC (동관 53번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "1.234.37.172", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "Hanmac2141!", + "model_name": "HPE ProLiant DL380 GEN10", + "os": "Windows Server 2019", + "cpu": "Intel Xeon Silver 4210R CPU @ 2.40GHz 2.39GHz", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "1TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "cdv3f00", + "corp": "한맥", + "asset_code": "SVR-202012-0001", + "purchase_date": "202012", + "type": "서버", + "purpose": "한맥 인트라넷", + "details": "", + "current_org": "한맥", + "prev_org": "한맥", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.70", + "remote_tool": "원격데스크탑\r\nRemote Util", + "server_id": "administrator\r\n211.206.127.70", + "server_pw": "samanerp1!\r\n1234아이티!", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Windows Server 2016", + "cpu": "intel xeon silver4110 CPU @2.10GHz 2.10GHZ", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "2.7TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "e8f39ms", + "corp": "", + "asset_code": "PC-202412-0001", + "purchase_date": "202412", + "type": "PC", + "purpose": "BEPs 서버", + "details": "BEPs 개발서버, Outline 협업서비스", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Dell Precision 3680T", + "os": "Windows 11 Pro", + "cpu": "Intel Core i9 14900K (24 Core, 32 Thread)", + "ram": "64GB", + "gpu": "", + "storage1": "2 TB", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "epta6mt", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "한라CAD", + "details": "", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "찾아야함", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "조립PC", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "evamgnr", + "corp": "삼안", + "asset_code": "SVR-202504-0001", + "purchase_date": "202504", + "type": "서버", + "purpose": "안전관리", + "details": "삼안 개발서버2 - AI, SSL, 장헌TBM, 노드", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 202번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "1.234.37.171", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "samanerp1!", + "model_name": "HPE ProLiant DL380 GEN10", + "os": "Windwos Server 2022", + "cpu": "Intel Xeon(R) Silver 4210R CPU @ 2.40GHz", + "ram": "128GB", + "gpu": "", + "storage1": "278GB", + "storage2": "3.27TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ezoax0f", + "corp": "삼안", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "웹 서버", + "details": "남양주 테스트 서버 (도메인 관리 기능 제거 2026.03.11)", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "samanweb.cafe24.com", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "saman+2013+web", + "model_name": "HPE ProLiant DL380p GEN8", + "os": "Windwos Server 2012", + "cpu": "Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 2.40GHz", + "ram": "16GB", + "gpu": "", + "storage1": "100GB", + "storage2": "230GB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "f0g41bs", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "한맥CAD", + "details": "", + "current_org": "한맥", + "prev_org": "한맥", + "location": "한맥빌딩(MDF 실)", + "manager_main": "찾아야함", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "조립PC", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "f6sommq", + "corp": "PTC", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "서버", + "purpose": "DB 백업 서버", + "details": "구 파일 인트라넷, 2024.05.22에 DB 백업 테스트 서버로 변경 (데스크탑)", + "current_org": "PTC", + "prev_org": "PTC", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.74", + "remote_tool": "Remote Util", + "server_id": "211.206.127.74", + "server_pw": "1234dkdlxl!", + "model_name": "", + "os": "Window 7", + "cpu": "Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz 2.13GHz", + "ram": "4GB", + "gpu": "", + "storage1": "593GB", + "storage2": "1.23TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "g5yalni", + "corp": "삼안", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "삼안 인트라넷 예비", + "details": "", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.249", + "remote_tool": "원격데스크탑\r\nRemote Util", + "server_id": "administrator\r\n678-605-383-130", + "server_pw": "samanerp1!\r\n1234아이티!", + "model_name": "HPE ProLiant DL360 GEN9", + "os": "Windows Server 2008 R2", + "cpu": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz 2.40GHz", + "ram": "32GB", + "gpu": "", + "storage1": "279GB", + "storage2": "2.72TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hazi0dt", + "corp": "삼안", + "asset_code": "SVR-202412-0003", + "purchase_date": "202412", + "type": "서버", + "purpose": "PQ DB 서버", + "details": "", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 204번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.231", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "7013ddj10235!", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Windows Server 2019", + "cpu": "intel xeon silver4210R CPU @2.40GHz 2.39GHZ", + "ram": "32GB", + "gpu": "", + "storage1": "278GB", + "storage2": "2.18TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hfs0hwy", + "corp": "한라", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "안전전산화 서버 (디자인팀 웹)", + "details": "인트라넷 서버 다운 시 백업용 대기, (임시) 디자인팀 웹 퍼블리싱 서버", + "current_org": "총괄기획실", + "prev_org": "한라", + "location": "IDC (동관 54번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "1.234.37.144", + "remote_tool": "Remote Util", + "server_id": "1.234.37.144", + "server_pw": "1234dkdlxl!", + "model_name": "HPE ProLiant DL360 GEN9", + "os": "Windows Server 2012", + "cpu": "Intel(R) Xeon(R) CPU E5-2603 v4 @ 1.70GHz 1.70GHz", + "ram": "8GB", + "gpu": "", + "storage1": "299GB", + "storage2": "631GB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hhpjhjg", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "AI 관련", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "htcdoqb", + "corp": "", + "asset_code": "SVR-202306-0001", + "purchase_date": "202306", + "type": "서버", + "purpose": "Gitlab Runner", + "details": "GitLab 운영 서버", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Window Server 2019 Standard", + "cpu": "Intel(R) Xeon(R) Silver 4208 CPU @ 2.10GHz", + "ram": "64GB", + "gpu": "", + "storage1": "1.2 TB", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hx5maav", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "GSIM 언리얼 서버", + "details": "오브젝트 스토리지(클라우드)를 NAS에 백업(매주 목), ERP유저정보 업데이트(매일), 언리얼 스트리밍 서버", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "Windows 10 Pro", + "cpu": "Intel(R) Xeon(R) Gold 6136", + "ram": "128GB", + "gpu": "", + "storage1": "1TB", + "storage2": "8TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "i0hsbvg", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "공통 GIT 서버", + "details": "개발 소스코드 서버 (구조물 S/W ,그래픽스개발_HMEG.천지인)", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Dell EMC PowerEdge T380", + "os": "CentOS Linux 7 (Core)", + "cpu": "Intel(R) Xeon(R) E-2324G CPU @ 3.10GHz", + "ram": "16GB", + "gpu": "", + "storage1": "1TB", + "storage2": "1TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "k2rgwpj", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "BUILD 서버", + "details": "PM 컨버터(PDF) 서버, PDF 및 비디오 썸네일 생성", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "Windows 10 Pro", + "cpu": "12th Gen Intel(R) Core(TM) i9-12900K", + "ram": "128GB", + "gpu": "", + "storage1": "4TB", + "storage2": "10TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ka4k5j4", + "corp": "", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "함양-합천 서버", + "details": "함양합천서버, GSIM 웹서비스, PM 웹서비스", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HPE ProLiant DL380 Gen10", + "os": "Windows Server 2019 Standard", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "600GB", + "storage2": "10TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "m7w6kb5", + "corp": "", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "GSIM META 서버", + "details": "PM 백업 서버, 오브젝트 스토리지(온프레미스, 클라우드)API 연결", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Windows Server 2019 Standard", + "cpu": "Intel(R) Xeon(R) Silver 4208 CPU", + "ram": "96GB", + "gpu": "", + "storage1": "300GB", + "storage2": "4TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "m9h78ru", + "corp": "바론", + "asset_code": "SVR-202504-0003", + "purchase_date": "202504", + "type": "서버", + "purpose": "인트라넷", + "details": "", + "current_org": "바론", + "prev_org": "기술개발센터", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.75", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "Hanmac2141!%", + "model_name": "HPE ProLiant DL360 GEN10", + "os": "Windows Server 2022", + "cpu": "Intel Xeon(R) Silver 4210R CPU @ 2.40GHz", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "2.18TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "mb93q5s", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "회계", + "details": "", + "current_org": "한맥", + "prev_org": "한맥", + "location": "한맥빌딩(MDF 실)", + "manager_main": "찾아야함", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "조립PC", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "n32fjee", + "corp": "", + "asset_code": "PC-202108-0001", + "purchase_date": "202108", + "type": "PC", + "purpose": "인사정보 서버", + "details": "인사정보 PM", + "current_org": "총괄기획실", + "prev_org": "총괄기획실", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "172.16.10.187", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HP Z2 Mini G5 Workstation", + "os": "Windows 11 Pro", + "cpu": "intel xeon w-1250p cpu", + "ram": "32GB", + "gpu": "", + "storage1": "2 TB", + "storage2": "2 TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "nmf3z8e", + "corp": "장헌", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "서버", + "purpose": "인트라넷(구)", + "details": "현재는 GIT 백업 으로 사용", + "current_org": "장헌", + "prev_org": "기술개발센터", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.110", + "remote_tool": "Remote Util\r\n원격데스크탑", + "server_id": "211.206.127.110\r\nUser", + "server_pw": "1234dkdlxl!\r\nHanmac2141!", + "model_name": "", + "os": "Windows Server 2019", + "cpu": "Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "o2yd1xl", + "corp": "PTC", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "PTC인트라넷", + "details": "구 파일 서버(부서자료 백업용), 2024.05.22 인트라넷서버로 교체", + "current_org": "PTC", + "prev_org": "PTC", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.72", + "remote_tool": "Remote Util", + "server_id": "211.206.127.72", + "server_pw": "1234dkdlxl!", + "model_name": "SYSTEM X3650 M2", + "os": "Windows Server 2008 R2", + "cpu": "Intel(R) Xeon(R) CPU E5520 @ 2.27GHz 2.26GHz", + "ram": "16GB", + "gpu": "", + "storage1": "556GB", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "o4fanbj", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "산하 ERP 개발서버", + "details": "산하 ERP 개발용 서버(산하 ERP는 클라우드)", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ojn1djz", + "corp": "장헌", + "asset_code": "SVR-202209-0002", + "purchase_date": "202209", + "type": "서버", + "purpose": "장헌인트라넷", + "details": "", + "current_org": "장헌", + "prev_org": "장헌", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.71", + "remote_tool": "Remote Util", + "server_id": "211.206.127.71", + "server_pw": "1234dkdlxl!", + "model_name": "HPE ProLiant DL380 GEN10", + "os": "Windows Server 2019", + "cpu": "Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz 2.39GHz", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "1TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "oygs4a4", + "corp": "", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "전산모사", + "details": "EGBIM, ParaView, CFDCore", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "Windows 11 Pro", + "cpu": "13th Gen Intel(R) Core(TM) i9-13900KS (3.20 GHz)", + "ram": "128GB", + "gpu": "", + "storage1": "2TB", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "pdrzgv9", + "corp": "", + "asset_code": "SVR-202403-0001", + "purchase_date": "202403", + "type": "서버", + "purpose": "GSIM 협업", + "details": "삼안 예비서버2 + 한종개발 +한종기존소스 vmware", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "HPE ProLiant DL380 Gen10", + "os": "Server 2019", + "cpu": "Intel Xeon(R) Silver 4208 CPU @ 2.10GHz", + "ram": "128GB", + "gpu": "", + "storage1": "300GB", + "storage2": "1.88TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "pic7ldg", + "corp": "삼안", + "asset_code": "SVR-202504-0002", + "purchase_date": "202504", + "type": "서버", + "purpose": "가족사 공통메뉴", + "details": "삼안 개발서버1 - QNA, 급여명세서", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 202번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.233", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "samanerp1!", + "model_name": "HPE ProLiant DL380 GEN10", + "os": "Windwos Server 2022", + "cpu": "Intel Xeon(R) Silver 4210R CPU @ 2.40GHz", + "ram": "128GB", + "gpu": "", + "storage1": "278GB", + "storage2": "3.27TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "pvjiuu9", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "GSIM 테스트 서버", + "details": "개발 테스트용 일반 PC", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "Windows 10 Pro", + "cpu": "Intel(R) Core(TM) i7-9700KF", + "ram": "32GB", + "gpu": "", + "storage1": "512GB", + "storage2": "512GB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "qi3jv8r", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "공간데이터 서버", + "details": "인트라넷 공간정보신청 서비스, 과거 공간데이터(~2022년) 보관 - 추후 공간정보 백업서버", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "CentOS 7.6.1810 (Core)", + "cpu": "Intel Xeon Silver 4108 * 2", + "ram": "128 GB", + "gpu": "", + "storage1": "512 GB", + "storage2": "8 TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "qlzuplz", + "corp": "한라", + "asset_code": "SVR-202209-0001", + "purchase_date": "202209", + "type": "서버", + "purpose": "개발서버2", + "details": "PTC 연구비로 구매한 예비서버2\r\n이전 : 하수도자산 소스+프로그램 현재 : 큰길 서비스용 xampp+ PostgreSQL, BEPs", + "current_org": "한라", + "prev_org": "기술개발센터", + "location": "IDC (동관 53번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "192.168.20.171", + "remote_tool": "Remote Util\r\n원격데스크탑", + "server_id": "1.234.37.171\r\nadministrator", + "server_pw": "1234dkdlxl!\r\nHanmac2141!%", + "model_name": "HPE ProLiant DL380 Gen10", + "os": "Windows Server 2019 Standard", + "cpu": "Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "1TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "rpzqdok", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "한종 테스트", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "sarnjvr", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "공간정보 신청", + "details": "수치지형도 , 지적도 등 공간정보 자료 제공 서버", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "Windows 10", + "cpu": "Intel(R) Core i5-10400 CPU @ 2.90GHz 2.90GHz", + "ram": "16GB", + "gpu": "", + "storage1": "232GB", + "storage2": "931GB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "t93020g", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "가평 VM 원격 서버", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ulmxkpk", + "corp": "장헌", + "asset_code": "SVR-202204-0001", + "purchase_date": "202204", + "type": "서버", + "purpose": "장헌 인트라넷 예비", + "details": "", + "current_org": "장헌", + "prev_org": "장헌", + "location": "IDC (동관 53번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "1.234.37.170", + "remote_tool": "Remote Util\r\n원격데스크탑", + "server_id": "1.234.37.170\r\nAdministrator", + "server_pw": "1234dkdlxl!\r\nHanmac2141!", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Windows Server 2019", + "cpu": "Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz 2.39GHz", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "1TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "uzgeybi", + "corp": "삼안", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "Oracle DB 서버", + "details": "", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 202번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.225", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "7013ddj10235!", + "model_name": "HPE ProLiant DL380 GEN9", + "os": "Windows Server 2012", + "cpu": "Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz 2.20GHz", + "ram": "64GB", + "gpu": "", + "storage1": "558GB", + "storage2": "1.09TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "vobo00b", + "corp": "", + "asset_code": "PC-202110-0001", + "purchase_date": "202110", + "type": "PC", + "purpose": "빌드서버", + "details": "인스톨 쉴드, 지라", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Dell EMC PowerEdge T350", + "os": "Windows Server 2022 Standard", + "cpu": "Intel(R) Xeon(R) E-2378G CPU @ 2.80GHz 2.81 GHz", + "ram": "32GB", + "gpu": "", + "storage1": "1TB", + "storage2": "4TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "we5apln", + "corp": "한라", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "한라 인트라넷", + "details": "인트라넷,안전, 운영, MISO 서버로 운영 중(win 2008)", + "current_org": "한라", + "prev_org": "한라", + "location": "IDC (동관 54번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "1.234.37.143", + "remote_tool": "Remote Util", + "server_id": "1.234.37.143", + "server_pw": "1234dkdlxl!", + "model_name": "HPE ProLiant DL360 GEN9", + "os": "Windows Server 2008 R2", + "cpu": "Intel(R) Xeon(R) CPU E5-2603 v4 @ 1.70GHz 1.70GHz", + "ram": "8GB", + "gpu": "", + "storage1": "299GB", + "storage2": "631GB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ymcw975", + "corp": "", + "asset_code": "PC--0000", + "purchase_date": "", + "type": "PC", + "purpose": "HmEG 테스트 서버", + "details": "HmEG 테스트 서버", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "Windows 10 Pro", + "cpu": "Intel(R) Core(TM) i5-10400F @ 2.906 GHz", + "ram": "16GB", + "gpu": "", + "storage1": "250GB", + "storage2": "1TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "zhjm5nt", + "corp": "한맥", + "asset_code": "SVR--0000", + "purchase_date": "", + "type": "서버", + "purpose": "한맥 인트라넷 예비", + "details": "단가, 입사자지원 서버 (4/1 장헌산업 이름으로 스마트 건설 용도 구매)", + "current_org": "한맥", + "prev_org": "장헌", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "211.206.127.78", + "remote_tool": "원격데스크탑", + "server_id": "administrator", + "server_pw": "Hanmac2141!", + "model_name": "HPE ProLiant DL360 Gen10", + "os": "Windows Server 2019", + "cpu": "intel xeon silver4214R CPU @2.40GHz 2.39GHZ", + "ram": "32GB", + "gpu": "", + "storage1": "280GB", + "storage2": "2.7TB", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + } + ], + "pc_assets": [ + { + "id": "0dm6v3v", + "corp": "한맥", + "asset_code": "HM-PC-2020-003", + "user": "홍길동", + "location": "본사 5층", + "cpu": "i5-10400", + "gpu": "-", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2020-10-20", + "price": "1,370,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "1ky5hkv", + "corp": "바론", + "asset_code": "HM-PC-2024-011", + "user": "", + "location": "지사 1층", + "cpu": "Ryzen 7", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2024-11-05", + "price": "860,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "2mkcpcm", + "corp": "한맥", + "asset_code": "HM-PC-2025-035", + "user": "", + "location": "지사 2층", + "cpu": "Ryzen 5", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-09-03", + "price": "770,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "2oiyjqa", + "corp": "삼안", + "asset_code": "HM-PC-2020-009", + "user": "홍길동", + "location": "본사 1층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2020-02-08", + "price": "900,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "3tbi0ya", + "corp": "한맥", + "asset_code": "HM-PC-2025-046", + "user": "홍길동", + "location": "지사 3층", + "cpu": "Ryzen 7", + "gpu": "-", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-01-17", + "price": "1,240,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "564z6nz", + "corp": "바론", + "asset_code": "HM-PC-2026-012", + "user": "", + "location": "본사 2층", + "cpu": "i7-12700", + "gpu": "GTX 1660", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2026-11-10", + "price": "960,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "5btnmr6", + "corp": "바론", + "asset_code": "HM-PC-2025-031", + "user": "박지훈", + "location": "지사 3층", + "cpu": "Ryzen 5", + "gpu": "RTX 3060", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-01-10", + "price": "1,110,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "677n8b7", + "corp": "한맥", + "asset_code": "HM-PC-2026-043", + "user": "박지훈", + "location": "본사 4층", + "cpu": "i7-12700", + "gpu": "-", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2026-11-04", + "price": "1,410,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "6q9ehoe", + "corp": "한맥", + "asset_code": "HM-PC-2025-037", + "user": "홍길동", + "location": "본사 4층", + "cpu": "Ryzen 7", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-06-01", + "price": "870,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "6w9889f", + "corp": "삼안", + "asset_code": "HM-PC-2021-030", + "user": "", + "location": "본사 4층", + "cpu": "i7-12700", + "gpu": "GTX 1660", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2021-05-08", + "price": "1,410,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "7um2rt7", + "corp": "삼안", + "asset_code": "HM-PC-2023-016", + "user": "김철수", + "location": "본사 5층", + "cpu": "Ryzen 7", + "gpu": "GTX 1660", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2023-03-11", + "price": "920,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "88swa9a", + "corp": "바론", + "asset_code": "HM-PC-2022-007", + "user": "", + "location": "지사 3층", + "cpu": "Ryzen 7", + "gpu": "RTX 3060", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2022-11-12", + "price": "900,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "8ao7tow", + "corp": "바론", + "asset_code": "HM-PC-2026-049", + "user": "홍길동", + "location": "본사 2층", + "cpu": "Ryzen 5", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2026-01-15", + "price": "1,320,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "8dealns", + "corp": "바론", + "asset_code": "HM-PC-2025-029", + "user": "이영희", + "location": "지사 3층", + "cpu": "i7-12700", + "gpu": "-", + "ram": "32GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-02-19", + "price": "1,360,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "9jfqnwt", + "corp": "삼안", + "asset_code": "HM-PC-2018-045", + "user": "박지훈", + "location": "지사 5층", + "cpu": "i5-10400", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2018-11-23", + "price": "830,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "bb6gofw", + "corp": "바론", + "asset_code": "HM-PC-2022-047", + "user": "김철수", + "location": "본사 4층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2022-04-15", + "price": "610,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "bclulvy", + "corp": "한맥", + "asset_code": "HM-PC-2022-024", + "user": "김팀장", + "location": "본사 3층", + "cpu": "Ryzen 5", + "gpu": "GTX 1660", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2022-09-05", + "price": "1,200,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "c8vawkj", + "corp": "바론", + "asset_code": "HM-PC-2025-032", + "user": "마리아", + "location": "본사 2층", + "cpu": "i5-10400", + "gpu": "GTX 1660", + "ram": "16GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-08-13", + "price": "1,490,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "cp9idwr", + "corp": "삼안", + "asset_code": "HM-PC-2022-038", + "user": "", + "location": "지사 5층", + "cpu": "Ryzen 7", + "gpu": "-", + "ram": "16GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2022-04-17", + "price": "1,420,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "d8hub4g", + "corp": "바론", + "asset_code": "HM-PC-2023-025", + "user": "", + "location": "본사 3층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2023-05-11", + "price": "1,470,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "e02zsht", + "corp": "한맥", + "asset_code": "HM-PC-2024-015", + "user": "신유진", + "location": "지사 1층", + "cpu": "Ryzen 5", + "gpu": "GTX 1660", + "ram": "32GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2024-09-06", + "price": "1,290,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "e352qix", + "corp": "삼안", + "asset_code": "HM-PC-2026-002", + "user": "윤대웅", + "location": "본사 5층", + "cpu": "i7-12700", + "gpu": "GTX 1660", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2026-04-19", + "price": "1,030,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ees27k2", + "corp": "삼안", + "asset_code": "HM-PC-2023-021", + "user": "", + "location": "지사 3층", + "cpu": "Ryzen 7", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2023-05-18", + "price": "540,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "eopuf5p", + "corp": "삼안", + "asset_code": "HM-PC-2022-010", + "user": "윤대웅", + "location": "지사 5층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2022-09-23", + "price": "1,040,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "f0h7a52", + "corp": "한맥", + "asset_code": "HM-PC-2017-039", + "user": "김철수", + "location": "본사 1층", + "cpu": "Ryzen 5", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2017-07-02", + "price": "1,450,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "f1yw8q7", + "corp": "한맥", + "asset_code": "HM-PC-2017-001", + "user": "홍길동", + "location": "본사 2층", + "cpu": "i5-10400", + "gpu": "-", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2017-06-27", + "price": "1,360,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "fdqihin", + "corp": "바론", + "asset_code": "HM-PC-2019-040", + "user": "김팀장", + "location": "지사 1층", + "cpu": "Ryzen 7", + "gpu": "GTX 1660", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2019-12-27", + "price": "1,280,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hh4bdmv", + "corp": "바론", + "asset_code": "HM-PC-2024-004", + "user": "신유진", + "location": "본사 3층", + "cpu": "i5-10400", + "gpu": "-", + "ram": "16GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2024-06-01", + "price": "720,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hi6k0u3", + "corp": "삼안", + "asset_code": "HM-PC-2020-026", + "user": "마리아", + "location": "지사 5층", + "cpu": "Ryzen 7", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2020-04-15", + "price": "1,340,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "igupfpl", + "corp": "바론", + "asset_code": "HM-PC-2024-018", + "user": "김철수", + "location": "본사 2층", + "cpu": "Ryzen 7", + "gpu": "-", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2024-01-27", + "price": "1,030,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "jvvzr0q", + "corp": "삼안", + "asset_code": "HM-PC-2026-013", + "user": "", + "location": "본사 4층", + "cpu": "Ryzen 5", + "gpu": "GTX 1660", + "ram": "32GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2026-02-13", + "price": "1,290,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "k6kpw69", + "corp": "삼안", + "asset_code": "HM-PC-2019-008", + "user": "윤대웅", + "location": "지사 1층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "16GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2019-09-04", + "price": "890,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "kbhib5d", + "corp": "삼안", + "asset_code": "HM-PC-2019-033", + "user": "", + "location": "지사 4층", + "cpu": "i7-12700", + "gpu": "RTX 4070", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2019-06-10", + "price": "720,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ksa3xuu", + "corp": "삼안", + "asset_code": "HM-PC-2019-014", + "user": "윤대웅", + "location": "지사 1층", + "cpu": "i7-12700", + "gpu": "-", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2019-11-28", + "price": "690,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "lx8lmnz", + "corp": "삼안", + "asset_code": "HM-PC-2020-005", + "user": "김팀장", + "location": "지사 1층", + "cpu": "i7-12700", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2020-09-22", + "price": "800,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "odd77ur", + "corp": "바론", + "asset_code": "HM-PC-2024-044", + "user": "홍길동", + "location": "본사 4층", + "cpu": "Ryzen 7", + "gpu": "GTX 1660", + "ram": "16GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2024-11-03", + "price": "520,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "pmf79ic", + "corp": "바론", + "asset_code": "HM-PC-2026-041", + "user": "김철수", + "location": "본사 1층", + "cpu": "i7-12700", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2026-04-24", + "price": "1,150,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "qcs82lb", + "corp": "삼안", + "asset_code": "HM-PC-2024-042", + "user": "신유진", + "location": "본사 1층", + "cpu": "i5-10400", + "gpu": "RTX 3060", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2024-11-07", + "price": "650,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "qjb3kz5", + "corp": "바론", + "asset_code": "HM-PC-2017-017", + "user": "김철수", + "location": "본사 5층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2017-04-28", + "price": "590,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "sayp9a6", + "corp": "바론", + "asset_code": "HM-PC-2025-048", + "user": "박지훈", + "location": "지사 4층", + "cpu": "Ryzen 5", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-08-01", + "price": "1,130,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "uu3e3p7", + "corp": "한맥", + "asset_code": "HM-PC-2018-006", + "user": "신유진", + "location": "본사 2층", + "cpu": "Ryzen 5", + "gpu": "RTX 3060", + "ram": "16GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2018-05-11", + "price": "540,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "vqcb09e", + "corp": "바론", + "asset_code": "HM-PC-2024-036", + "user": "윤대웅", + "location": "지사 5층", + "cpu": "Ryzen 5", + "gpu": "-", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2024-03-13", + "price": "590,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "wb9697r", + "corp": "한맥", + "asset_code": "HM-PC-2020-020", + "user": "", + "location": "본사 5층", + "cpu": "Ryzen 5", + "gpu": "GTX 1660", + "ram": "32GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2020-06-01", + "price": "830,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "wjbzneh", + "corp": "한맥", + "asset_code": "HM-PC-2025-028", + "user": "김철수", + "location": "본사 4층", + "cpu": "Ryzen 5", + "gpu": "-", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2025-05-18", + "price": "640,000", + "vendor": "컴퓨존", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "xpi653y", + "corp": "바론", + "asset_code": "HM-PC-2020-023", + "user": "김팀장", + "location": "지사 2층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2020-02-08", + "price": "560,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "xx3dqs6", + "corp": "한맥", + "asset_code": "HM-PC-2021-019", + "user": "박지훈", + "location": "지사 3층", + "cpu": "i5-10400", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "256GB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2021-06-24", + "price": "1,470,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "xxsx1ex", + "corp": "바론", + "asset_code": "HM-PC-2018-022", + "user": "홍길동", + "location": "지사 2층", + "cpu": "Ryzen 7", + "gpu": "RTX 4070", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2018-02-01", + "price": "830,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "yoo1re7", + "corp": "한맥", + "asset_code": "HM-PC-2018-034", + "user": "박지훈", + "location": "본사 5층", + "cpu": "i5-10400", + "gpu": "RTX 3060", + "ram": "16GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "-", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2018-04-06", + "price": "630,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "zwieocg", + "corp": "바론", + "asset_code": "HM-PC-2022-027", + "user": "마리아", + "location": "본사 3층", + "cpu": "Ryzen 5", + "gpu": "RTX 4070", + "ram": "32GB", + "ssd1": "1TB", + "ssd2": "", + "hdd1": "1TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2022-03-28", + "price": "1,260,000", + "vendor": "오피스디포", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "zz08j3r", + "corp": "바론", + "asset_code": "HM-PC-2018-050", + "user": "", + "location": "본사 5층", + "cpu": "i7-12700", + "gpu": "RTX 3060", + "ram": "32GB", + "ssd1": "512GB", + "ssd2": "", + "hdd1": "2TB", + "hdd2": "", + "ip_address": "", + "hw_spec": "", + "purchase_date": "2018-02-06", + "price": "590,000", + "vendor": "다나와", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + } + ], + "storage_assets": [ + { + "id": "0ecxlwq", + "corp": "", + "asset_code": "STO-202403-0002", + "purchase_date": "202403", + "type": "스토리지", + "purpose": "GSIM 협업 스토리지", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promiss R Series R3600", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "1v5b2tf", + "corp": "", + "asset_code": "NAS-201404-0001", + "purchase_date": "201404", + "type": "NAS", + "purpose": "한라 NAS 2", + "details": "한라 기업부설연구소 공용 NAS", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "이준하 차장", + "manager_sub": "김철수", + "ip_address": "192.168.9.23", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS414j", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "2dx6whb", + "corp": "한라", + "asset_code": "DAS-201907-0001", + "purchase_date": "201907", + "type": "서버", + "purpose": "", + "details": "파일서버 정보 없음(접속 불가)", + "current_org": "한라", + "prev_org": "한라", + "location": "IDC (동관 54번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "3fgahyo", + "corp": "", + "asset_code": "NAS-202308-0001", + "purchase_date": "202308", + "type": "NAS", + "purpose": "한라 NAS 1", + "details": "한라 공용 NAS", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "이준하 차장", + "manager_sub": "김철수", + "ip_address": "192.168.9.32", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS224+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "51f03yu", + "corp": "", + "asset_code": "NAS-202211-0001", + "purchase_date": "202211", + "type": "NAS", + "purpose": "한라 NAS 5", + "details": "한라 환경플랜트사업부 NAS", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "이준하 차장", + "manager_sub": "김철수", + "ip_address": "192.168.9.30", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS923+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "54v9m2c", + "corp": "", + "asset_code": "NAS-202206-0001", + "purchase_date": "202206", + "type": "NAS", + "purpose": "디자인팀1 NAS", + "details": "", + "current_org": "총괄기획실", + "prev_org": "총괄기획실", + "location": "한맥빌딩(MDF 실)", + "manager_main": "권순호 연구원", + "manager_sub": "김철수", + "ip_address": "192.168.9.99", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS1522+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "7mgxgv7", + "corp": "", + "asset_code": "STO--0000", + "purchase_date": "", + "type": "스토리지", + "purpose": "GSIM 스토리지", + "details": "ProjectMaster 오브젝트 스토리지", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promiss R Series R3600", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "b2bvjcw", + "corp": "한라", + "asset_code": "DAS--0000", + "purchase_date": "", + "type": "서버", + "purpose": "", + "details": "파일서버 정보 없음(접속 불가)", + "current_org": "한라", + "prev_org": "한라", + "location": "IDC (동관 54번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "btei73p", + "corp": "", + "asset_code": "SVR-201708-0001", + "purchase_date": "201708", + "type": "NAS", + "purpose": "한라 백업 서버", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "RS822+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "cowf5lc", + "corp": "", + "asset_code": "NAS-201601-0003", + "purchase_date": "201601", + "type": "NAS", + "purpose": "한맥 NAS 3", + "details": "한맥 공용 NAS", + "current_org": "한맥", + "prev_org": "한맥", + "location": "한맥빌딩(MDF 실)", + "manager_main": "순서 파악 필요", + "manager_sub": "김철수", + "ip_address": "192.168.10.7", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS416j", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "dzoq0tr", + "corp": "", + "asset_code": "NAS--0000", + "purchase_date": "", + "type": "NAS", + "purpose": "GSIM NAS", + "details": "팀 내부 자료 저장 , 정사영상 및 지도 데이터 저장 , Gitea 및 Git 내장 NAS", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Synology DS923+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "e52neft", + "corp": "", + "asset_code": "STO-201908-0003", + "purchase_date": "201908", + "type": "스토리지", + "purpose": "Backup Storage", + "details": "", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promise Vess R3600", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:27.000Z" + }, + { + "id": "fl7ufz6", + "corp": "", + "asset_code": "SVR-201707-0002", + "purchase_date": "201707", + "type": "스토리지", + "purpose": "IDC 산하ERP서버", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promise Vess R3600", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "g27d2py", + "corp": "삼안", + "asset_code": "STO-202503-0001", + "purchase_date": "202503", + "type": "서버", + "purpose": "성과품 백업 스토리지", + "details": "", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 202번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.241", + "remote_tool": "원격", + "server_id": "administrator\r\nadmin0", + "server_pw": "saman1!\r\nRoot1234", + "model_name": "", + "os": "Promiss R Series", + "cpu": "48TB", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "g5c27hj", + "corp": "", + "asset_code": "NAS-201501-0001", + "purchase_date": "201501", + "type": "스토리지", + "purpose": "-", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promise Vess", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "h9s2a2g", + "corp": "", + "asset_code": "NAS-202211-0002", + "purchase_date": "202211", + "type": "NAS", + "purpose": "한라 NAS 6", + "details": "한라 공용 NAS", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "이준하 차장", + "manager_sub": "김철수", + "ip_address": "192.168.9.27", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS923+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "hv9j8d0", + "corp": "", + "asset_code": "NAS-202206-0002", + "purchase_date": "202206", + "type": "NAS", + "purpose": "디자인팀2 NAS", + "details": "", + "current_org": "총괄기획실", + "prev_org": "총괄기획실", + "location": "한맥빌딩(MDF 실)", + "manager_main": "권순호 연구원", + "manager_sub": "김철수", + "ip_address": "192.168.9.100", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS1522+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "mh2g66k", + "corp": "", + "asset_code": "NAS-200707-0001", + "purchase_date": "200707", + "type": "NAS", + "purpose": "한라 NAS 4", + "details": "한라 공용 NAS", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "이준하 차장", + "manager_sub": "김철수", + "ip_address": "192.168.9.25", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "CS407", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "o50dqtc", + "corp": "", + "asset_code": "NAS-202206-0003", + "purchase_date": "202206", + "type": "NAS", + "purpose": "기술개발센터 NAS", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "RS815+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "p5vn2mv", + "corp": "", + "asset_code": "STO-201908-0001", + "purchase_date": "201908", + "type": "서버", + "purpose": "WAS Storage", + "details": "가족사 인트라넷 소스 백업 서버", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promise Vess R3600", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "pphqt04", + "corp": "", + "asset_code": "NAS-201601-0002", + "purchase_date": "201601", + "type": "NAS", + "purpose": "한맥 NAS 2", + "details": "한맥 공용 NAS", + "current_org": "한맥", + "prev_org": "한맥", + "location": "한맥빌딩(MDF 실)", + "manager_main": "순서 파악 필요", + "manager_sub": "김철수", + "ip_address": "192.168.10.6", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS416j", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "s30s6co", + "corp": "삼안", + "asset_code": "DAS--0000", + "purchase_date": "", + "type": "서버", + "purpose": "", + "details": "Satis01, Satis02 광케이블 연결 (물리연결)", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "s5lc90i", + "corp": "", + "asset_code": "STO-202305-0002", + "purchase_date": "202305", + "type": "스토리지", + "purpose": "HM MapService 2.0 스토리지", + "details": "공간데이터 저장용", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Promiss R Series R3600", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "sqeze8d", + "corp": "", + "asset_code": "NAS-201209-0001", + "purchase_date": "201209", + "type": "NAS", + "purpose": "총괄기획실 NAS", + "details": "총괄기획실 공용 NAS", + "current_org": "총괄기획실", + "prev_org": "총괄기획실", + "location": "한맥빌딩(MDF 실)", + "manager_main": "-", + "manager_sub": "김철수", + "ip_address": "192.168.10.5", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS413j", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "tcmsqia", + "corp": "", + "asset_code": "NAS-201601-0001", + "purchase_date": "201601", + "type": "NAS", + "purpose": "한맥 NAS 1", + "details": "한맥 공용 NAS", + "current_org": "한맥", + "prev_org": "한맥", + "location": "한맥빌딩(MDF 실)", + "manager_main": "순서 파악 필요", + "manager_sub": "김철수", + "ip_address": "192.168.10.3", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS416j", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "ti2e73o", + "corp": "", + "asset_code": "NAS--0000", + "purchase_date": "", + "type": "NAS", + "purpose": "그래픽스개발팀 데이터 백업 NAS", + "details": "그래픽스 개발팀 데이터 백업용 NAS", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "마천사무실", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "Synology DS923+", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "usw8y07", + "corp": "삼안", + "asset_code": "NAS-201906-0001", + "purchase_date": "201906", + "type": "서버", + "purpose": "성과품 스토리지", + "details": "매니지먼트 접속 확인 불가 (콘솔 연결 후 페이지 오픈 필요)", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 205번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.248", + "remote_tool": "원격", + "server_id": "administrator\r\n-", + "server_pw": "sg11707808\r\n-", + "model_name": "", + "os": "ENC_3U_16BAY_D // SEAGATE ST2000NM0045", + "cpu": "23TB", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "utrq339", + "corp": "", + "asset_code": "NAS-201404-0002", + "purchase_date": "201404", + "type": "NAS", + "purpose": "한라 NAS7", + "details": "한라 원주바이오 NAS", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "이준하 차장", + "manager_sub": "김철수", + "ip_address": "192.168.9.20", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS414j", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "wccgrer", + "corp": "", + "asset_code": "STO-201908-0004", + "purchase_date": "201908", + "type": "서버", + "purpose": "-", + "details": "", + "current_org": "기술개발센터", + "prev_org": "기술개발센터", + "location": "한맥빌딩(MDF 실)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "-", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "ProLiant DL360 Gen10", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "xg9p05x", + "corp": "삼안", + "asset_code": "NAS--0000", + "purchase_date": "", + "type": "서버", + "purpose": "인트라넷 백업 스토리지", + "details": "", + "current_org": "삼안", + "prev_org": "삼안", + "location": "IDC (서관 203번)", + "manager_main": "홍길동", + "manager_sub": "김철수", + "ip_address": "118.220.172.246", + "remote_tool": "원격", + "server_id": "administrator", + "server_pw": "sg11707808", + "model_name": "", + "os": "Promiss R Series", + "cpu": "36TB", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:07:13.000Z" + }, + { + "id": "y6epdvi", + "corp": "", + "asset_code": "NAS-201710-0001", + "purchase_date": "201710", + "type": "NAS", + "purpose": "NAS 13", + "details": "환경플랜트사업", + "current_org": "한라", + "prev_org": "한라", + "location": "한맥빌딩(MDF 실)", + "manager_main": "이준하 차장", + "manager_sub": "김철수", + "ip_address": "172.16.100.3", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "DS218play", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + }, + { + "id": "yslzufm", + "corp": "", + "asset_code": "STO-201908-0005", + "purchase_date": "201908", + "type": "스토리지", + "purpose": "WAS Storage", + "details": "", + "current_org": "", + "prev_org": "", + "location": "", + "manager_main": "", + "manager_sub": "", + "ip_address": "", + "remote_tool": "", + "server_id": "", + "server_pw": "", + "model_name": "", + "os": "", + "cpu": "", + "ram": "", + "gpu": "", + "storage1": "", + "storage2": "", + "storage3": "", + "monitoring": "", + "remarks": "", + "created_at": "2026-04-20T01:02:28.000Z" + } + ], + "equip_assets": [ + { + "id": "28wa20p", + "corp": "바론", + "type": "HM-TB-2026-005", + "asset_code": "아이패드 프로 12.9", + "asset_name": "지사", + "location": "", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2026-03-13", + "purchase_date": "1,500,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "2ikwidj", + "corp": "삼안", + "type": "HM-TB-2020-004", + "asset_code": "아이패드 프로 12.9", + "asset_name": "본사", + "location": "", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2020-09-08", + "purchase_date": "1,500,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "g7w01ud", + "corp": "삼안", + "type": "HM-TB-2024-002", + "asset_code": "아이패드 프로 12.9", + "asset_name": "지사", + "location": "이영희", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2024-10-05", + "purchase_date": "1,500,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ger7ivx", + "corp": "삼안", + "type": "HM-NB-2021-002", + "asset_code": "LG 그램 16인치", + "asset_name": "지사", + "location": "윤대웅", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2021-01-26", + "purchase_date": "1,800,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hgp00ck", + "corp": "삼안", + "type": "HM-NB-2023-005", + "asset_code": "LG 그램 16인치", + "asset_name": "본사", + "location": "홍길동", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2023-05-22", + "purchase_date": "1,800,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "hhpajol", + "corp": "삼안", + "type": "HM-PH-2021-005", + "asset_code": "갤럭시 S24", + "asset_name": "본사", + "location": "홍길동", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2021-01-04", + "purchase_date": "1,200,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "lui73me", + "corp": "삼안", + "type": "HM-NB-2022-004", + "asset_code": "LG 그램 16인치", + "asset_name": "지사", + "location": "김철수", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2022-09-11", + "purchase_date": "1,800,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "o1kn7bz", + "corp": "삼안", + "type": "HM-NB-2025-001", + "asset_code": "LG 그램 16인치", + "asset_name": "지사", + "location": "마리아", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2025-09-02", + "purchase_date": "1,800,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ouv0s34", + "corp": "한맥", + "type": "HM-PH-2022-001", + "asset_code": "갤럭시 S24", + "asset_name": "지사", + "location": "김팀장", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2022-10-09", + "purchase_date": "1,200,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "pyt610t", + "corp": "한맥", + "type": "HM-NB-2023-003", + "asset_code": "LG 그램 16인치", + "asset_name": "본사", + "location": "이영희", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2023-01-16", + "purchase_date": "1,800,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "qnq7vue", + "corp": "삼안", + "type": "HM-TB-2021-001", + "asset_code": "아이패드 프로 12.9", + "asset_name": "지사", + "location": "마리아", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2021-11-09", + "purchase_date": "1,500,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "tzjf0zg", + "corp": "삼안", + "type": "HM-PH-2019-002", + "asset_code": "갤럭시 S24", + "asset_name": "지사", + "location": "신유진", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2019-11-02", + "purchase_date": "1,200,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ymh7uj0", + "corp": "삼안", + "type": "HM-PH-2026-004", + "asset_code": "갤럭시 S24", + "asset_name": "지사", + "location": "", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2026-08-13", + "purchase_date": "1,200,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "ywvmsjy", + "corp": "바론", + "type": "HM-PH-2020-003", + "asset_code": "갤럭시 S24", + "asset_name": "지사", + "location": "", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2020-11-04", + "purchase_date": "1,200,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + }, + { + "id": "zk5c3j2", + "corp": "삼안", + "type": "HM-TB-2022-003", + "asset_code": "아이패드 프로 12.9", + "asset_name": "지사", + "location": "김철수", + "manager": "", + "ip_address": "", + "mac_address": "", + "hw_spec": "", + "os": "2022-06-28", + "purchase_date": "1,500,000", + "price": "브랜드 총판", + "vendor": "", + "doc_name": "", + "remarks": "", + "created_at": "2026-04-17T08:52:11.000Z" + } + ] +} \ No newline at end of file diff --git a/db_init.js b/db_init.js index 377d1b7..bc3d512 100644 --- a/db_init.js +++ b/db_init.js @@ -10,50 +10,28 @@ async function initDB() { host: DB_HOST, user: DB_USER, password: DB_PASS, - port: parseInt(DB_PORT || '3306') + database: DB_NAME, + port: parseInt(DB_PORT || '3306'), + multipleStatements: true }); - console.log('🚀 DB 초기화 시작...'); + console.log('🔄 DB 초기화 시작 (표준화 스키마 적용)...'); - // 1. 데이터베이스 생성 - await connection.query(`CREATE DATABASE IF NOT EXISTS ${DB_NAME};`); - await connection.query(`USE ${DB_NAME};`); - console.log(`✅ 데이터베이스 생성 완료: ${DB_NAME}`); + // 기존 테이블 삭제 + const tablesToDrop = ['pc_assets', 'server_assets', 'storage_assets', 'equip_assets', 'mobile_assets', 'sw_sub_assets', 'sw_perm_assets', 'sw_users']; + for (const table of tablesToDrop) { + await connection.query(`DROP TABLE IF EXISTS ${table}`); + } - // 2. 개인PC 테이블 - const createPcTable = ` - CREATE TABLE IF NOT EXISTS pc_assets ( - id VARCHAR(50) PRIMARY KEY, - corp VARCHAR(100) COMMENT '구매법인', - asset_code VARCHAR(100) COMMENT '자산번호/코드', - user VARCHAR(100) COMMENT '사용자', - location VARCHAR(255) COMMENT '설치위치', - cpu VARCHAR(255), - gpu VARCHAR(255), - ram VARCHAR(100), - ssd1 VARCHAR(100), - ssd2 VARCHAR(100), - hdd1 VARCHAR(100), - hdd2 VARCHAR(100), - ip_address VARCHAR(100), - hw_spec TEXT COMMENT 'HW사양 상세', - purchase_date VARCHAR(50), - price VARCHAR(100), - vendor VARCHAR(255), - doc_name VARCHAR(255), - remarks TEXT, - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; - `; - - // 3. 서버 테이블 - const createServerTable = ` - CREATE TABLE IF NOT EXISTS server_assets ( + // 공통 하드웨어 테이블 생성 함수 + const createHardwareTable = (tableName, comment) => ` + CREATE TABLE ${tableName} ( id VARCHAR(50) PRIMARY KEY, corp VARCHAR(100) COMMENT '구매법인', asset_code VARCHAR(100) COMMENT '자산번호', purchase_date VARCHAR(50) COMMENT '구매일자', - type VARCHAR(50) DEFAULT '물리' COMMENT '물리/가상', + type VARCHAR(50) COMMENT '유형', + detail_purpose VARCHAR(50) COMMENT '상세용도', purpose VARCHAR(255) COMMENT '용도', details TEXT COMMENT '상세내용', current_org VARCHAR(255) COMMENT '현 사용조직', @@ -74,122 +52,74 @@ async function initDB() { storage2 VARCHAR(255), storage3 VARCHAR(255), monitoring VARCHAR(100), + price VARCHAR(100) COMMENT '금액', remarks TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='${comment}'; `; - // 4. 스토리지 테이블 - const createStorageTable = ` - CREATE TABLE IF NOT EXISTS storage_assets ( - id VARCHAR(50) PRIMARY KEY, - corp VARCHAR(100) COMMENT '구매법인', - type VARCHAR(50) COMMENT '유형', - asset_code VARCHAR(100) COMMENT '자산코드', - asset_name VARCHAR(255) COMMENT '명칭', - location VARCHAR(255) COMMENT '설치위치', - model_name VARCHAR(255), - capacity VARCHAR(100) COMMENT '용량', - manager_main VARCHAR(100) COMMENT '담당자(정)', - manager_sub VARCHAR(100) COMMENT '담당자(부)', - ip_address VARCHAR(100), - mac_address VARCHAR(100), - purchase_date VARCHAR(50), - price VARCHAR(100), - vendor VARCHAR(255), - doc_name VARCHAR(255), - remarks TEXT, - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; - `; + await connection.query(createHardwareTable('pc_assets', '개인PC 자산')); + await connection.query(createHardwareTable('server_assets', '서버 자산')); + await connection.query(createHardwareTable('storage_assets', '스토리지 자산')); + await connection.query(createHardwareTable('equip_assets', '전산비품 자산')); + await connection.query(createHardwareTable('mobile_assets', '모바일기기 자산')); - // 5. 전산비품 테이블 - const createEquipTable = ` - CREATE TABLE IF NOT EXISTS equip_assets ( - id VARCHAR(50) PRIMARY KEY, - corp VARCHAR(100) COMMENT '구매법인', - type VARCHAR(50) COMMENT '비품유형', - asset_code VARCHAR(100) COMMENT '자산코드', - asset_name VARCHAR(255) COMMENT '명칭', - location VARCHAR(255) COMMENT '설치위치', - manager VARCHAR(100) COMMENT '관리자', - ip_address VARCHAR(100), - mac_address VARCHAR(100), - hw_spec TEXT, - os VARCHAR(100), - purchase_date VARCHAR(50), - price VARCHAR(100), - vendor VARCHAR(255), - doc_name VARCHAR(255), - remarks TEXT, - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; - `; - - // 6. 구독SW 테이블 + // 소프트웨어 구독 테이블 const createSubSwTable = ` - CREATE TABLE IF NOT EXISTS subscription_sw ( + CREATE TABLE sw_sub_assets ( id VARCHAR(50) PRIMARY KEY, - category VARCHAR(100) COMMENT '분야', corp VARCHAR(100) COMMENT '구매법인', - dept VARCHAR(100) COMMENT '부서', - product_name VARCHAR(255) NOT NULL, - purchase_date VARCHAR(50), - subscription_date VARCHAR(50), - price VARCHAR(100), - quantity INT DEFAULT 1, - account_id VARCHAR(255) COMMENT '계정명', - vendor VARCHAR(255), - remarks TEXT, + asset_code VARCHAR(100) COMMENT '자산번호', + product_name VARCHAR(255) COMMENT '제품명', + license_type VARCHAR(100) COMMENT '라이선스 유형', + quantity INT COMMENT '수량', + price VARCHAR(100) COMMENT '금액', + purchase_date VARCHAR(50) COMMENT '구매일', + expiry_date VARCHAR(50) COMMENT '만료일', + vendor VARCHAR(255) COMMENT '납품업체', + remarks TEXT COMMENT '비고', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; `; - // 7. 영구SW 테이블 + // 소프트웨어 영구 테이블 const createPermSwTable = ` - CREATE TABLE IF NOT EXISTS permanent_sw ( + CREATE TABLE sw_perm_assets ( id VARCHAR(50) PRIMARY KEY, - category VARCHAR(100) COMMENT '분야', corp VARCHAR(100) COMMENT '구매법인', - dept VARCHAR(100) COMMENT '부서', - product_name VARCHAR(255) NOT NULL, - purchase_date VARCHAR(50), - maintenance_status TINYINT(1) DEFAULT 0, - price VARCHAR(100), - quantity INT DEFAULT 1, - account_id VARCHAR(255) COMMENT '계정명', - vendor VARCHAR(255), - remarks TEXT, + asset_code VARCHAR(100) COMMENT '자산번호', + product_name VARCHAR(255) COMMENT '제품명', + license_key VARCHAR(255) COMMENT '라이선스 키', + quantity INT COMMENT '수량', + price VARCHAR(100) COMMENT '금액', + purchase_date VARCHAR(50) COMMENT '구매일', + vendor VARCHAR(255) COMMENT '납품업체', + remarks TEXT COMMENT '비고', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; `; - // 8. SW 사용자 매핑 테이블 (FK 제약조건 제거하여 유연하게 관리) + // 소프트웨어 사용자 매핑 테이블 const createSwUsersTable = ` - CREATE TABLE IF NOT EXISTS sw_users ( - id VARCHAR(50) PRIMARY KEY, - sw_id VARCHAR(50), - corp VARCHAR(100), - dept VARCHAR(100), - team VARCHAR(100), - position VARCHAR(50), - name VARCHAR(100), - usage_period VARCHAR(100), - doc_name VARCHAR(255) + CREATE TABLE sw_users ( + id INT AUTO_INCREMENT PRIMARY KEY, + sw_id VARCHAR(50) COMMENT 'SW 자산 ID', + corp VARCHAR(100) COMMENT '법인', + dept VARCHAR(100) COMMENT '부서', + position VARCHAR(50) COMMENT '직위', + user_name VARCHAR(100) COMMENT '이름', + usage_period VARCHAR(100) COMMENT '사용기간', + doc_name VARCHAR(255) COMMENT '신청서명', + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; `; - await connection.query(createPcTable); - await connection.query(createServerTable); - await connection.query(createStorageTable); - await connection.query(createEquipTable); await connection.query(createSubSwTable); await connection.query(createPermSwTable); await connection.query(createSwUsersTable); - console.log('✅ 6개 전용 테이블 생성 완료!'); + console.log('✅ 모든 테이블이 표준화된 스키마로 재생성되었습니다.'); await connection.end(); - console.log('🏁 DB 초기화 프로세스 종료.'); } initDB().catch(err => { diff --git a/server.js b/server.js index 9ca183a..9a7df63 100644 --- a/server.js +++ b/server.js @@ -11,7 +11,6 @@ const PORT = process.env.PORT || 3000; app.use(cors()); app.use(express.json({ limit: '50mb' })); -// DB 연결 풀 생성 const pool = mysql.createPool({ host: process.env.DB_HOST, user: process.env.DB_USER, @@ -23,14 +22,14 @@ const pool = mysql.createPool({ queueLimit: 0 }); -// --- 공통 헬퍼 함수 --- -async function batchSave(tableName, assets, mapFn) { +// 공통 배치 저장 로직 +async function batchSave(tableName, assets, getQuery) { const connection = await pool.getConnection(); try { await connection.beginTransaction(); await connection.query(`DELETE FROM ${tableName}`); if (assets.length > 0) { - const { sql, values } = mapFn(assets); + const { sql, values } = getQuery(assets); await connection.query(sql, [values]); } await connection.commit(); @@ -43,111 +42,173 @@ async function batchSave(tableName, assets, mapFn) { } } -// --- 1. 개인PC (PC) API --- +// 공통 하드웨어 매핑 함수 +const mapHardware = (r, defaultType) => ({ + id: r.id, + 법인: r.corp, + 자산코드: r.asset_code, + 구매일: r.purchase_date, + purchase_date: r.purchase_date, + type: r.type || defaultType, + 상세용도: r.detail_purpose, + detail_purpose: r.detail_purpose, + 용도: r.purpose, + purpose: r.purpose, + 상세: r.details, + details: r.details, + 현사용조직: r.current_org, + current_org: r.current_org, + 이전사용조직: r.prev_org, + prev_org: r.prev_org, + 위치: r.location, + location: r.location, + 담당자_정: r.manager_main, + manager_main: r.manager_main, + 담당자_부: r.manager_sub, + manager_sub: r.manager_sub, + IP주소: r.ip_address, + ip_address: r.ip_address, + 원격접속: r.remote_tool, + remote_tool: r.remote_tool, + 서버ID: r.server_id, + server_id: r.server_id, + 서버PW: r.server_pw, + server_pw: r.server_pw, + 모델명: r.model_name, + model_name: r.model_name, + OS: r.os, + os: r.os, + CPU: r.cpu, + cpu: r.cpu, + RAM: r.ram, + ram: r.ram, + GPU: r.gpu, + gpu: r.gpu, + SSD1: r.storage1, + storage1: r.storage1, + SSD2: r.storage2, + storage2: r.storage2, + HDD1: r.storage3, + storage3: r.storage3, + 모니터링: r.monitoring, + monitoring: r.monitoring, + 금액: r.price, + price: r.price, + 비고: r.remarks, + remarks: r.remarks +}); + +// 공통 하드웨어 저장 값 생성 함수 +const getHardwareValues = (a) => [ + a.id, a.법인||'', a.자산코드||'', a.구매일||'', a.type||'', a.상세용도||'', a.용도||'', a.상세||'', a.현사용조직||'', a.이전사용조직||'', a.위치||'', + a.담당자_정||'', a.담당자_부||'', a.IP주소||'', a.원격접속||'', a.서버ID||'', a.서버PW||'', a.모델명||'', a.OS||'', a.CPU||'', a.RAM||'', a.GPU||'', + a.SSD1||'', a.SSD2||'', a.HDD1||'', a.모니터링||'', a.금액||'', a.비고||'' +]; + +const hardwareInsertSQL = (table) => ` + INSERT INTO ${table} + (id, corp, asset_code, purchase_date, type, detail_purpose, purpose, details, current_org, prev_org, location, manager_main, manager_sub, ip_address, remote_tool, server_id, server_pw, model_name, os, cpu, ram, gpu, storage1, storage2, storage3, monitoring, price, remarks) + VALUES ? +`; + +// --- 1. 개인PC API --- app.get('/api/pc', async (req, res) => { try { const [rows] = await pool.query('SELECT * FROM pc_assets'); - const mapped = rows.map(r => ({ - id: r.id, type: '개인PC', 법인: r.corp, 자산코드: r.asset_code, 사용자: r.user, 위치: r.location, - CPU: r.cpu, GPU: r.gpu, RAM: r.ram, SSD1: r.ssd1, SSD2: r.ssd2, HDD1: r.hdd1, HDD2: r.hdd2, - IP주소: r.ip_address, HW사양: r.hw_spec, 구매일: r.purchase_date, 금액: r.price, - 납품업체: r.vendor, 품의서명: r.doc_name, 비고: r.remarks - })); - res.json(mapped); + res.json(rows.map(r => mapHardware(r, 'PC'))); } catch (err) { res.status(500).json({ error: err.message }); } }); app.post('/api/pc/batch', async (req, res) => { try { const result = await batchSave('pc_assets', req.body, (assets) => ({ - sql: `INSERT INTO pc_assets (id, corp, asset_code, user, location, cpu, gpu, ram, ssd1, ssd2, hdd1, hdd2, ip_address, hw_spec, purchase_date, price, vendor, doc_name, remarks) VALUES ?`, - values: assets.map(a => [a.id, a.법인||'', a.자산코드||'', a.사용자||'', a.위치||'', a.CPU||'', a.GPU||'', a.RAM||'', a.SSD1||'', a.SSD2||'', a.HDD1||'', a.HDD2||'', a.IP주소||'', a.HW사양||'', a.구매일||'', a.금액||'', a.납품업체||'', a.품의서명||'', a.비고||'']) + sql: hardwareInsertSQL('pc_assets'), + values: assets.map(getHardwareValues) })); res.json(result); } catch (err) { res.status(500).json({ error: err.message }); } }); -// --- 2. 서버 (Server) API --- +// --- 2. 서버 API --- app.get('/api/server', async (req, res) => { try { const [rows] = await pool.query('SELECT * FROM server_assets'); - const mapped = rows.map(r => ({ - id: r.id, type: '서버', 법인: r.corp, 자산코드: r.asset_code, 구매일: r.purchase_date, storage유형: r.type, - 용도: r.purpose, 상세: r.details, 현사용조직: r.current_org, 이전사용조직: r.prev_org, 위치: r.location, - 담당자_정: r.manager_main, 담당자_부: r.manager_sub, IP주소: r.ip_address, 원격접속: r.remote_tool, - 서버ID: r.server_id, 서버PW: r.server_pw, 모델명: r.model_name, OS: r.os, CPU: r.cpu, RAM: r.ram, GPU: r.gpu, - SSD1: r.storage1, SSD2: r.storage2, HDD1: r.storage3, 모니터링: r.monitoring, 비고: r.remarks - })); - res.json(mapped); + res.json(rows.map(r => mapHardware(r, '서버'))); } catch (err) { res.status(500).json({ error: err.message }); } }); app.post('/api/server/batch', async (req, res) => { try { const result = await batchSave('server_assets', req.body, (assets) => ({ - sql: `INSERT INTO server_assets (id, corp, asset_code, purchase_date, type, purpose, details, current_org, prev_org, location, manager_main, manager_sub, ip_address, remote_tool, server_id, server_pw, model_name, os, cpu, ram, gpu, storage1, storage2, storage3, monitoring, remarks) VALUES ?`, - values: assets.map(a => [a.id, a.법인||'', a.자산코드||'', a.구매일||'', a.storage유형||'물리', a.용도||'', a.상세||'', a.현사용조직||'', a.이전사용조직||'', a.위치||'', a.담당자_정||'', a.담당자_부||'', a.IP주소||'', a.원격접속||'', a.서버ID||'', a.서버PW||'', a.모델명||'', a.OS||'', a.CPU||'', a.RAM||'', a.GPU||'', a.SSD1||'', a.SSD2||'', a.HDD1||'', a.모니터링||'', a.비고||'']) + sql: hardwareInsertSQL('server_assets'), + values: assets.map(getHardwareValues) })); res.json(result); } catch (err) { res.status(500).json({ error: err.message }); } }); -// --- 3. 스토리지 (Storage) API --- +// --- 3. 스토리지 API --- app.get('/api/storage', async (req, res) => { try { const [rows] = await pool.query('SELECT * FROM storage_assets'); - const mapped = rows.map(r => ({ - id: r.id, type: '스토리지', 법인: r.corp, storage유형: r.type, 자산코드: r.asset_code, 명칭: r.asset_name, - 위치: r.location, 모델명: r.model_name, 용량: r.capacity, 담당자_정: r.manager_main, 담당자_부: r.manager_sub, - IP주소: r.ip_address, MACaddress: r.mac_address, 구매일: r.purchase_date, 금액: r.price, - 납품업체: r.vendor, 품의서명: r.doc_name, 비고: r.remarks - })); - res.json(mapped); + res.json(rows.map(r => mapHardware(r, '스토리지'))); } catch (err) { res.status(500).json({ error: err.message }); } }); app.post('/api/storage/batch', async (req, res) => { try { const result = await batchSave('storage_assets', req.body, (assets) => ({ - sql: `INSERT INTO storage_assets (id, corp, type, asset_code, asset_name, location, model_name, capacity, manager_main, manager_sub, ip_address, mac_address, purchase_date, price, vendor, doc_name, remarks) VALUES ?`, - values: assets.map(a => [a.id, a.법인||'', a.storage유형||'', a.자산코드||'', a.명칭||'', a.위치||'', a.모델명||'', a.용량||'', a.담당자_정||'', a.담당자_부||'', a.IP주소||'', a.MACaddress||'', a.구매일||'', a.금액||'', a.납품업체||'', a.품의서명||'', a.비고||'']) + sql: hardwareInsertSQL('storage_assets'), + values: assets.map(getHardwareValues) })); res.json(result); } catch (err) { res.status(500).json({ error: err.message }); } }); -// --- 4. 전산비품 (Equipment) API --- +// --- 4. 전산비품 API --- app.get('/api/equip', async (req, res) => { try { const [rows] = await pool.query('SELECT * FROM equip_assets'); - const mapped = rows.map(r => ({ - id: r.id, type: '전산비품', 법인: r.corp, 비품유형: r.type, 자산코드: r.asset_code, 명칭: r.asset_name, - 위치: r.location, 관리자: r.manager, IP주소: r.ip_address, MACaddress: r.mac_address, - HW사양: r.hw_spec, OS: r.os, 구매일: r.purchase_date, 금액: r.price, - 납품업체: r.vendor, 품의서명: r.doc_name, 비고: r.remarks - })); - res.json(mapped); + res.json(rows.map(r => mapHardware(r, '전산비품'))); } catch (err) { res.status(500).json({ error: err.message }); } }); app.post('/api/equip/batch', async (req, res) => { try { const result = await batchSave('equip_assets', req.body, (assets) => ({ - sql: `INSERT INTO equip_assets (id, corp, type, asset_code, asset_name, location, manager, ip_address, mac_address, hw_spec, os, purchase_date, price, vendor, doc_name, remarks) VALUES ?`, - values: assets.map(a => [a.id, a.법인||'', a.비품유형||'', a.자산코드||'', a.명칭||'', a.위치||'', a.관리자||'', a.IP주소||'', a.MACaddress||'', a.HW사양||'', a.OS||'', a.구매일||'', a.금액||'', a.납품업체||'', a.품의서명||'', a.비고||'']) + sql: hardwareInsertSQL('equip_assets'), + values: assets.map(getHardwareValues) })); res.json(result); } catch (err) { res.status(500).json({ error: err.message }); } }); -// --- 5. 구독SW (Subscription) API --- +// --- 5. 모바일기기 API --- +app.get('/api/mobile', async (req, res) => { + try { + const [rows] = await pool.query('SELECT * FROM mobile_assets'); + res.json(rows.map(r => mapHardware(r, '모바일기기'))); + } catch (err) { res.status(500).json({ error: err.message }); } +}); + +app.post('/api/mobile/batch', async (req, res) => { + try { + const result = await batchSave('mobile_assets', req.body, (assets) => ({ + sql: hardwareInsertSQL('mobile_assets'), + values: assets.map(getHardwareValues) + })); + res.json(result); + } catch (err) { res.status(500).json({ error: err.message }); } +}); + +// --- 6. 소프트웨어 구독 API --- app.get('/api/sw/sub', async (req, res) => { try { - const [rows] = await pool.query('SELECT * FROM subscription_sw'); + const [rows] = await pool.query('SELECT * FROM sw_sub_assets'); const mapped = rows.map(r => ({ - id: r.id, type: '구독SW', 분야: r.category, 법인: r.corp, 부서: r.dept, 제품명: r.product_name, - 구매일: r.purchase_date, 구독일: r.subscription_date, 금액: r.price, 수량: r.quantity, - 계정명: r.account_id, 납품업체: r.vendor, 비고: r.remarks + id: r.id, type: '구독SW', 법인: r.corp, 자산번호: r.asset_code, 제품명: r.product_name, + 라이선스유형: r.license_type, 수량: r.quantity, 금액: r.price, 구매일: r.purchase_date, + 만료일: r.expiry_date, 납품업체: r.vendor, 비고: r.remarks })); res.json(mapped); } catch (err) { res.status(500).json({ error: err.message }); } @@ -155,22 +216,22 @@ app.get('/api/sw/sub', async (req, res) => { app.post('/api/sw/sub/batch', async (req, res) => { try { - const result = await batchSave('subscription_sw', req.body, (assets) => ({ - sql: `INSERT INTO subscription_sw (id, category, corp, dept, product_name, purchase_date, subscription_date, price, quantity, account_id, vendor, remarks) VALUES ?`, - values: assets.map(a => [a.id, a.분야||'', a.법인||'', a.부서||'', a.제품명||'', a.구매일||'', a.구독일||'', a.금액||'', a.수량||1, a.계정명||'', a.납품업체||'', a.비고||'']) + const result = await batchSave('sw_sub_assets', req.body, (assets) => ({ + sql: `INSERT INTO sw_sub_assets (id, corp, asset_code, product_name, license_type, quantity, price, purchase_date, expiry_date, vendor, remarks) VALUES ?`, + values: assets.map(a => [a.id, a.법인||'', a.자산번호||'', a.제품명||'', a.라이선스유형||'', a.수량||0, a.금액||'', a.구매일||'', a.만료일||'', a.납품업체||'', a.비고||'']) })); res.json(result); } catch (err) { res.status(500).json({ error: err.message }); } }); -// --- 6. 영구SW (Permanent) API --- +// --- 7. 소프트웨어 영구 API --- app.get('/api/sw/perm', async (req, res) => { try { - const [rows] = await pool.query('SELECT * FROM permanent_sw'); + const [rows] = await pool.query('SELECT * FROM sw_perm_assets'); const mapped = rows.map(r => ({ - id: r.id, type: '영구SW', 분야: r.category, 법인: r.corp, 부서: r.dept, 제품명: r.product_name, - 구매일: r.purchase_date, 유지보수여부: !!r.maintenance_status, 금액: r.price, 수량: r.quantity, - 계정명: r.account_id, 납품업체: r.vendor, 비고: r.remarks + id: r.id, type: '영구SW', 법인: r.corp, 자산번호: r.asset_code, 제품명: r.product_name, + 라이선스키: r.license_key, 수량: r.quantity, 금액: r.price, 구매일: r.purchase_date, + 납품업체: r.vendor, 비고: r.remarks })); res.json(mapped); } catch (err) { res.status(500).json({ error: err.message }); } @@ -178,35 +239,75 @@ app.get('/api/sw/perm', async (req, res) => { app.post('/api/sw/perm/batch', async (req, res) => { try { - const result = await batchSave('permanent_sw', req.body, (assets) => ({ - sql: `INSERT INTO permanent_sw (id, category, corp, dept, product_name, purchase_date, maintenance_status, price, quantity, account_id, vendor, remarks) VALUES ?`, - values: assets.map(a => [a.id, a.분야||'', a.법인||'', a.부서||'', a.제품명||'', a.구매일||'', a.유지보수여부?1:0, a.금액||'', a.수량||1, a.계정명||'', a.납품업체||'', a.비고||'']) + const result = await batchSave('sw_perm_assets', req.body, (assets) => ({ + sql: `INSERT INTO sw_perm_assets (id, corp, asset_code, product_name, license_key, quantity, price, purchase_date, vendor, remarks) VALUES ?`, + values: assets.map(a => [a.id, a.법인||'', a.자산번호||'', a.제품명||'', a.라이선스키||'', a.수량||0, a.금액||'', a.구매일||'', a.납품업체||'', a.비고||'']) })); res.json(result); } catch (err) { res.status(500).json({ error: err.message }); } }); -// --- 7. SW 사용자 (SW Users) API --- +// --- 8. 소프트웨어 사용자 관리 API --- app.get('/api/sw-users', async (req, res) => { try { const [rows] = await pool.query('SELECT * FROM sw_users'); - const mapped = rows.map(r => ({ - id: r.id, swId: r.sw_id, 법인: r.corp, 부서: r.dept, 팀: r.team, 직위: r.position, 이름: r.name, 사용기간: r.usage_period, 신청서명: r.doc_name + const result = rows.map(u => ({ + sw_id: u.sw_id, + userData: [u.corp||'', u.dept||'', u.position||'', u.user_name||'', u.usage_period||'', u.doc_name||''] })); - res.json(mapped); + res.json(result); } catch (err) { res.status(500).json({ error: err.message }); } }); app.post('/api/sw-users/batch', async (req, res) => { try { - const result = await batchSave('sw_users', req.body, (users) => ({ - sql: `INSERT INTO sw_users (id, sw_id, corp, dept, team, position, name, usage_period, doc_name) VALUES ?`, - values: users.map(u => [u.id, u.swId, u.법인||'', u.부서||'', u.팀||'', u.직위||'', u.이름||'', u.사용기간||'', u.신청서명||'']) - })); - res.json(result); + const connection = await pool.getConnection(); + await connection.beginTransaction(); + await connection.query('DELETE FROM sw_users'); + const allUsers = req.body; + if (allUsers.length > 0) { + const values = allUsers.flatMap(item => + item.userDataList.map(u => [item.sw_id, u.구매법인||u.법인||'', u.부서||'', u.직위||'', u.이름||'', u.사용기간||'', u.신청서명||'']) + ); + if (values.length > 0) { + await connection.query('INSERT INTO sw_users (sw_id, corp, dept, position, user_name, usage_period, doc_name) VALUES ?', [values]); + } + } + await connection.commit(); + connection.release(); + res.json({ success: true }); } catch (err) { res.status(500).json({ error: err.message }); } }); +// 자산번호 자동 생성 API +app.get('/api/generate-asset-code', async (req, res) => { + const { prefix } = req.query; + if (!prefix) return res.status(400).json({ error: 'Prefix is required' }); + + try { + const tables = ['server_assets', 'pc_assets', 'storage_assets', 'equip_assets', 'mobile_assets']; + let maxNum = 0; + + for (const table of tables) { + const [rows] = await pool.query( + `SELECT asset_code as 자산코드 FROM ${table} WHERE asset_code LIKE ? ORDER BY asset_code DESC LIMIT 1`, + [`${prefix}%`] + ); + + if (rows.length > 0) { + const lastCode = rows[0].자산코드; + const lastNum = parseInt(lastCode.split('-').pop() || '0'); + if (lastNum > maxNum) maxNum = lastNum; + } + } + + const nextNum = String(maxNum + 1).padStart(3, '0'); + res.json({ nextCode: `${prefix}${nextNum}` }); + } catch (err) { + res.status(500).json({ error: err.message }); + } +}); + app.listen(PORT, () => { console.log(`📡 ITAM Dedicated API Server running on http://localhost:${PORT}`); }); diff --git a/src/components/Modal/HWModal.ts b/src/components/Modal/HWModal.ts index bc6a368..f43b102 100644 --- a/src/components/Modal/HWModal.ts +++ b/src/components/Modal/HWModal.ts @@ -1,6 +1,17 @@ -import { state } from '../../core/state'; -import { HardwareAsset } from '../../core/excelHandler'; +import { state, saveHardwareAsset, deleteHardwareAsset } from '../../core/state'; +import { HardwareAsset, MasterAssetData } from '../../core/excelHandler'; +import { openModal, closeModals } from './BaseModal'; import { createIcons, Paperclip } from 'lucide'; +import { CORP_LIST, ORG_LIST, HW_TYPE_LIST, LOCATION_DATA, TYPE_PREFIX_MAP } from './SharedData'; +import { + generateOptionsHTML, + setFieldValue, + getFieldValue, + parseAndSetLocation, + bindLocationEvents, + getCombinedLocation, + setEditLock +} from './ModalUtils'; let currentAsset: HardwareAsset | null = null; let isEditMode = false; @@ -17,15 +28,38 @@ const HW_MODAL_HTML = ` - +