/** * Copy one ValueObject to another * * @param valueObjectDest to be updated * @param valueObjectSrc to copy values from */ public static ims.core.vo.PASReferralVo copy( ims.core.vo.PASReferralVo valueObjectDest, ims.core.vo.PASReferralVo valueObjectSrc) { if (null == valueObjectSrc) { return valueObjectSrc; } valueObjectDest.setID_Referral(valueObjectSrc.getID_Referral()); valueObjectDest.setIsRIE(valueObjectSrc.getIsRIE()); // Details valueObjectDest.setDetails(valueObjectSrc.getDetails()); // ReferralReceivedDate valueObjectDest.setReferralReceivedDate(valueObjectSrc.getReferralReceivedDate()); // OriginalReferralDate valueObjectDest.setOriginalReferralDate(valueObjectSrc.getOriginalReferralDate()); // FirstApptDate valueObjectDest.setFirstApptDate(valueObjectSrc.getFirstApptDate()); // SourceOfReferral valueObjectDest.setSourceOfReferral(valueObjectSrc.getSourceOfReferral()); // ReferringGP valueObjectDest.setReferringGP(valueObjectSrc.getReferringGP()); // ReferringClinician valueObjectDest.setReferringClinician(valueObjectSrc.getReferringClinician()); // ReferredTo valueObjectDest.setReferredTo(valueObjectSrc.getReferredTo()); // ReferralDetails valueObjectDest.setReferralDetails(valueObjectSrc.getReferralDetails()); // DateOfReferral valueObjectDest.setDateOfReferral(valueObjectSrc.getDateOfReferral()); // ReferralLocation valueObjectDest.setReferralLocation(valueObjectSrc.getReferralLocation()); // ReferralType valueObjectDest.setReferralType(valueObjectSrc.getReferralType()); return valueObjectDest; }
public static ims.core.admin.domain.objects.Referral extractReferral( ims.domain.ILightweightDomainFactory domainFactory, ims.core.vo.PASReferralVo valueObject, HashMap domMap) { if (null == valueObject) { return null; } Integer id = valueObject.getID_Referral(); ims.core.admin.domain.objects.Referral domainObject = null; if (null == id) { if (domMap.get(valueObject) != null) { return (ims.core.admin.domain.objects.Referral) domMap.get(valueObject); } // ims.core.vo.PASReferralVo ID_Referral field is unknown domainObject = new ims.core.admin.domain.objects.Referral(); domMap.put(valueObject, domainObject); } else { String key = (valueObject.getClass().getName() + "__" + valueObject.getID_Referral()); if (domMap.get(key) != null) { return (ims.core.admin.domain.objects.Referral) domMap.get(key); } domainObject = (ims.core.admin.domain.objects.Referral) domainFactory.getDomainObject(ims.core.admin.domain.objects.Referral.class, id); // TODO: Not sure how this should be handled. Effectively it must be a staleobject exception, // but maybe should be handled as that further up. if (domainObject == null) return null; domMap.put(key, domainObject); } domainObject.setVersion(valueObject.getVersion_Referral()); // This is to overcome a bug in both Sybase and Oracle which prevents them from storing an empty // string correctly // Sybase stores it as a single space, Oracle stores it as NULL. This fix will make them // consistent at least. if (valueObject.getDetails() != null && valueObject.getDetails().equals("")) { valueObject.setDetails(null); } domainObject.setDetails(valueObject.getDetails()); java.util.Date value2 = null; ims.framework.utils.Date date2 = valueObject.getReferralReceivedDate(); if (date2 != null) { value2 = date2.getDate(); } domainObject.setReferralReceivedDate(value2); java.util.Date value3 = null; ims.framework.utils.Date date3 = valueObject.getOriginalReferralDate(); if (date3 != null) { value3 = date3.getDate(); } domainObject.setOriginalReferralDate(value3); ims.framework.utils.DateTime dateTime4 = valueObject.getFirstApptDate(); java.util.Date value4 = null; if (dateTime4 != null) { value4 = dateTime4.getJavaDate(); } domainObject.setFirstApptDate(value4); // create LookupInstance from vo LookupType ims.domain.lookups.LookupInstance value5 = null; if (null != valueObject.getSourceOfReferral()) { value5 = domainFactory.getLookupInstance(valueObject.getSourceOfReferral().getID()); } domainObject.setSourceOfReferral(value5); // SaveAsRefVO - treated as a refVo in extract methods ims.core.resource.people.domain.objects.Gp value6 = null; if (null != valueObject.getReferringGP()) { if (valueObject.getReferringGP().getBoId() == null) { if (domMap.get(valueObject.getReferringGP()) != null) { value6 = (ims.core.resource.people.domain.objects.Gp) domMap.get(valueObject.getReferringGP()); } } else { value6 = (ims.core.resource.people.domain.objects.Gp) domainFactory.getDomainObject( ims.core.resource.people.domain.objects.Gp.class, valueObject.getReferringGP().getBoId()); } } domainObject.setReferringGP(value6); // SaveAsRefVO - treated as a refVo in extract methods ims.core.resource.people.domain.objects.Hcp value7 = null; if (null != valueObject.getReferringClinician()) { if (valueObject.getReferringClinician().getBoId() == null) { if (domMap.get(valueObject.getReferringClinician()) != null) { value7 = (ims.core.resource.people.domain.objects.Hcp) domMap.get(valueObject.getReferringClinician()); } } else { value7 = (ims.core.resource.people.domain.objects.Hcp) domainFactory.getDomainObject( ims.core.resource.people.domain.objects.Hcp.class, valueObject.getReferringClinician().getBoId()); } } domainObject.setReferringClinician(value7); // SaveAsRefVO - treated as a refVo in extract methods ims.core.resource.people.domain.objects.Hcp value8 = null; if (null != valueObject.getReferredTo()) { if (valueObject.getReferredTo().getBoId() == null) { if (domMap.get(valueObject.getReferredTo()) != null) { value8 = (ims.core.resource.people.domain.objects.Hcp) domMap.get(valueObject.getReferredTo()); } } else { value8 = (ims.core.resource.people.domain.objects.Hcp) domainFactory.getDomainObject( ims.core.resource.people.domain.objects.Hcp.class, valueObject.getReferredTo().getBoId()); } } domainObject.setReferredTo(value8); // This is to overcome a bug in both Sybase and Oracle which prevents them from storing an empty // string correctly // Sybase stores it as a single space, Oracle stores it as NULL. This fix will make them // consistent at least. if (valueObject.getReferralDetails() != null && valueObject.getReferralDetails().equals("")) { valueObject.setReferralDetails(null); } domainObject.setReferralDetails(valueObject.getReferralDetails()); java.util.Date value10 = null; ims.framework.utils.Date date10 = valueObject.getDateOfReferral(); if (date10 != null) { value10 = date10.getDate(); } domainObject.setDateOfReferral(value10); // This is to overcome a bug in both Sybase and Oracle which prevents them from storing an empty // string correctly // Sybase stores it as a single space, Oracle stores it as NULL. This fix will make them // consistent at least. if (valueObject.getReferralLocation() != null && valueObject.getReferralLocation().equals("")) { valueObject.setReferralLocation(null); } domainObject.setReferralLocation(valueObject.getReferralLocation()); // create LookupInstance from vo LookupType ims.domain.lookups.LookupInstance value12 = null; if (null != valueObject.getReferralType()) { value12 = domainFactory.getLookupInstance(valueObject.getReferralType().getID()); } domainObject.setReferralType(value12); return domainObject; }