当前位置: 首页>>代码示例>>Java>>正文


Java OBR.getSpecimenSource方法代码示例

本文整理汇总了Java中ca.uhn.hl7v2.model.v24.segment.OBR.getSpecimenSource方法的典型用法代码示例。如果您正苦于以下问题:Java OBR.getSpecimenSource方法的具体用法?Java OBR.getSpecimenSource怎么用?Java OBR.getSpecimenSource使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ca.uhn.hl7v2.model.v24.segment.OBR的用法示例。


在下文中一共展示了OBR.getSpecimenSource方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: populateRADInvestigationVoFromOBR

import ca.uhn.hl7v2.model.v24.segment.OBR; //导入方法依赖的package包/类
private IfOrderInvestigationVo populateRADInvestigationVoFromOBR(OBR obr, String sendingApplication, ProviderSystemVo providerSystem) throws Exception
{
	IfOrderInvestigationVo orderInvVo = new IfOrderInvestigationVo();
	
	String providerInvCode = obr.getUniversalServiceIdentifier().getIdentifier().getValue();
	
	// wdev-2397 specimen source is now part of the search criteria to get the investigation
	SPS sps = obr.getSpecimenSource();

	IfProviderInvSearchVo search = new IfProviderInvSearchVo();
	search.setProviderInvCode(providerInvCode);
	search.setProvider(providerSystem);
	search.setHl7App(sendingApplication);
	search.setSpecimenSource(sps.getSpecimenSourceNameOrCode().getIdentifier().getValue());
	IfInvestigationLiteVo invVo = ocsIfInbound.getInvestigationByHl7AppInvAndService(search);
	if (invVo == null)
		throw new HL7Exception("Investigation not found for provider system and providerInvCode = " + providerInvCode);
	
	
	fillRADInvestigationFromOBR(orderInvVo, obr, invVo,providerSystem);
	
		// OBR-27   Quantity/timing
	// wdev-2746 - If obr-27 is not populated, we can check obr-5
	String priority = obr.getQuantityTiming(0).getPriority().getValue();
	if (priority == null)
		priority = obr.getPriority().getValue();
	if (priority != null)
	{
		orderInvVo.setOrderPriority((OrderPriority) svc.getLocalLookup(OrderPriority.class, OrderPriority.TYPE_ID, providerSystem.getCodeSystem().getText(), priority));
	}
	
	orderInvVo.setWasOrdered(Boolean.FALSE);
	return orderInvVo;
}
 
开发者ID:oopcell,项目名称:AvoinApotti,代码行数:35,代码来源:R01VoMapper.java

示例2: renderOrder

import ca.uhn.hl7v2.model.v24.segment.OBR; //导入方法依赖的package包/类
private void renderOrder(IfOrderInvestigationVo investigation, IfOrderMessageVo msgVo, IfOutOcsOrderVo newOrder, ORC orc, OBR obr, int id) throws Exception
{
	LOG.debug("O01VoMapper renderOrder: entry");

	// OBR-1   Set ID � OBR   (SI)
	obr.getSetIDOBR().setValue(String.valueOf(id+1));

	// OBR-2   Placer order number   (EI)   00216
	obr.getPlacerOrderNumber().getEntityIdentifier().setValue(msgVo.getPlacerOrdNum());
	
	// OBR-3 Filler Order Number
	if (msgVo.getFillerNumberIsNotNull())
	{
		obr.getFillerOrderNumber().getEntityIdentifier().setValue(msgVo.getFillerNumber());
	}

	renderInvestigationToORC_OBR(investigation, orc, obr,msgVo.getProviderSystem());
	renderMsgVoToORC(msgVo, orc);
	renderNewOrderToORC_OBR(msgVo.getProviderSystem(),newOrder, orc, obr);
	
	if (orc.getDateTimeOfTransaction().getTimeOfAnEvent().getValue() == null)
		renderDateTimeVoToTS(new DateTime(), orc.getDateTimeOfTransaction());
	
	if(investigation.getInvestigationIsNotNull()
			&&investigation.getInvestigation().getEventType().equals(InvEventType.TIME_SERIES)
			&&investigation.getInvestigation().getPathInvDetailsIsNotNull()
			&&investigation.getInvestigation().getPathInvDetails().getSpecimens().size()>0
			&&investigation.getInvestigation().getPathInvDetails().getSpecimens().get(0).getTypeIsNotNull())
	{
		SpecimenType type = investigation.getInvestigation().getPathInvDetails().getSpecimens().get(0).getType();
		
		SPS sps = obr.getSpecimenSource();
		sps.getSpecimenSourceNameOrCode().getIdentifier().setValue(svc.getRemoteLookup(type.getId(), msgVo.getProviderSystem().getCodeSystem().getText()));
		sps.getSpecimenSourceNameOrCode().getText().setValue(type.getText());

	}
	LOG.debug("O01VoMapper renderOrder: exit");

}
 
