From 5c54c99f7e1335e70d553483c216080feff672ed Mon Sep 17 00:00:00 2001 From: king Date: Fri, 28 Aug 2026 12:50:22 +0900 Subject: [PATCH] =?UTF-8?q?feat(cupang):=20=EC=A0=9C=ED=92=88=EB=AA=85=20?= =?UTF-8?q?=EC=84=A4=EC=A0=95=EC=97=90=20=EC=88=98=EA=B8=B0=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=20=ED=8F=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit itemcode_db 목록에 없는 상품도 제품명·제품코드를 직접 입력해 등록할 수 있게 왼쪽 카드 상단에 폼 추가. 기존 POST /cupang/products (upsert)를 그대로 사용하며 같은 제품코드는 덮어쓴다. itemcode 검색이 비활성인 환경에서도 동작하도록 search_enabled 분기 밖에 둔다. Co-Authored-By: Claude Opus 5 --- .../cupang/templates/cupang/box_calc.html | 2 +- .../cupang/templates/cupang/box_rules.html | 2 +- .../cupang/templates/cupang/centers.html | 2 +- .../cupang/templates/cupang/detail.html | 2 +- app/modules/cupang/templates/cupang/form.html | 2 +- .../cupang/templates/cupang/index.html | 2 +- .../cupang/templates/cupang/products.html | 17 ++++++++++++- app/static/cupang.css | 24 +++++++++++++++++++ 8 files changed, 46 insertions(+), 7 deletions(-) diff --git a/app/modules/cupang/templates/cupang/box_calc.html b/app/modules/cupang/templates/cupang/box_calc.html index e3e4aef..7a6f5f3 100644 --- a/app/modules/cupang/templates/cupang/box_calc.html +++ b/app/modules/cupang/templates/cupang/box_calc.html @@ -1,6 +1,6 @@ {% extends "erp_base.html" %} -{% block head_extra %}{% endblock %} +{% block head_extra %}{% endblock %} {% block content %}
diff --git a/app/modules/cupang/templates/cupang/box_rules.html b/app/modules/cupang/templates/cupang/box_rules.html index c65fb50..1ff2f01 100644 --- a/app/modules/cupang/templates/cupang/box_rules.html +++ b/app/modules/cupang/templates/cupang/box_rules.html @@ -1,6 +1,6 @@ {% extends "erp_base.html" %} -{% block head_extra %}{% endblock %} +{% block head_extra %}{% endblock %} {% block content %}
diff --git a/app/modules/cupang/templates/cupang/centers.html b/app/modules/cupang/templates/cupang/centers.html index 254772d..110eff5 100644 --- a/app/modules/cupang/templates/cupang/centers.html +++ b/app/modules/cupang/templates/cupang/centers.html @@ -1,6 +1,6 @@ {% extends "erp_base.html" %} -{% block head_extra %}{% endblock %} +{% block head_extra %}{% endblock %} {% block content %}
diff --git a/app/modules/cupang/templates/cupang/detail.html b/app/modules/cupang/templates/cupang/detail.html index 2a81585..31c054f 100644 --- a/app/modules/cupang/templates/cupang/detail.html +++ b/app/modules/cupang/templates/cupang/detail.html @@ -1,6 +1,6 @@ {% extends "erp_base.html" %} -{% block head_extra %}{% endblock %} +{% block head_extra %}{% endblock %} {% block content %}
diff --git a/app/modules/cupang/templates/cupang/form.html b/app/modules/cupang/templates/cupang/form.html index fdf1b2b..a290b1a 100644 --- a/app/modules/cupang/templates/cupang/form.html +++ b/app/modules/cupang/templates/cupang/form.html @@ -1,6 +1,6 @@ {% extends "erp_base.html" %} -{% block head_extra %}{% endblock %} +{% block head_extra %}{% endblock %} {% block content %}
diff --git a/app/modules/cupang/templates/cupang/index.html b/app/modules/cupang/templates/cupang/index.html index f3a7b62..31f5b68 100644 --- a/app/modules/cupang/templates/cupang/index.html +++ b/app/modules/cupang/templates/cupang/index.html @@ -1,6 +1,6 @@ {% extends "erp_base.html" %} -{% block head_extra %}{% endblock %} +{% block head_extra %}{% endblock %} {% block content %}
diff --git a/app/modules/cupang/templates/cupang/products.html b/app/modules/cupang/templates/cupang/products.html index df8ac99..e2fbcd0 100644 --- a/app/modules/cupang/templates/cupang/products.html +++ b/app/modules/cupang/templates/cupang/products.html @@ -1,6 +1,6 @@ {% extends "erp_base.html" %} -{% block head_extra %}{% endblock %} +{% block head_extra %}{% endblock %} {% block content %}
@@ -21,6 +21,21 @@ + +
+
+ 수기 추가 + 아래 목록에 없는 상품을 직접 등록합니다. 같은 제품코드는 덮어씁니다. +
+
+ + + +
+
+ {% if search_enabled %}
diff --git a/app/static/cupang.css b/app/static/cupang.css index 1b71fa0..2504a6c 100644 --- a/app/static/cupang.css +++ b/app/static/cupang.css @@ -537,3 +537,27 @@ .cpg-calc-layout > .erp-card { display: flex; flex-direction: column; } .cpg-calc-card .erp-table-wrap { flex: 1 1 auto; } .cpg-calc-sum { overflow: auto; max-height: min(78vh, 900px); } + +/* 제품명 설정 — 수기 추가 폼 */ +.cpg-prod-manual { + padding: 12px; + margin-bottom: 12px; + border: 1px solid var(--color-subtle-ash); + border-radius: 10px; + background: var(--color-ghost-gray); +} +.cpg-prod-manual-head { + display: flex; + flex-direction: column; + gap: 2px; + margin-bottom: 8px; +} +.cpg-prod-manual-head .erp-muted { font-size: 12px; } +.cpg-prod-manual-row { + display: flex; + gap: 10px; + align-items: flex-end; + flex-wrap: wrap; +} +.cpg-prod-manual-row .erp-field { flex: 1 1 160px; min-width: 0; } +.cpg-prod-manual-row .erp-input { min-width: 0; width: 100%; }