private void renderSpecimenToOBR(IfOrdSpecLiteVo specimen, OBR obr,ProviderSystemVo providerSystem) throws Exception { LOG.debug("O01VoMapper renderSpecimenToOBR: entry"); // OBR-7 Observation date/time (TS) 00241 renderDateTimeVoToTS(specimen.getCollDateTimePlacer(), obr.getObservationDateTime()); // OBR-8 Observation end date/time (TS) renderDateTimeVoToTS(specimen.getCollEndDateTimePlacer(), obr.getObservationEndDateTime()); // OBR-11 Specimen action code obr.getSpecimenActionCode().setValue(svc.getRemoteLookup(SpecimenActionCode.O.getId(), providerSystem.getCodeSystem().getText())); // OBR-15 Specimen source (CM) // This is build up of siteCd, siteText and the SpecimenSource lookup SPS sps = obr.getSpecimenSource(); if (specimen.getSpecimenSourceIsNotNull()) { sps.getSpecimenSourceNameOrCode().getIdentifier().setValue(svc.getRemoteLookup(specimen.getSpecimenSource().getId(), providerSystem.getCodeSystem().getText())); sps.getSpecimenSourceNameOrCode().getText().setValue(specimen.getSpecimenSource().getText()); } //Leaving open the option for certain disciplines to use coded site field. if (specimen.getSiteCdIsNotNull()) { String remoteLookup = svc.getRemoteLookup(specimen.getSiteCd().getId(), providerSystem.getCodeSystem().getText()); sps.getBodySite().getIdentifier().setValue(remoteLookup); sps.getBodySite().getText().setValue(specimen.getSiteCd().getText()); //JME: 20061013: copy body site component into specimen source component even if value for specimen source available. //http://jira/browse/WDEV-11634 String sendSiteAndSource = HL7Utils.getConfigItem(toConfigItemArray(providerSystem.getConfigItems()), ConfigItems.useSiteAndSource); if (sendSiteAndSource == null || (sendSiteAndSource.equalsIgnoreCase("FALSE") || sendSiteAndSource.equalsIgnoreCase("NO"))) { sps.getSpecimenSourceNameOrCode().getIdentifier().setValue(remoteLookup); sps.getSpecimenSourceNameOrCode().getText().setValue(specimen.getSiteCd().getText()); } } // OBR-24 Diagnostic serv sect ID if (specimen.getDisciplineIsNotNull()) { String extMapping = ocsIf.getServiceMapping(specimen.getDiscipline(), providerSystem.getCodeSystem()); obr.getDiagnosticServSectID().setValue(extMapping); } // OBR-39 Collector�s comment (CE) obr.getCollectorSComment(0).getText().setValue(specimen.getCollectorComment()); LOG.debug("O01VoMapper renderSpecimenToOBR: exit"); }
private void renderSpecimenToOBR(IfOrdSpecLiteVo specimen, OBR obr,ProviderSystemVo providerSystem) throws Exception { LOG.debug("O01VoMapper renderSpecimenToOBR: entry"); // OBR-7 Observation date/time (TS) 00241 renderDateTimeVoToTS(specimen.getCollDateTimePlacer(), obr.getObservationDateTime()); // OBR-8 Observation end date/time (TS) renderDateTimeVoToTS(specimen.getCollEndDateTimePlacer(), obr.getObservationEndDateTime()); // OBR-11 Specimen action code obr.getSpecimenActionCode().setValue(svc.getRemoteLookup(SpecimenActionCode.O.getId(), providerSystem.getCodeSystem().getText())); // OBR-15 Specimen source (CM) // This is build up of siteCd, siteText and the SpecimenSource lookup SPS sps = obr.getSpecimenSource(); if (specimen.getSpecimenSourceIsNotNull()) { sps.getSpecimenSourceNameOrCode().getIdentifier().setValue(svc.getRemoteLookup(specimen.getSpecimenSource().getId(), providerSystem.getCodeSystem().getText())); sps.getSpecimenSourceNameOrCode().getText().setValue(specimen.getSpecimenSource().getText()); } //Leaving open the option for certain disciplines to use coded site field. if (specimen.getSiteCdIsNotNull()) { String remoteLookup = svc.getRemoteLookup(specimen.getSiteCd().getId(), providerSystem.getCodeSystem().getText()); sps.getBodySite().getIdentifier().setValue(remoteLookup); sps.getBodySite().getText().setValue(specimen.getSiteCd().getText()); //JME: 20061013: copy body site component into specimen source component even if value for specimen source available. //http://jira/browse/WDEV-11634 String sendSiteAndSource = HL7Utils.getConfigItem(toConfigItemArray(providerSystem.getConfigItems()), ConfigItems.useSiteAndSource); if (sendSiteAndSource == null || (sendSiteAndSource.equalsIgnoreCase("FALSE") || sendSiteAndSource.equalsIgnoreCase("NO"))) { sps.getSpecimenSourceNameOrCode().getIdentifier().setValue(remoteLookup); sps.getSpecimenSourceNameOrCode().getText().setValue(specimen.getSiteCd().getText()); } } // OBR-24 Diagnostic serv sect ID if (specimen.getDisciplineIsNotNull()) { String extMapping = ocsIf.getServiceMapping(specimen.getDiscipline(), providerSystem.getCodeSystem()); obr.getDiagnosticServSectID().setValue(extMapping); } // OBR-39 Collector’s comment (CE) obr.getCollectorSComment(0).getText().setValue(specimen.getCollectorComment()); LOG.debug("O01VoMapper renderSpecimenToOBR: exit"); }