feat(cupang): 발주 업로드 결과를 출고일별로 분리

- 업로드 API가 (출고일, 센터, 제품)으로 합산해 groups[] 로 반환
- 화면 상단에 출고일 탭 — 날짜마다 ①직접입력 / ②박스요약 / ③센터분배 상태를
  따로 보관하고 탭으로 전환 (박스 계산은 날짜 × 센터 단위로 실행)
- 확정은 현재 날짜만 대상. 남은 날짜가 있으면 달력으로 나가지 않고 다음 탭으로 이동
- 업로드 결과 카드에 출고일별 센터 수·수량 요약 추가

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-01 13:49:21 +09:00
parent a6d7de709d
commit 5217c4b6bb
9 changed files with 270 additions and 70 deletions
+34
View File
@@ -1301,3 +1301,37 @@ body.cpg-dragging { cursor: grabbing; user-select: none; }
color: var(--color-callout-red);
}
.cpg-po-warn > li { padding: 2px 0; }
/* ── 출고일 탭 (업로드한 발주서의 출고일이 여러 개일 때) ── */
.cpg-date-tabs {
display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
margin-bottom: 12px;
}
.cpg-date-tabs[hidden] { display: none; }
.cpg-date-tabs-label {
font-size: 12px; color: var(--color-midtone-gray); font-weight: 600;
}
.cpg-date-tabs-list { display: flex; gap: 8px; flex-wrap: wrap; }
.cpg-date-tab {
display: flex; flex-direction: column; gap: 2px; align-items: flex-start;
padding: 6px 14px;
border: 1px solid var(--color-subtle-ash); border-radius: 10px;
background: #fff; cursor: pointer; font: inherit; text-align: left;
transition: background .12s, border-color .12s;
}
.cpg-date-tab:hover { border-color: var(--color-midtone-gray); background: var(--color-ghost-gray); }
.cpg-date-tab > strong { font-size: 14px; font-family: var(--font-geist-mono); }
.cpg-date-tab > span { font-size: 11px; color: var(--color-midtone-gray); }
.cpg-date-tab.is-active {
background: var(--color-deep-black); border-color: var(--color-deep-black); color: #fff;
}
.cpg-date-tab.is-active > span { color: #c9c9c9; }
/* 업로드 결과 — 출고일별 요약 */
.cpg-po-dates { list-style: none; margin: 0 0 8px; padding: 0; font-size: 12px; }
.cpg-po-dates > li {
display: flex; gap: 8px; align-items: baseline;
padding: 3px 0;
}
.cpg-po-dates > li > b { font-family: var(--font-geist-mono); }
.cpg-po-dates > li > span { color: var(--color-midtone-gray); }