开发者ID:oopcell,项目名称:AvoinApotti,代码行数:40,代码来源:O01VoMapper.java

示例3: renderOrder

import ca.uhn.hl7v2.model.v24.segment.OBR; //导入方法依赖的package包/类
private void renderOrder(IfOrderInvestigationVo investigation, IfOrderMessageVo msgVo, IfOutOcsOrderVo newOrder, ORC orc, OBR obr, int id) throws Exception
{
	LOG.debug("O01VoMapper renderOrder: entry");

	// OBR-1   Set ID – OBR   (SI)
	obr.getSetIDOBR().setValue(String.valueOf(id+1));

	// OBR-2   Placer order number   (EI)   00216
	obr.getPlacerOrderNumber().getEntityIdentifier().setValue(msgVo.getPlacerOrdNum());
	
	// OBR-3 Filler Order Number
	if (msgVo.getFillerNumberIsNotNull())
	{
		obr.getFillerOrderNumber().getEntityIdentifier().setValue(msgVo.getFillerNumber());
	}

	renderInvestigationToORC_OBR(investigation, orc, obr,msgVo.getProviderSystem());
	renderMsgVoToORC(msgVo, orc);
	renderNewOrderToORC_OBR(msgVo.getProviderSystem(),newOrder, orc, obr);
	
	if (orc.getDateTimeOfTransaction().getTimeOfAnEvent().getValue() == null)
		renderDateTimeVoToTS(new DateTime(), orc.getDateTimeOfTransaction());
	
	if(investigation.getInvestigationIsNotNull()
			&&investigation.getInvestigation().getEventType().equals(InvEventType.TIME_SERIES)
			&&investigation.getInvestigation().getPathInvDetailsIsNotNull()
			&&investigation.getInvestigation().getPathInvDetails().getSpecimens().size()>0
			&&investigation.getInvestigation().getPathInvDetails().getSpecimens().get(0).getTypeIsNotNull())
	{
		SpecimenType type = investigation.getInvestigation().getPathInvDetails().getSpecimens().get(0).getType();
		
		SPS sps = obr.getSpecimenSource();
		sps.getSpecimenSourceNameOrCode().getIdentifier().setValue(svc.getRemoteLookup(type.getId(), msgVo.getProviderSystem().getCodeSystem().getText()));
		sps.getSpecimenSourceNameOrCode().getText().setValue(type.getText());

	}
	LOG.debug("O01VoMapper renderOrder: exit");

}
 
开发者ID:IMS-MAXIMS,项目名称:openMAXIMS,代码行数:40,代码来源:O01VoMapper.java

示例4: populatePATHInvestigationVoFromOBR

