// GENERATED FILE. DO NOT EDIT.
// Source: contracts/fields/kbx.fields.json
// Source SHA256: f76e073cd8052e9fddb25cc73322686c889822a22fab712ff1a25bef29b32e3c

export const kbxFieldDictionaryVersion = "1.1.0" as const

export const kbxFieldCatalog = {
  "address1": {"key":"address1","label":"주소","aliases":["기본주소","배송주소","Address1"],"dataType":"text","required":true,"maxLength":500,"importable":true,"exportable":true,"sensitive":true,"masking":"address"},
  "address2": {"key":"address2","label":"상세주소","aliases":["주소2","Address2"],"dataType":"text","maxLength":500,"importable":true,"exportable":true,"sensitive":true,"masking":"address"},
  "allocatedQty": {"key":"allocatedQty","label":"할당수량","aliases":["AllocatedQty"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "amount": {"key":"amount","label":"금액","aliases":["Amount","주문금액"],"dataType":"money","precision":18,"scale":2,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "availableQty": {"key":"availableQty","label":"가용재고","aliases":["AvailableQty","출고가능수량"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "barcode": {"key":"barcode","label":"바코드","aliases":["Barcode","EAN","JAN"],"dataType":"code","maxLength":100,"lookupEntity":"item","importable":true,"exportable":true,"sensitive":false},
  "channelId": {"key":"channelId","label":"판매채널ID","aliases":["ChannelId"],"dataType":"lookup","lookupEntity":"salesChannel","readonly":true,"importable":false,"exportable":false,"sensitive":false},
  "channelName": {"key":"channelName","label":"판매채널","aliases":["ChannelName","채널"],"dataType":"text","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "createdAt": {"key":"createdAt","label":"등록일시","aliases":["CreatedAt"],"dataType":"datetime","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "createdBy": {"key":"createdBy","label":"등록자","aliases":["CreatedBy"],"dataType":"text","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "customerCode": {"key":"customerCode","label":"거래처코드","aliases":["거래처","업체코드","CustomerCode"],"dataType":"code","required":true,"maxLength":50,"lookupEntity":"customer","importable":true,"exportable":true,"sensitive":false},
  "customerId": {"key":"customerId","label":"거래처ID","aliases":["CustomerId"],"dataType":"lookup","lookupEntity":"customer","readonly":true,"importable":false,"exportable":false,"sensitive":false},
  "customerName": {"key":"customerName","label":"거래처명","aliases":["CustomerName","업체명"],"dataType":"text","maxLength":200,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "damagedQty": {"key":"damagedQty","label":"불량수량","aliases":["DamagedQty"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "effectiveDate": {"key":"effectiveDate","label":"적용일","aliases":["EffectiveDate","시작일","적용시작일"],"dataType":"date","required":true,"importable":true,"exportable":true,"sensitive":false},
  "exceptionCount": {"key":"exceptionCount","label":"예외건수","aliases":["ExceptionCount","오류건수"],"dataType":"integer","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "expiryDate": {"key":"expiryDate","label":"유통기한","aliases":["ExpiryDate","ExpirationDate"],"dataType":"date","importable":true,"exportable":true,"sensitive":false},
  "holdQty": {"key":"holdQty","label":"보류수량","aliases":["HoldQty"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "itemCode": {"key":"itemCode","label":"품목코드","aliases":["상품코드","SKU","ItemCode"],"dataType":"code","required":true,"maxLength":80,"lookupEntity":"item","importable":true,"exportable":true,"sensitive":false},
  "itemId": {"key":"itemId","label":"품목ID","aliases":["ItemId"],"dataType":"lookup","lookupEntity":"item","readonly":true,"importable":false,"exportable":false,"sensitive":false},
  "itemName": {"key":"itemName","label":"품목명","aliases":["상품명","ItemName"],"dataType":"text","maxLength":300,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "itemSummary": {"key":"itemSummary","label":"대표상품","aliases":["ItemSummary"],"dataType":"text","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "locationCode": {"key":"locationCode","label":"로케이션","aliases":["Location","LocationCode","위치"],"dataType":"code","maxLength":80,"lookupEntity":"location","importable":true,"exportable":true,"sensitive":false},
  "locationId": {"key":"locationId","label":"로케이션ID","aliases":["LocationId"],"dataType":"lookup","lookupEntity":"location","readonly":true,"importable":false,"exportable":false,"sensitive":false},
  "lotNo": {"key":"lotNo","label":"LOT","aliases":["LotNo","LOT번호"],"dataType":"code","maxLength":100,"importable":true,"exportable":true,"sensitive":false},
  "occurredAt": {"key":"occurredAt","label":"발생시각","aliases":["OccurredAt"],"dataType":"datetime","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "onHandQty": {"key":"onHandQty","label":"현재고","aliases":["OnHandQty","장부재고"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "orderDate": {"key":"orderDate","label":"주문일","aliases":["주문일자","OrderDate"],"dataType":"date","required":true,"importable":true,"exportable":true,"sensitive":false},
  "orderedAt": {"key":"orderedAt","label":"주문일시","aliases":["OrderedAt","주문시간"],"dataType":"datetime","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "orderId": {"key":"orderId","label":"주문ID","aliases":["OrderId"],"dataType":"code","readonly":true,"importable":false,"exportable":false,"sensitive":false},
  "orderNo": {"key":"orderNo","label":"주문번호","aliases":["OrderNo","주문ID"],"dataType":"code","required":true,"maxLength":50,"importable":true,"exportable":true,"sensitive":false},
  "orderQty": {"key":"orderQty","label":"주문수량","aliases":["주문수량","수량","Qty","OrderQty"],"dataType":"quantity","precision":18,"scale":4,"importable":true,"exportable":true,"sensitive":false,"required":true},
  "ownerName": {"key":"ownerName","label":"담당자","aliases":["OwnerName","담당"],"dataType":"text","maxLength":100,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "phone": {"key":"phone","label":"연락처","aliases":["휴대폰","전화번호","Phone"],"dataType":"text","required":true,"maxLength":50,"importable":true,"exportable":true,"sensitive":true,"masking":"phone"},
  "pickedQty": {"key":"pickedQty","label":"피킹수량","aliases":["PickedQty"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "postalCode": {"key":"postalCode","label":"우편번호","aliases":["ZipCode","PostalCode"],"dataType":"text","maxLength":20,"importable":true,"exportable":true,"sensitive":true,"masking":"address"},
  "quantity": {"key":"quantity","label":"수량","aliases":["Qty"],"dataType":"quantity","precision":18,"scale":4,"importable":false,"exportable":false,"sensitive":false},
  "receiverName": {"key":"receiverName","label":"수취인","aliases":["받는분","수령인","ReceiverName"],"dataType":"text","required":true,"maxLength":100,"importable":true,"exportable":true,"sensitive":true,"masking":"name"},
  "referenceNo": {"key":"referenceNo","label":"참조번호","aliases":["ReferenceNo"],"dataType":"code","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "remark": {"key":"remark","label":"비고","aliases":["메모","배송메모","Remark"],"dataType":"text","maxLength":500,"importable":true,"exportable":true,"sensitive":false},
  "shippedQty": {"key":"shippedQty","label":"출고수량","aliases":["ShippedQty"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "specification": {"key":"specification","label":"규격","aliases":["Specification","Spec"],"dataType":"text","maxLength":200,"importable":true,"exportable":true,"sensitive":false},
  "status": {"key":"status","label":"상태","aliases":["Status"],"dataType":"status","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "totalQty": {"key":"totalQty","label":"총수량","aliases":["TotalQty"],"dataType":"quantity","precision":18,"scale":4,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "unitPrice": {"key":"unitPrice","label":"단가","aliases":["판매단가","UnitPrice"],"dataType":"money","precision":18,"scale":4,"importable":true,"exportable":true,"sensitive":false},
  "updatedAt": {"key":"updatedAt","label":"수정일시","aliases":["UpdatedAt"],"dataType":"datetime","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "updatedBy": {"key":"updatedBy","label":"수정자","aliases":["UpdatedBy"],"dataType":"text","readonly":true,"importable":false,"exportable":true,"sensitive":false},
  "version": {"key":"version","label":"버전","aliases":["Version","RowVersion"],"dataType":"integer","readonly":true,"importable":false,"exportable":false,"sensitive":false},
  "warehouseCode": {"key":"warehouseCode","label":"창고코드","aliases":["창고","창고코드","출고창고","WarehouseCode"],"dataType":"code","required":true,"maxLength":50,"lookupEntity":"warehouse","importable":true,"exportable":true,"sensitive":false},
  "warehouseId": {"key":"warehouseId","label":"창고ID","aliases":["WarehouseId"],"dataType":"lookup","lookupEntity":"warehouse","readonly":true,"importable":false,"exportable":false,"sensitive":false},
  "warehouseName": {"key":"warehouseName","label":"창고명","aliases":["WarehouseName"],"dataType":"text","maxLength":200,"readonly":true,"importable":false,"exportable":true,"sensitive":false},
} as const

export type KbxKnownFieldKey = keyof typeof kbxFieldCatalog
export type KbxKnownFieldDefinition = (typeof kbxFieldCatalog)[KbxKnownFieldKey]

export function getKbxField<K extends KbxKnownFieldKey>(key: K): (typeof kbxFieldCatalog)[K] {
  return kbxFieldCatalog[key]
}
