ui(cupang): 설정 프레임 크기 고정 + 라벨 변경 + 코드 우측 타입 제거

- "itemcode_db 상품" → "미라네 주방 상품"
- 미라네 주방 상품 500x950, 등록된 제품명 600x950 고정, 내부 스크롤
- 좌측 리스트 코드 옆 type(낱개/세트) 표기 제거

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-05-30 03:57:32 +09:00
parent 1d33761003
commit 69b84db4bb
2 changed files with 29 additions and 11 deletions
@@ -11,10 +11,10 @@
<div class="cpg-prod-layout"> <div class="cpg-prod-layout">
<!-- ── 왼쪽: itemcode_db 상품 목록 (다중선택 → 등록) ── --> <!-- ── 왼쪽: 미라네 주방 상품 목록 (다중선택 → 등록) ── -->
<div class="erp-card cpg-form-card"> <div class="erp-card cpg-form-card cpg-prod-left">
<div class="cpg-card-head"> <div class="cpg-card-head">
<h2>itemcode_db 상품</h2> <h2>미라네 주방 상품</h2>
<span class="erp-muted"> <span class="erp-muted">
{% if search_enabled %}선택(다중) 후 등록. 이미 등록된 항목은 진한 회색.{% else %} {% if search_enabled %}선택(다중) 후 등록. 이미 등록된 항목은 진한 회색.{% else %}
검색 비활성: {{ search_reason }}{% endif %} 검색 비활성: {{ search_reason }}{% endif %}
@@ -33,10 +33,10 @@
</div> </div>
<!-- ── 오른쪽: 등록된 제품명 ── --> <!-- ── 오른쪽: 등록된 제품명 ── -->
<div class="erp-card cpg-form-card"> <div class="erp-card cpg-form-card cpg-prod-right">
<div class="cpg-card-head"><h2>등록된 제품명 ({{ products|length }})</h2> <div class="cpg-card-head"><h2>등록된 제품명 ({{ products|length }})</h2>
<span class="erp-muted">폼의 제품명 드롭다운에 노출</span></div> <span class="erp-muted">폼의 제품명 드롭다운에 노출</span></div>
<div class="erp-table-wrap"> <div class="erp-table-wrap cpg-reg-scroll">
<table class="erp-table"> <table class="erp-table">
<thead><tr><th>제품명</th><th>제품코드</th><th>상태</th><th>동작</th></tr></thead> <thead><tr><th>제품명</th><th>제품코드</th><th>상태</th><th>동작</th></tr></thead>
<tbody> <tbody>
@@ -105,7 +105,7 @@
if (selected[it.code]) cls += " is-selected"; if (selected[it.code]) cls += " is-selected";
html += '<div class="' + cls + '" data-code="' + esc(it.code) + '">' + html += '<div class="' + cls + '" data-code="' + esc(it.code) + '">' +
'<span class="cpg-src-name">' + esc(it.name) + '</span>' + '<span class="cpg-src-name">' + esc(it.name) + '</span>' +
'<span class="cpg-src-code">' + esc(it.code) + (it.type ? ' · ' + esc(it.type) : '') + '</span>' + '<span class="cpg-src-code">' + esc(it.code) + '</span>' +
'</div>'; '</div>';
}); });
listBox.innerHTML = html; listBox.innerHTML = html;
+23 -5
View File
@@ -120,16 +120,34 @@
/* ── 설정(제품명) 2열 레이아웃 ── */ /* ── 설정(제품명) 2열 레이아웃 ── */
.cpg-prod-layout { .cpg-prod-layout {
display: grid; display: flex;
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); flex-wrap: wrap;
gap: 16px; align-items: start; gap: 16px; align-items: flex-start;
}
/* 미라네 주방 상품: 폭 500 / 높이 950 고정, 내부 스크롤 */
.cpg-prod-left {
width: 500px; height: 950px;
display: flex; flex-direction: column;
overflow: hidden;
}
/* 등록된 제품명: 폭 600 / 높이 950 고정, 내부 스크롤 */
.cpg-prod-right {
width: 600px; height: 950px;
display: flex; flex-direction: column;
overflow: hidden;
}
@media (max-width: 1180px) {
.cpg-prod-left, .cpg-prod-right { width: 100%; }
} }
@media (max-width: 980px) { .cpg-prod-layout { grid-template-columns: 1fr; } }
.cpg-src-list { .cpg-src-list {
max-height: 520px; overflow-y: auto; flex: 1 1 auto; min-height: 0; overflow-y: auto;
border: 1px solid var(--color-subtle-ash); border-radius: 10px; border: 1px solid var(--color-subtle-ash); border-radius: 10px;
} }
/* 등록 목록 테이블 스크롤 영역 (카드 높이에서 헤더 제외하고 채움) */
.cpg-reg-scroll {
flex: 1 1 auto; min-height: 0; overflow-y: auto;
}
.cpg-src-item { .cpg-src-item {
display: flex; align-items: baseline; justify-content: space-between; gap: 10px; display: flex; align-items: baseline; justify-content: space-between; gap: 10px;
padding: 8px 12px; cursor: pointer; padding: 8px 12px; cursor: pointer;