import ca.uhn.hl7v2.model.v24.segment.OBR; //导入方法依赖的package包/类
private IfOrderInvestigationVo populatePATHInvestigationVoFromOBR(OBR obr, String sendingApplication, IfOrderSpecimenVo specimen, HashMap<String, Object> fillerSpecimens, IfOrderSpecimenVoCollection specColl, ProviderSystemVo providerSystem,boolean isResultMessage) throws Exception
	{
		IfOrderInvestigationVo orderInvVo = new IfOrderInvestigationVo();
		String providerInvCode = obr.getUniversalServiceIdentifier().getIdentifier().getValue();

		// wdev-5526 - method created and called from here now
		IfInvestigationLiteVo invVo = getInvestigation(obr, sendingApplication, providerSystem, providerInvCode,true,isResultMessage);
		if (invVo == null)
			throw new HL7Exception("Investigation not found for provider system and providerInvCode = " + providerInvCode);
		
		fillPATHInvestigationFromOBR(orderInvVo, obr, invVo,providerSystem);

		// OBR-27   Quantity/timing
		// wdev-2746 - If obr-27 is not populated, we can check obr-5
		String priority = obr.getQuantityTiming(0).getPriority().getValue();
		if (priority == null)
			priority = obr.getPriority().getValue();
		if (priority != null)
		{
			orderInvVo.setOrderPriority((OrderPriority) svc.getLocalLookup(OrderPriority.class, OrderPriority.TYPE_ID, providerSystem.getCodeSystem().getText(), priority));
		}

		orderInvVo.setWasOrdered(Boolean.FALSE);
		
		// Specimens only for Pathology orders
		//	OBR-3   Filler order number   
		//  WDEV-1354 
		// We hold onto the specimens for each fillerOrderNumber in case
		// the same specimen is required again
		String fillerOrderNum = obr.getFillerOrderNumber().getEntityIdentifier().getValue();
		if (fillerSpecimens.containsKey(fillerOrderNum)&&!ConfigFlag.HL7.UNSOLICTED_NEW_SPECIMEN_PER_INVESTIGATION.getValue())
			specimen = (IfOrderSpecimenVo) fillerSpecimens.get(fillerOrderNum);
		else
		{
			specimen = new IfOrderSpecimenVo();
			populateSpecimenVoFromOBR(specimen, orderInvVo.getInvestigation(), obr,providerSystem);
			specimen.getInvestigations();
			if(InvEventType.TIME_SERIES.equals(orderInvVo.getInvestigation().getEventType()))
			{
				specimen.setWasProcessed(true);	
//				specimen.setPlacerOrdNum(value);
			}
			if(!specimen.getInvestigationsIsNotNull())
			{
				specimen.setInvestigations(new IfOrderInvestigationVoCollection());
			}
			specimen.getInvestigations().add(orderInvVo);
			specColl.add(specimen);

			if (!fillerSpecimens.containsKey(specimen.getFillerOrdNum()))
			{
				fillerSpecimens.put(specimen.getFillerOrdNum(), specimen);
			}
		}
		if(orderInvVo.getSpecimen()==null&&!ConfigFlag.HL7.UNSOLICTED_NEW_SPECIMEN_PER_INVESTIGATION.getValue())
		{
			orderInvVo.setSpecimen(specColl);
		}
		else
		{
			orderInvVo.setSpecimen(new IfOrderSpecimenVoCollection());
			orderInvVo.getSpecimen().add(specimen);
		}
		
		//WDEV-15552
		SPS sps = obr.getSpecimenSource();
		LookupInstVo resultSpecimenSource=svc.getLocalLookup(LookupInstVo.class, ResultSpecimenTypes.TYPE_ID, providerSystem.getCodeSystem().getText(), sps.getSpecimenSourceNameOrCode().getIdentifier().getValue().trim()); 
		orderInvVo.setResultSpecimenType(resultSpecimenSource);

		return orderInvVo;
	}
 
开发者ID:oopcell,项目名称:AvoinApotti,代码行数:72,代码来源:R01VoMapper.java

示例5: fillPATHInvestigationFromOBR

