2.9 KiB
2.9 KiB
ExperionCrawler — 작업 이력
완료된 작업
노드맵 대시보드 구현 (2026-04-14)
node_map_master 테이블을 조회·탐색할 수 있는 웹 대시보드를 풀스택으로 구현했다.
수정된 파일
| 파일 | 내용 |
|---|---|
src/Core/Application/Interfaces/IExperionServices.cs |
IExperionDbService에 GetMasterStatsAsync() / QueryMasterAsync() 추가, NodeMapStats / NodeMapQueryResult record 추가 |
src/Infrastructure/Database/ExperionDbContext.cs |
ExperionDbService에 두 메서드 구현 (통계·필터 조회, 페이지네이션) |
src/Web/Controllers/ExperionControllers.cs |
ExperionNodeMapController 추가 (GET /api/nodemap/stats, GET /api/nodemap/query) |
src/Web/wwwroot/index.html |
사이드바 05번 탭 추가, #pane-nm-dash 섹션 추가 (통계 카드·필터폼·페이지네이션·테이블) |
src/Web/wwwroot/js/app.js |
nmLoad() / nmQuery() / nmPrev() / nmNext() / nmReset() 구현, 탭 클릭 핸들러에 nmLoad() 호출 추가 |
src/Web/wwwroot/css/style.css |
.nm-stat-row, .nm-cls, .nm-dtype, .pg, .btn-sm 등 대시보드 전용 스타일 추가 |
빌드 결과
- 경고 3건 (기존 경고 동일), 에러 0건 — 빌드 성공
주의 사항
- 인증서 관련 코드(
ExperionCertificateService.cs, 인증서 컨트롤러)는 일절 수정하지 않음
이름 필터 드롭다운 OR 조건 검색 (2026-04-14)
노드맵 대시보드의 이름 검색을 텍스트 입력에서 name 컬럼 고유값 풀다운 메뉴 4개로 교체, OR 조건 최대 4개 동시 선택 가능하도록 확장했다.
수정된 파일
| 파일 | 내용 |
|---|---|
src/Core/Application/Interfaces/IExperionServices.cs |
GetNameListAsync() 추가; QueryMasterAsync 파라미터 string? name → IEnumerable<string>? names |
src/Infrastructure/Database/ExperionDbContext.cs |
GetNameListAsync() 구현 (distinct + 오름차순 정렬); QueryMasterAsync에서 nameList.Contains(x.Name) → EF가 WHERE name IN (...) SQL 생성 |
src/Web/Controllers/ExperionControllers.cs |
GET /api/nodemap/names 엔드포인트 추가; Query 액션 파라미터 string? name → List<string>? names (ASP.NET Core가 ?names=A&names=B 자동 바인딩) |
src/Web/wwwroot/index.html |
"이름 검색" 텍스트 입력 제거 → nf-name-1 ~ nf-name-4 4개 <select> 드롭다운 추가 |
src/Web/wwwroot/js/app.js |
nmLoad()에서 /api/nodemap/names 병렬 호출 후 4개 드롭다운 채우기; nmQuery()에서 선택 이름들을 params.append('names', nm)로 OR 전송; nmReset()에서 4개 드롭다운 초기화 |
src/Web/wwwroot/css/style.css |
.nm-name-selects (4열 그리드, 900px 이하 2열) 추가 |
빌드 결과
- 경고 3건 (기존 경고 동일), 에러 0건 — 빌드 성공