장애·지연 구분 및 집계 개선:
eapim-portal CI / build (push) Has been cancelled
eapim-portal Test / test (push) Has been cancelled

- 지연 유형 로직 및 UI/스타일 업데이트
- JPQL 조회와 공개 조건 로직 전면 개정
This commit is contained in:
Rinjae
2026-08-03 16:57:57 +09:00
parent 4916bdf4af
commit 07fbe1ba54
11 changed files with 100 additions and 85 deletions
+6
View File
@@ -27221,6 +27221,9 @@ input[type=checkbox]:checked + .custom-checkbox {
.api-status .as-issue-card.is-incident {
border-left: 4px solid var(--as-err);
}
.api-status .as-issue-card.is-degraded {
border-left: 4px solid var(--as-warn);
}
.api-status .as-issue-card.is-maintenance {
border-left: 4px solid var(--as-info);
}
@@ -27243,6 +27246,9 @@ input[type=checkbox]:checked + .custom-checkbox {
.api-status .as-issue-card.is-incident .as-issue-title {
color: var(--as-err);
}
.api-status .as-issue-card.is-degraded .as-issue-title {
color: var(--as-warn);
}
.api-status .as-issue-card.is-maintenance .as-issue-title {
color: var(--as-info);
}
@@ -11,7 +11,8 @@
/** 오픈 API 목록에 노출되는 API (링크 가능 대상) */
const linkableApiIds = new Set();
const KIND_LABEL = { INCIDENT: '장애', MAINTENANCE: '점검' };
const KIND_LABEL = { INCIDENT: '장애', DELAY: '지연', MAINTENANCE: '점검' };
const KIND_CLASS = { INCIDENT: 'is-incident', DELAY: 'is-degraded', MAINTENANCE: 'is-maintenance' };
const PAGE_SIZE = 10;
const API_LIST_LIMIT = 50; // 라이브서치 결과 표시 상한
@@ -191,7 +192,7 @@
}
function issueCardHtml(issue) {
const kindClass = issue.kind === 'MAINTENANCE' ? 'is-maintenance' : 'is-incident';
const kindClass = KIND_CLASS[issue.kind] || 'is-incident';
let inner;
if (issue.kind === 'MAINTENANCE') {
@@ -12,7 +12,8 @@
/** 오픈 API 목록에 노출되는 API (링크 가능 대상) */
const linkableApiIds = new Set();
const KIND_LABEL = { INCIDENT: '장애', MAINTENANCE: '점검' };
const KIND_LABEL = { INCIDENT: '장애', DELAY: '지연', MAINTENANCE: '점검' };
const KIND_CLASS = { INCIDENT: 'is-incident', DELAY: 'is-degraded', MAINTENANCE: 'is-maintenance' };
/** 진행 중 장애 카드 노출 상한. 초과분은 전체 이력 링크로 넘긴다. */
const ACTIVE_INCIDENT_LIMIT = 1;
@@ -262,8 +263,8 @@
// ---------------- ❺ 지난 이슈 사항 ----------------
function issueCardHtml(issue) {
const kindClass = issue.kind === 'MAINTENANCE' ? 'is-maintenance' : 'is-incident';
const kindBadge = issue.kind === 'MAINTENANCE' ? 'is-maintenance' : 'is-incident';
const kindClass = KIND_CLASS[issue.kind] || 'is-incident';
const kindBadge = kindClass;
let inner;
if (issue.kind === 'MAINTENANCE') {
@@ -495,6 +495,7 @@
box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
&.is-incident { border-left: 4px solid var(--as-err); }
&.is-degraded { border-left: 4px solid var(--as-warn); }
&.is-maintenance { border-left: 4px solid var(--as-info); }
.as-issue-meta-row {
@@ -516,6 +517,7 @@
}
&.is-incident .as-issue-title { color: var(--as-err); }
&.is-degraded .as-issue-title { color: var(--as-warn); }
&.is-maintenance .as-issue-title { color: var(--as-info); }
}