import ca.uhn.hl7v2.model.v24.segment.OBR; //导入方法依赖的package包/类
private void fillPATHInvestigationFromOBR(IfOrderInvestigationVo invVo, OBR obr, IfInvestigationLiteVo cfgInv,ProviderSystemVo providerSystem) throws Exception
{
	LOG.debug("R01VoMapper fillPATHInvestigationFromOBR: entry");

	invVo.setInvestigation(cfgInv);
	invVo.setFillerOrdNum(obr.getFillerOrderNumber().getEntityIdentifier().getValue());
	invVo.setResultStatus((ResultStatus) svc.getLocalLookup(ResultStatus.class, ResultStatus.TYPE_ID, providerSystem.getCodeSystem().getText(), obr.getResultStatus().getValue()));
	
	//http://jira/browse/WDEV-15552
	SPS sps = obr.getSpecimenSource();
	LookupInstVo resultSpecimenSource=svc.getLocalLookup(LookupInstVo.class, ResultSpecimenTypes.TYPE_ID, providerSystem.getCodeSystem().getText(), sps.getSpecimenSourceNameOrCode().getIdentifier().getValue().trim()); 
	invVo.setResultSpecimenType(resultSpecimenSource);
	//End http://jira/browse/WDEV-15552
	
	// wdev-2746 ResultStatus must map to a valid lookup value 
	if (obr.getResultStatus().getValue() != null && !invVo.getResultStatusIsNotNull())
		throw new HL7Exception("ResultStatus (OBR-25) does not map to a valid local lookup (ResultStatus) - Message Rejected");
		
	if (obr.getRequestedDateTime() != null && obr.getRequestedDateTime().getTimeOfAnEvent().getValue() != null)
	{
		invVo.setDisplayDateTime(populateDateTimeVoFromTS(obr.getRequestedDateTime()));
		invVo.setDisplayTimeSupplied( Boolean.valueOf(isTimeSupplied(obr.getRequestedDateTime())));
		invVo.setDisplayFlag(OcsDisplayFlag.REQUESTED);
	}
	if (obr.getResultsRptStatusChngDateTime() != null && obr.getResultsRptStatusChngDateTime().getTimeOfAnEvent().getValue() != null)
	{
		DateTime dt = populateDateTimeVoFromTS(obr.getResultsRptStatusChngDateTime());
		//JME: 20061205: Change to handle WinPath sending 189912300000 in OBR.22 instead of a null date/time
		if (!dt.equals(new DateTime("189912300000")))
		{
			invVo.setDisplayDateTime(dt);				
			invVo.setRepDateTime(dt);
			invVo.setResultSortDate(dt);//http://jira/browse/WDEV-18025
			invVo.setRepTimeSupplied( Boolean.valueOf(isTimeSupplied(obr.getResultsRptStatusChngDateTime())));					
			invVo.setDisplayFlag(OcsDisplayFlag.REPORTED);
			invVo.setDisplayTimeSupplied(invVo.getRepTimeSupplied());					
		}
	}
	if (obr.getSpecimenReceivedDateTime() != null && obr.getSpecimenReceivedDateTime().getTimeOfAnEvent().getValue() != null)
	{
		invVo.setDisplayDateTime(populateDateTimeVoFromTS(obr.getSpecimenReceivedDateTime()));			
		invVo.setDisplayFlag(OcsDisplayFlag.SPEC_RECVD);
		invVo.setDisplayTimeSupplied( Boolean.valueOf(isTimeSupplied(obr.getSpecimenReceivedDateTime())));
		
		// WDEV-16384  - Check if expected turnaround values configured.  If they are, calculated the expected result datetime
		invVo.setExpectedDateTime(ocsIfInbound.calculateExpectedDateTime(invVo.getInvestigation(), invVo.getDisplayDateTime()));

	}
	if (obr.getObservationDateTime() != null && obr.getObservationDateTime().getTimeOfAnEvent().getValue() != null)
	{
		invVo.setDisplayDateTime(populateDateTimeVoFromTS(obr.getObservationDateTime()));
		invVo.setDisplayFlag(OcsDisplayFlag.SPEC_COLL);
		invVo.setDisplayTimeSupplied( Boolean.valueOf(isTimeSupplied(obr.getObservationDateTime())));
	}			
	/*
	 * etc investVo.setOrderPriority(); investVo.setOrdInvCurrentStatus();
	 */
	LOG.debug("R01VoMapper fillPATHInvestigationFromOBR: exit");
}
 
开发者ID:oopcell,项目名称:AvoinApotti,代码行数:60,代码来源:R01VoMapper.java

示例6: renderSpecimenToOBR

import ca.uhn.hl7v2.model.v24.segment.OBR; //导入方法依赖的package包/类
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");

}
 
开发者ID:oopcell,项目名称:AvoinApotti,代码行数:53,代码来源:O01VoMapper.java

示例7: renderSpecimenToOBR

import ca.uhn.hl7v2.model.v24.segment.OBR; //导入方法依赖的package包/类
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");

}
 
开发者ID:IMS-MAXIMS,项目名称:openMAXIMS,代码行数:53,代码来源:O01VoMapper.java


注:本文中的ca.uhn.hl7v2.model.v24.segment.OBR.getSpecimenSource方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。