프로젝트 상세 정보 다이얼로그 wace 운영판 1:1 + 영업관리 판매·매출관리 연결
· 다이얼로그 디자인: 프로젝트정보 박스(주문유형/제품구분/국내해외/고객사·유무상/접수일/견적환종/견적환율) + 품목정보 테이블(No/품번/품명/S/N/요청납기/고객요청사항/반납사유) · ProjectInfoData 정규화 props — 진행관리/판매관리/매출관리 각각 toProjectInfo 매핑으로 호출 · backend SQL 3곳 보강: exchange_rate (contract_mgmt) + customer_request (CI→CM fallback) + return_reason_name (CI CODE_NAME) · 판매관리/매출관리 page에 columns useMemo + project_no 셀 onClick + ProjectInfoDialog state 추가 · wace 운영 URL: /salesMgmt/salesRegForm.do?saleNo=detail 1:1 매핑 (새 창 → 같은 탭 다이얼로그) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -148,6 +148,16 @@ export async function listProgress(filter: ProgressListFilter) {
|
||||
,T.CONTRACT_PRICE_CURRENCY
|
||||
,T.CONTRACT_CURRENCY
|
||||
,CODE_NAME(T.CONTRACT_CURRENCY) AS CONTRACT_CURRENCY_NAME
|
||||
,(SELECT CM.exchange_rate FROM contract_mgmt CM WHERE CM.objid = T.CONTRACT_OBJID) AS EXCHANGE_RATE
|
||||
,COALESCE(
|
||||
(SELECT CI.customer_request FROM contract_item CI
|
||||
WHERE CI.contract_objid = T.CONTRACT_OBJID AND CI.part_objid = T.PART_OBJID
|
||||
AND CI.status='ACTIVE' ORDER BY CI.objid DESC LIMIT 1),
|
||||
(SELECT CM.customer_request FROM contract_mgmt CM WHERE CM.objid = T.CONTRACT_OBJID)
|
||||
) AS CUSTOMER_REQUEST
|
||||
,(SELECT CODE_NAME(CI.return_reason) FROM contract_item CI
|
||||
WHERE CI.contract_objid = T.CONTRACT_OBJID AND CI.part_objid = T.PART_OBJID
|
||||
AND CI.status='ACTIVE' ORDER BY CI.objid DESC LIMIT 1) AS RETURN_REASON_NAME
|
||||
,T.REGDATE
|
||||
,TO_CHAR(T.REGDATE,'YYYY-MM-DD') AS REG_DATE
|
||||
,T.WRITER
|
||||
|
||||
@@ -143,7 +143,11 @@ export async function getSaleList(filter: SaleListFilter) {
|
||||
,COALESCE(CC_CUR_S.code_name, CC_CUR.code_name) AS sales_currency_name
|
||||
,T.contract_currency
|
||||
,CC_CUR.code_name AS contract_currency_name
|
||||
,CM.exchange_rate AS exchange_rate
|
||||
,SR.sales_exchange_rate
|
||||
,(SELECT CODE_NAME(CI2.return_reason) FROM contract_item CI2
|
||||
WHERE CI2.contract_objid = T.contract_objid AND CI2.part_objid = T.part_objid
|
||||
AND CI2.status='ACTIVE' ORDER BY CI2.objid DESC LIMIT 1) AS return_reason_name
|
||||
,SR.shipping_date
|
||||
,SR.shipping_method
|
||||
,SR.shipping_order_status
|
||||
@@ -289,9 +293,13 @@ export async function getRevenueList(filter: SaleListFilter) {
|
||||
END AS sales_total_amount_krw
|
||||
,T.contract_currency
|
||||
,CC_CUR.code_name AS contract_currency_name
|
||||
,CM.exchange_rate AS exchange_rate
|
||||
,SR.sales_currency
|
||||
,CC_CUR_S.code_name AS sales_currency_name
|
||||
,SR.sales_exchange_rate
|
||||
,(SELECT CODE_NAME(CI2.return_reason) FROM contract_item CI2
|
||||
WHERE CI2.contract_objid = T.contract_objid AND CI2.part_objid = T.part_objid
|
||||
AND CI2.status='ACTIVE' ORDER BY CI2.objid DESC LIMIT 1) AS return_reason_name
|
||||
,SR.shipping_date
|
||||
,SR.shipping_method
|
||||
,SR.serial_no
|
||||
|
||||
Reference in New Issue
Block a user