@Override public void toHitsModel(VendorInfoType source, VendorInfo target) { if (source != null && target != null) { target.setRefId(source.getRefId()); target.setABN(getJAXBValue(source.getABN())); target.setAccountName(getJAXBValue(source.getAccountName())); target.setAccountNumber(getJAXBValue(source.getAccountNumber())); target.setBPay(getJAXBValue(source.getBPay())); target.setBSB(getJAXBValue(source.getBSB())); ContactInfoType contactInfo = getJAXBValue(source.getContactInfo()); if (contactInfo != null) { target.setAddress(addressConverter.toHitsModel(getJAXBValue(contactInfo.getAddress()))); target.getAddress().setPersonRefId(source.getRefId()); EmailListType emailList = getJAXBValue(contactInfo.getEmailList()); if (emailList != null && emailList.getEmail() != null && !emailList.getEmail().isEmpty()) { target.setContactInfoEmail(emailList.getEmail().get(0).getValue()); } NameType name = contactInfo.getName(); if (name != null) { target.setContactInfoGivenName(getJAXBValue(name.getGivenName())); target.setContactInfoFamilyName(getJAXBValue(name.getFamilyName())); target.setContactInfoMiddleName(getJAXBValue(name.getMiddleName())); } PhoneNumberListType phoneNumberList = getJAXBValue(contactInfo.getPhoneNumberList()); if (phoneNumberList != null && phoneNumberList.getPhoneNumber() != null && !phoneNumberList.getPhoneNumber().isEmpty()) { target.setContactInfoPhoneNumber(phoneNumberList.getPhoneNumber().get(0).getNumber()); } target.setContactInfoPositionTitle(getJAXBValue(contactInfo.getPositionTitle())); target.setContactInfoRole(getJAXBValue(contactInfo.getRole())); } target.setCustomerId(getJAXBValue(source.getCustomerId())); target.setName(source.getName()); target.setPaymentTerms(getJAXBValue(source.getPaymentTerms())); target.setRegisteredForGST(getJAXBEnumValue(source.getRegisteredForGST())); } }
@Override public void toSifModel(VendorInfo source, VendorInfoType target) { if (source != null && target != null) { IObjectFactory objectFactory = getObjectFactory(); target.setRefId(source.getRefId()); target.setABN(objectFactory.createVendorInfoTypeABN(source.getABN())); target.setAccountName(objectFactory.createVendorInfoTypeAccountName(source.getAccountName())); target.setAccountNumber( objectFactory.createVendorInfoTypeAccountNumber(source.getAccountNumber())); target.setBPay(objectFactory.createVendorInfoTypeBPay(source.getBPay())); target.setBSB(objectFactory.createVendorInfoTypeBSB(source.getBSB())); if (source.hasContactInfo()) { ContactInfoType contactInfoType = new ContactInfoType(); contactInfoType.setAddress( objectFactory.createContactInfoTypeAddress( addressConverter.toSifModel(source.getAddress()))); if (StringUtils.isNotBlank(source.getContactInfoEmail())) { EmailListType emailListType = new EmailListType(); EmailType email = new EmailType(); email.setValue(source.getContactInfoEmail()); email.setType(DEFAULT_EMAIL_TYPE); emailListType.getEmail().add(email); contactInfoType.setEmailList(objectFactory.createContactInfoTypeEmailList(emailListType)); } if (source.hasNameInfo()) { NameType name = new NameType(); name.setType(DEFAULT_NAME_TYPE_ENUM); name.setFamilyName( objectFactory.createBaseNameTypeFamilyName(source.getContactInfoFamilyName())); name.setGivenName( objectFactory.createBaseNameTypeGivenName(source.getContactInfoGivenName())); name.setMiddleName( objectFactory.createBaseNameTypeMiddleName(source.getContactInfoMiddleName())); contactInfoType.setName(name); } if (StringUtils.isNotBlank(source.getContactInfoPhoneNumber())) { PhoneNumberListType phoneNumberList = new PhoneNumberListType(); PhoneNumberType phoneNumber = new PhoneNumberType(); phoneNumber.setType(DEFAULT_PHONE_TYPE); phoneNumber.setNumber(source.getContactInfoPhoneNumber()); phoneNumberList.getPhoneNumber().add(phoneNumber); contactInfoType.setPhoneNumberList( objectFactory.createContactInfoTypePhoneNumberList(phoneNumberList)); } contactInfoType.setPositionTitle( objectFactory.createContactInfoTypePositionTitle(source.getContactInfoPositionTitle())); contactInfoType.setRole( objectFactory.createContactInfoTypeRole(source.getContactInfoRole())); target.setContactInfo(objectFactory.createVendorInfoTypeContactInfo(contactInfoType)); } target.setCustomerId(objectFactory.createVendorInfoTypeCustomerId(source.getCustomerId())); target.setName(source.getName()); target.setPaymentTerms( objectFactory.createVendorInfoTypePaymentTerms(source.getPaymentTerms())); target.setRegisteredForGST( objectFactory.createVendorInfoTypeRegisteredForGST( getEnumValue(source.getRegisteredForGST(), AUCodeSetsYesOrNoCategoryType.class))); } }