private void doSearch() { form.getGlobalContext().OCRR.setLastUpdatedPathRadResult(null); form.grdClinicalResults().getRows().clear(); updateTotal(); if (isSearchCriteriaValid()) { DateTime dtFrom = (form.dteFrom().getValue() != null ? new DateTime(form.dteFrom().getValue(), new Time(0, 0, 0)) : null); DateTime dtTo = (form.dteTo().getValue() != null ? new DateTime(form.dteTo().getValue(), new Time(23, 59, 59)) : null); ClinicalResultListVoCollection voCollResults = domain.listResults(dtFrom, dtTo, form.cmbDepartment().getValue(), form.qmbInvestigation().getValue(), form.qmbClinician().getValue(), form.Group1().getValue().equals(Group1Enumeration.rdoResults) ? Boolean.TRUE : Boolean.FALSE, form.getGlobalContext().Core.getPatientShortIsNotNull() ? form.getGlobalContext().Core.getPatientShort() : null); form.getLocalContext().setinvIdList(getInvId(voCollResults)); Integer nNewResUnseenDays = ConfigFlag.DOM.OCS_NEWRES_UNSEEN_CUTOFF.getValue(); Date dateUnseen = new Date().addDay(-1 * nNewResUnseenDays.intValue()); populateResultsGrid(voCollResults, dateUnseen); } updateControlsState(); }
private void populateResultsGrid(ClinicalResultListVoCollection voCollResults, Date dateUnseen) { if (voCollResults == null || voCollResults.size() == 0) { engine.showMessage("No records match your search criteria."); return; } form.getLocalContext().setResultCollectionFromGrid(null); //WDEV-16882 for (int i = 0; i < voCollResults.size(); i++) { Color backColour = ((i % 2) == 0 ? Color.Beige : Color.Default); addResultRow(voCollResults.get(i), dateUnseen, backColour); } updateTotal(); }
private String getInvId(ClinicalResultListVoCollection voCollResults) { if (voCollResults == null || voCollResults.size() == 0) return null; String temp = new String("("); for (int i = 0; i < voCollResults.size(); i++) { if (i < voCollResults.size() - 1) temp = temp + ((voCollResults.get(i) != null && voCollResults.get(i).getInvestigation() != null) ? voCollResults.get(i).getInvestigation().getID_Investigation() + "," : ""); else temp = temp + ((voCollResults.get(i) != null && voCollResults.get(i).getInvestigation() != null) ? voCollResults.get(i).getInvestigation().getID_Investigation() : ""); } temp += ")"; return temp; }
private boolean doSearch() { form.getGlobalContext().OCRR.setLastUpdatedPathRadResult(null); form.grdClinicalResults().getRows().clear(); updateTotal(); if (isSearchCriteriaValid()) { DateTime dtFrom = (form.dteFrom().getValue() != null ? new DateTime(form.dteFrom().getValue(), new Time(0, 0, 0)) : null); DateTime dtTo = (form.dteTo().getValue() != null ? new DateTime(form.dteTo().getValue(), new Time(23, 59, 59)) : null); ClinicalResultListVoCollection voCollResults = domain.listResults(dtFrom, dtTo, form.cmbDepartment().getValue(), form.qmbInvestigation().getValue(), form.qmbClinician().getValue(), form.Group1().getValue().equals(Group1Enumeration.rdoResults) ? Boolean.TRUE : Boolean.FALSE, form.getGlobalContext().Core.getPatientShortIsNotNull() ? form.getGlobalContext().Core.getPatientShort() : null); form.getLocalContext().setinvIdList(getInvId(voCollResults)); Integer nNewResUnseenDays = ConfigFlag.DOM.OCS_NEWRES_UNSEEN_CUTOFF.getValue(); Date dateUnseen = new Date().addDay(-1 * nNewResUnseenDays.intValue()); populateResultsGrid(voCollResults, dateUnseen); form.getGlobalContext().OCRR.setClinicalOrdersResultsSearchCriteria(getSearchCriteria());//WDEV-19389 updateControlsState(); return true; } else { updateControlsState(); return false; } }
/** * listResults * * @return */ public ClinicalResultListVoCollection listResults(ims.framework.utils.DateTime dateFrom, ims.framework.utils.DateTime dateTo, ims.core.clinical.vo.ServiceRefVo department, ims.ocrr.configuration.vo.InvestigationIndexRefVo exam, ims.core.resource.people.vo.HcpRefVo clinician, Boolean resultsOnly, ims.core.patient.vo.PatientRefVo patientId) { if (resultsOnly == null) throw new CodingRuntimeException("ResultsOnly parameter cannot be null !"); ArrayList<String> markers = new ArrayList<String>(); ArrayList<Object> values = new ArrayList<Object>(); StringBuffer sb = new StringBuffer("from OrderInvestigation as o1_1 where "); sb.append(" o1_1.investigation.investigationIndex.category = :cat"); markers.add("cat"); values.add(getDomLookup(Category.CLINICAL)); if (dateFrom != null && dateTo != null) { sb.append(" and"); sb.append(" o1_1.displayDateTime between :fromdate and :todate"); markers.add("fromdate"); values.add(dateFrom.getJavaDate()); markers.add("todate"); values.add(dateTo.getJavaDate()); } if (department != null) { sb.append(" and o1_1.investigation.providerService.locationService.service.id = :DEPARTMENT"); markers.add("DEPARTMENT"); values.add(department.getID_Service()); } if (exam != null) { sb.append(" and o1_1.investigation.investigationIndex.id = :INV"); markers.add("INV"); values.add(exam.getID_InvestigationIndex()); } if (clinician != null) { sb.append(" and o1_1.orderDetails.responsibleClinician.id = :CLINICIAN"); markers.add("CLINICIAN"); values.add(clinician.getID_Hcp()); } if (resultsOnly != null && resultsOnly.booleanValue()) { sb.append(" and o1_1.resultDetails is not null"); } if (patientId != null) { sb.append(" and o1_1.orderDetails.patient.id = :PID"); markers.add("PID"); values.add(patientId.getID_Patient()); } sb.append(" order by o1_1.displayDateTime desc, o1_1.ordInvSeq asc, o1_1.systemInformation.creationDateTime, o1_1.systemInformation.creationUser"); List<?> results = getDomainFactory().find(sb.toString(), markers, values); ClinicalResultListVoCollection voCollResults = ClinicalResultListVoAssembler.createClinicalResultListVoCollectionFromOrderInvestigation(results); return voCollResults; }