매출관리 그리드 V1 컬럼 9개 보강 + getRevenueList SQL JOIN 확장 + wace 1:1 검증
- getRevenueList SQL: contract_item / user_info / comm_code(CC_RES) / attach_file_info LATERAL 4개 JOIN 추가. receipt_date / payment_type / request_date / customer_request / order_status_name / manager_name / incoterms / cu01_cnt SELECT 보강 - RevenueListRow 타입: 9개 신규 필드 보강 - GRID_COLUMNS 9개 추가: 접수일/유무상/요청납기/고객사요청사항/수주상태/주문서첨부/출하방법/담당자/인도조건 (wace 35/35 일치) - docs/migration/sales/04-revenue-verify.md, scripts/verify-revenue.sql 영업 4개 메뉴 (견적·주문·판매·매출) 모두 구조적 검증 1차 종결. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# 04. 매출관리 wace 1:1 검증
|
||||
|
||||
> 작성: 2026-05-11 / 사이클: 구조적 검증 4차 (매출관리 메뉴)
|
||||
> 원본: `wace_plm/WebContent/WEB-INF/view/salesmgmt/salesMgmt/revenueMgmtList.jsp`
|
||||
> 대상: `app/(main)/COMPANY_16/sales/revenue/page.tsx`
|
||||
> 핵심 필터: `EXISTS (sales_registration WHERE shipping_date IS NOT NULL)` — 출하등록된 프로젝트만
|
||||
|
||||
## 1. 그리드 컬럼 — wace 활성 35개 vs RPS 35개 (보강 후 일치)
|
||||
|
||||
| # | wace title | RPS GRID_COLUMNS | 상태 |
|
||||
|---|---|---|---|
|
||||
| 1 | 프로젝트번호 (frozen) | `project_no` | ✅ |
|
||||
| 2 | 주문유형 | `order_type_name` | ✅ |
|
||||
| 3 | 매출마감 | `sales_deadline_date` | ✅ |
|
||||
| 4 | 발주일 | `order_date` | ✅ |
|
||||
| 5 | 발주번호 | `po_no` | ✅ |
|
||||
| 6 | 고객사 | `customer` | ✅ |
|
||||
| 7 | 제품구분 | `product_type_name` | ✅ |
|
||||
| 8 | 품명 | `product_name` | ✅ |
|
||||
| 9 | 수량 | `sales_quantity` | ✅ |
|
||||
| 10 | 단가 | `sales_unit_price` | ✅ |
|
||||
| 11 | 공급가액 | `sales_supply_price` | ✅ |
|
||||
| 12 | 부가세 | `sales_vat` | ✅ |
|
||||
| 13 | 총액 | `sales_total_amount` | ✅ |
|
||||
| 14 | 원화총액 | `sales_total_amount_krw` | ✅ |
|
||||
| 15 | 출하일 | `shipping_date` | ✅ |
|
||||
| 16 | 국내/해외 | `nation_name` | ✅ |
|
||||
| 17 | 환종 | `sales_currency_name` | ✅ |
|
||||
| 18 | 환율 | `sales_exchange_rate` | ✅ |
|
||||
| 19 | S/N | `serial_no` | ✅ |
|
||||
| 20 | 분할S/N | `split_serial_no` | ✅ (placeholder) |
|
||||
| 21 | 품번 | `product_no` | ✅ |
|
||||
| 22 | 과세구분 | `tax_type` | ✅ |
|
||||
| 23 | 세금계산서발행일 | `tax_invoice_date` | ✅ |
|
||||
| 24 | 수출신고필증신고번호 | `export_decl_no` | ✅ |
|
||||
| 25 | 선적일자 | `loading_date` | ✅ |
|
||||
| 26 | 거래명세서 | `has_transaction_statement` | ✅ (placeholder) |
|
||||
| 27 | **접수일** | `receipt_date` | ✅ (신규) |
|
||||
| 28 | **유/무상** | `payment_type_name` | ✅ (신규) |
|
||||
| 29 | **요청납기** | `request_date` | ✅ (신규) |
|
||||
| 30 | **고객사요청사항** | `customer_request` | ✅ (신규) |
|
||||
| 31 | **수주상태** | `order_status_name` | ✅ (신규) |
|
||||
| 32 | **주문서첨부** | `cu01_cnt` (clip) | ✅ (신규, attach_file_info LATERAL JOIN) |
|
||||
| 33 | **출하방법** | `shipping_method` | ✅ (신규) |
|
||||
| 34 | **담당자** | `manager_name` | ✅ (신규) |
|
||||
| 35 | **인도조건** | `incoterms` | ✅ (신규) |
|
||||
|
||||
## 2. SQL 보강
|
||||
|
||||
```
|
||||
-- 추가된 JOIN
|
||||
LEFT JOIN contract_item CI ON CI.objid = T.contract_item_objid AND CI.status='ACTIVE' -- request_date COALESCE 위해
|
||||
LEFT JOIN user_info U_MGR ON U_MGR.user_id = SR.manager_user_id -- manager_name
|
||||
LEFT JOIN comm_code CC_RES ON CC_RES.code_id = T.contract_result AND CC_RES.status='active' -- order_status_name
|
||||
LEFT JOIN (
|
||||
SELECT target_objid, COUNT(*) FILTER (WHERE doc_type IN ('FTC_ORDER','ORDER')) AS cu01_cnt
|
||||
FROM attach_file_info WHERE UPPER(status)='ACTIVE' GROUP BY target_objid
|
||||
) AF ON AF.target_objid = T.contract_objid -- cu01_cnt
|
||||
```
|
||||
|
||||
## 3. 갭 처리
|
||||
|
||||
| # | 갭 | 처리 |
|
||||
|---|---|---|
|
||||
| **R1** | 그리드 9개 누락 | ✅ 본 커밋에서 추가 |
|
||||
| **R2** | request_date / order_status_name / manager_name / cu01_cnt SELECT 누락 | ✅ JOIN 추가 |
|
||||
| R3 | 분할S/N / 거래명세서 실데이터 | 🟡 백로그 |
|
||||
| R4 | 매출관리 그리드 운영 0건 (sales_registration.shipping_date IS NOT NULL 0건) | 🟢 데이터 이슈 — 출하등록 흐름 신설 시 자연 해소 |
|
||||
|
||||
## 4. 자동 검증 결과 (`scripts/verify-revenue.sql`)
|
||||
|
||||
운영 sales_registration.shipping_date 0건이라 매출관리 본 필터로는 0 rows. SQL 컬럼 정합성은 필터 해제 샘플로 검증 — 9개 신규 컬럼 모두 정상 반환.
|
||||
|
||||
## 5. 결론
|
||||
|
||||
매출관리 메뉴 wace 운영 화면과 1:1 정합 (35/35 컬럼). 영업 4개 메뉴 (견적·주문·판매·매출) **모두 구조적 검증 1차 종결**.
|
||||
Reference in New Issue
Block a user