public SpecimenType getFirstSpecimenTypeForResultSpecimenType(ResultSpecimenTypes resultSpecimenType) { if (resultSpecimenType==null) return null; DomainFactory factory = getDomainFactory(); String query = "select rst.specimenType from ResultSpecimenTypes as rst left join rst.alternateSpecimenTypes as ast left join ast.instance as ins left join rst.specimenType as l3_1"; query+=" where ins.id = :type"; List<?> list =factory.find(query,new String[]{"type"},new Object[]{resultSpecimenType.getID()}); if (list!=null && list.size()>0) { LookupInstance li=(LookupInstance)list.get(0); return new SpecimenType(li.getId(),li.getText(),li.isActive()); } return null; }
public ColumnIdentifierValue(DateTime dateTime, Boolean timeSupplied, Integer analyte, LookupInstVo labSpecimen, SpecimenType orderSpecimen, Boolean isReceivedDate) { this.dateTime = dateTime; this.timeSupplied = Boolean.TRUE.equals(timeSupplied); if(this.groupIndex == null) { this.groupIndex = new ArrayList<Integer>(); } this.groupIndex.add(analyte); this.labSpecimen = labSpecimen; this.orderSpecimen = orderSpecimen; this.isReceivedDateTime = Boolean.TRUE.equals(isReceivedDate); }
public boolean needsMerging(DateTime date, boolean timeSupplied, LookupInstVo labSpecimen, SpecimenType orderSpecimen, Integer analyte) { if (this.dateTime.equals(date) && this.timeSupplied == timeSupplied) { if (this.labSpecimen != null && labSpecimen != null && this.labSpecimen.getID() == labSpecimen.getID()) return !this.groupIndex.contains(analyte); if (this.labSpecimen == null && labSpecimen == null && this.orderSpecimen != null && orderSpecimen != null && this.orderSpecimen.getID() == orderSpecimen.getID()) return !this.groupIndex.contains(analyte); if (this.labSpecimen == null && labSpecimen == null && this.orderSpecimen == null && orderSpecimen == null) return !this.groupIndex.contains(analyte); return false; } return false; }
private DynamicGridColumn getValueColumn(DateTime valueDateTime, int groupIndex, LookupInstVo labSpecimenType, SpecimenType orderSpecimenType) { for(int i = 0; i < form.dyngrd().getColumns().size(); i++) { DynamicGridColumn column = form.dyngrd().getColumns().get(i); if(column.getIdentifier() instanceof ColumnIdentifierValue) { ColumnIdentifierValue columnIndentifier = (ColumnIdentifierValue) column.getIdentifier(); boolean labSpecimenMatch = columnIndentifier.getLabSpecimen() != null && labSpecimenType != null && columnIndentifier.getLabSpecimen().equals(labSpecimenType); boolean orderSpecimenMatch = columnIndentifier.getLabSpecimen() == null && labSpecimenType == null && columnIndentifier.getOrderSpecimen() != null && orderSpecimenType != null && columnIndentifier.getOrderSpecimen().equals(orderSpecimenType); boolean noOrderOrLabSpecimen = columnIndentifier.getLabSpecimen() == null && columnIndentifier.getOrderSpecimen() == null && labSpecimenType == null && orderSpecimenType == null; if (columnIndentifier.getDate().equals(valueDateTime) && (labSpecimenMatch || orderSpecimenMatch || noOrderOrLabSpecimen)) { DynamicGridRow row = form.dyngrd().getRows().get(groupIndex); DynamicGridCell cell = row.getCells().get(column); if(cell == null || cell.getValue() == null) return column; } } } return null; }
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"); }
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"); }
public SpecimenType getOrderSpecimen() { return this.orderSpecimen; }
private void updateSpecimenRowTotal(DynamicGridRow row, DynamicGrid grid) { // WDEV-12280 if (!ConfigFlag.UI.OCS_ORDERING_DISPLAY_BLOOD_VOLUMES.getValue()) return; DynamicGridCell cellHeaderDiscipline = row.getCells().get(grid.getColumns().getByIdentifier(DISCIPLINE_COLUMN)); // Get total volume required for specimen Float thisval = 0.0f; for (int i = 0; i < row.getRows().size(); i++) { DynamicGridCell cellDiscipline = row.getRows().get(i).getCells().get(grid.getColumns().getByIdentifier(DISCIPLINE_COLUMN)); thisval += (Float) cellDiscipline.getIdentifier(); } StringBuilder cellHeaderDisciplineValue = new StringBuilder(); if (row.getIdentifier() instanceof OrderInvestigationVoCollection) { OrderInvestigationVoCollection investigations = (OrderInvestigationVoCollection) row.getIdentifier(); if (investigations.size() == 1 && InvEventType.TIME_SERIES.equals(investigations.get(0).getInvestigation().getEventType())) { cellHeaderDisciplineValue.append(investigations.get(0).getInvestigation().getInvestigationIndex().getName()); } else if (cellHeaderDiscipline.getIdentifier() instanceof ServiceVo) { cellHeaderDisciplineValue.append(((ServiceVo) cellHeaderDiscipline.getIdentifier()).getServiceName()); } } DynamicGridCell cellSpecimenType = row.getCells().get(grid.getColumns().getByIdentifier(SPECIMENTYPE_COLUMN)); if (cellSpecimenType.getIdentifier() instanceof SpecimenType) { cellHeaderDisciplineValue.append(" (").append(((SpecimenType) cellSpecimenType.getIdentifier()).getText()).append(") "); } if (row.getValue() instanceof OrderSpecimenVo) { OrderSpecimenVo orderSpecimen = (OrderSpecimenVo) row.getValue(); if (orderSpecimen.getSiteCd() != null) { cellHeaderDisciplineValue.append(" ").append(orderSpecimen.getSiteCd().getText()); } } cellHeaderDisciplineValue.append(" - ").append(thisval).append(" mls"); cellHeaderDiscipline.setValue(cellHeaderDisciplineValue.toString()); }