diff options
Diffstat (limited to 'lib/soap')
| -rw-r--r-- | lib/soap/ecc/mapper/po-mapper.ts | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/soap/ecc/mapper/po-mapper.ts b/lib/soap/ecc/mapper/po-mapper.ts index fef85662..ec7e4fb6 100644 --- a/lib/soap/ecc/mapper/po-mapper.ts +++ b/lib/soap/ecc/mapper/po-mapper.ts @@ -12,6 +12,7 @@ import { ZMM_DT, } from '@/db/schema/ECC/ecc'; import { eq } from 'drizzle-orm'; +import { ContractStatus } from '@/db/schema/contract'; // ECC 데이터 타입 정의 export type ECCPOHeader = typeof ZMM_HD.$inferInsert & { @@ -125,7 +126,7 @@ export async function mapECCPOHeaderToBusiness( throw new Error(`벤더를 찾을 수 없습니다: LIFNR=${eccHeader.LIFNR}, EBELN=${eccHeader.EBELN}`); } - // 계약서 내용 구성 (ZMM_NOTE에서 가져옴) + // 계약서(발주서) 내용 구성 (ZMM_NOTE에서 가져옴) let contractContent: string | null = null; if (eccHeader.notes && eccHeader.notes.length > 0) { // ZNOTE_SER 순번으로 정렬 후 텍스트 합치기 @@ -145,9 +146,9 @@ export async function mapECCPOHeaderToBusiness( contractNo: eccHeader.EBELN || '', // EBELN - 구매오더번호 contractName: eccHeader.ZTITLE || eccHeader.EBELN || '', // ZTITLE - 발주제목 contractContent, // 계약서 내용 - // TODO: ZPO_CNFM_STAT 값을 ContractStatus enum으로 매핑하는 로직 필요 - // 현재는 ECC에서 받은 값을 그대로 사용하되, null인 경우 undefined로 변환 - status: eccHeader.ZPO_CNFM_STAT || undefined, // ZPO_CNFM_STAT - 구매오더확인상태 + // // TODO: ZPO_CNFM_STAT 값을 ContractStatus enum으로 매핑하는 로직 필요 + // ZPO_CNFM_STAT은 단순히 확인여부로 null or 'C' + status: ContractStatus.CONTRACT_TRANSFER, // ECC에서 PO 전송받은 상태 startDate: parseDate(eccHeader.ZPO_DT || null), // ZPO_DT - 발주일자 endDate: null, // TODO: ZMM_DT의 ZPLN_ED_DT(예정종료일자) 중 최대값으로 계산 필요 deliveryDate: null, // TODO: ZMM_DT의 ZPO_DLV_DT(PO납기일자) 중 최대값으로 계산 필요 |
