docs: 제품 세부분류(variant) 시스템 설계 문서 추가

- 동일 보험코드 내 세부 제품 구분 방안
- 형태, 가공법, 선별상태, 등급 등 variant 속성 정의
- display_name 활용 방안 및 가격 기반 매칭 전략

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
시골약사 2026-02-16 16:04:31 +00:00
parent 29efa3d3c2
commit a03f344635

333
docs/제품_세부분류.md Normal file
View File

@ -0,0 +1,333 @@
우리는
성분코드아래
보험코드로 묶여있고
지금 "건강' 제품 같은경우에는
우리가 조제 할때 선택을 , 국산과 페루산 등으로 원산지를 구분해서
선택할수 잇게 되어있어,
이게 우리가 입고를 할때 엑셀에서 , 구분값으로
우리가 보험코드를 사용하지만
국산과 수입품이 모두 같은 보험코드를 사용하기때문에,
우리는 성분을 바라보고 , "쌍화탕" 을 만들때
성분코드 기준으로 , 첩재를 만들게 되게 설계되어있을꺼고
성분코드에 따른 재고를 선택하지만, 성분 코드 아래 , 우리가
국산과, 수입품을 구분해서 롯트를 잡아뒀기때문에 이게 가능한거같아 맞는지 확인해
우리가 입고장 엑셀에 국산./해외품 구분밖에없지만,
우리는 추가적으로,
자 내가 주문한 데이터야
갈근.각
5 배송중 42,000 400 0
롯데택배
256733159384
배송조회
감초.1호[야생](1kg)
5 배송중 110,500 0
건강
10 배송중 62,000 600
건강.土
3 배송중 77,100 750
계지
5 배송중 14,500 100
구기자(영하)(1kg)
3 배송중 53,700 510
길경.片[특]
3 배송중 15,900 0
대추(절편)(1kg)
5 배송중 100,000 1,000
마황(1kg)
5 배송중 48,000 0
반하생강백반제(1kg)
3 배송중 101,100 990
백출.당[1kg]
2 배송중 23,600 0
복령(1kg)
5 배송중 57,500 550
석고[통포장](kg)
4 배송중 18,800 160
세신.中
3 배송중 193,500 0
숙지황(9증)(신흥.1kg)[완]
5 배송중 100,000 1,000
오미자<토매지>(1kg)
2 배송중 35,000 340
용안육.名品(1kg)
3 배송중 62,100 600
육계.YB2
5 배송중 36,500 350
일당귀.中(1kg)
5 배송중 64,500 600
자소엽.土
3 배송중 20,700 180
작약(1kg)
3 배송중 56,100 540
작약주자.土[酒炙]
3 배송중 36,900 360
전호[재배]
3 배송중 21,000 210
지각
3 배송중 15,000 150
지황.건[회](1kg)
1 배송중 11,500 110
진피.비열[非熱](1kg)
5 배송중 68,500 0
창출[북창출.재배](1kg)
3 배송중 40,500 0
천궁.일<토매지>(1kg)
3 배송중 35,700 330
황기(직절.小)(1kg)
3 배송중 29,700 270
우리가 variant 값으로
원산지
형태
가공
선별상태
등급
년생 ← 추가 (중요)
을 넣는다고했을때 , 제품에따라 제공해주기도하고 제공해주지 않기도해
위에 내용처럼, 따라서 db에서 모두 값을 넣을 필요가없고 있는것만 구분함녀되
어차피 성품코드는 고정적여 즉 년생이나 형태가 달라도 성분코드는 동일하고 그아래 구분값으로 달리는거야 내가 제공해준것들 기준으로 목업을 만들어보자
컬럼
타입
설명
variant_id
PK
내부키
herb_id
FK
herb_master 참조
raw_name
TEXT
쇼핑몰 표기 그대로(예: “진피.비열非熱”)
origin
TEXT NULL
원산지(있으면)
form
TEXT NULL
형태(토/편/각/절편/직절 등)
processing
TEXT NULL
가공(비열/주자/9증/회 등)
selection_state
TEXT NULL
선별상태(정선/토매지/재배/야생 등)
grade
TEXT NULL
등급(특/명품/중/소/1호/YB2/당 등)
age_years
INT NULL
년생(있으면)
unit
TEXT NULL
포장단위(1kg 등)
B. herb_variant (옵션/변형값)
• 원산지/형태/가공/선별/등급/년생은 NULL 허용
• raw_name 저장 필수
로요약하자면
우리가 엑셀로 받아오는 정보에는
성분코드까지만 잇어, 즉 세부적으로
갈라지는 부분을 커버할수가없어
하지만 일단 엑셀 입고장에서, 도매상이
일단은 열을 분리해줄꺼기 때문에 우리가 입고처리 이후에 세부구분을 수동혹은 ai를 통해하거나 enum값을 이용해서 로트에서 처리해주고싶어
즉 지금 처럼 입고 처리를 하고 그뒤에 그것에 더분을 더붙이고
우리가 나중에, 조제할때 제품을 선택잘할수있게 보여주이싶어
raw_name
herb_name_std
form
processing
selection_state
grade
unit
갈근.각
갈근
NULL
NULL
NULL
NULL
감초.1호야생
감초
NULL
NULL
야생
1호
1kg
건강
건강
NULL
NULL
NULL
NULL
NULL
건강.土
건강
NULL
NULL
NULL
NULL
계지
계지
NULL
NULL
NULL
NULL
NULL
구기자(영하)(1kg)
구기자
NULL
NULL
NULL
영하
1kg
길경.片[특]
길경
NULL
NULL
NULL
대추(절편)(1kg)
대추
절편
NULL
NULL
NULL
1kg
마황(1kg)
마황
NULL
NULL
NULL
NULL
1kg
반하생강백반제(1kg)
반하생강백반제
NULL
생강백반제
NULL
NULL
1kg
백출.당[1kg]
백출
NULL
NULL
NULL
1kg
복령(1kg)
복령
NULL
NULL
NULL
NULL
1kg
석고통포장
석고
NULL
통포장
NULL
NULL
kg
세신.中
세신
NULL
NULL
NULL
NULL
숙지황(9증)(신흥.1kg)[완]
숙지황
NULL
9증
NULL
1kg
오미자<토매지>(1kg)
오미자
NULL
NULL
토매지
NULL
1kg
용안육.名品(1kg)
용안육
NULL
NULL
NULL
名品
1kg
육계.YB2
육계
NULL
NULL
NULL
YB2
NULL
일당귀.中(1kg)
일당귀
NULL
NULL
NULL
1kg
자소엽.土
자소엽
NULL
NULL
NULL
NULL
작약(1kg)
작약
NULL