public void newInstance() throws ims.framework.exceptions.PresentationLogicException { // Check if a PatientICPAction exists // Throw an exception if no selected PatientICPAction exists as this // means the logic is off if (!form.getLocalContext().getPatientICPActionIsNotNull() || !form.getLocalContext().getPatientICPAction().getActionIsNotNull()) throw new CodingRuntimeException("Logic error - Selected PatientICPAction can not be null and must have an action associated"); // Determine what kind of instance we need to create if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { form.lyrMain().showtabPageAssessment(); newPatientAssessmentInstance(domain.getAssessment(form.getLocalContext().getPatientICPAction().getAction().getLinkedAssessment())); return; } if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { form.lyrMain().showtabPageGraphicalAssessment(); newPatientGraphicalAssessment(domain.getGraphicAssessment(form.getLocalContext().getPatientICPAction().getAction().getLinkedGraphicAssessment())); return; } }
public void updateInstance() { // Determine what kind of instance we need to create if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { form.lyrMain().showtabPageAssessment(); } if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { form.lyrMain().showtabPageGraphicalAssessment(); } // Set form to EDIT mode form.setMode(FormMode.EDIT); }
public boolean save() throws ims.framework.exceptions.PresentationLogicException { // Check if a PatientICPAction exits // Throw an exception if no selected PatientICPAction exists as this // means the logic is off if (!form.getLocalContext().getPatientICPActionIsNotNull() || !form.getLocalContext().getPatientICPAction().getActionIsNotNull()) throw new CodingRuntimeException("Logic error - Selected PatientICPAction can not be null and must have an action associated"); // Decide what are we saving // Patient assessment based on user assessment if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) return savePatientAssessment(); // Patient assessment based on graphical assessment if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) return savePatientGraphicalAssessment(); // Return false otherwise return false; }
/** * On ICP Action Button Linked Click event handler */ protected void onBtnActionBrowseLinkClick() throws ims.framework.exceptions.PresentationLogicException { if (ICPCompLinkedType.FORM.equals(form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().getValue())) { engine.open(form.getForms().Core.SelectForm, new Object[] { Boolean.FALSE }); } else if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().getValue())) { engine.open(form.getForms().Core.SelectGraphicalAssessment); } else if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().getValue())) { engine.open(form.getForms().Core.SelectAssessment); } else if (ICPCompLinkedType.ORDER_TEMPLATE.equals(form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().getValue())) { engine.open(form.getForms().ICP.SelectOrderEntryTemplate); } }
/** * Function used to update controls state */ public void updateControlsState() { // Update layer visibility updateVisibleLayer(form.getLocalContext().getSelectedItem()); form.ctnConfiguration().setCollapsed(!FormMode.EDIT.equals(form.getMode()) && !form.getLocalContext().getSelectedItemIsNotNull()); // REGION - Update controls state different for each form mode if (FormMode.VIEW.equals(form.getMode())) { form.btnEdit().setVisible((form.treICPList().getValue() instanceof ICPLiteVo && !PreActiveActiveInactiveStatus.INACTIVE.equals(((ICPLiteVo) form.treICPList().getValue()).getStatus())) || (form.treICPList().getValue() instanceof ICPStageLiteVo && !PreActiveActiveInactiveStatus.INACTIVE.equals(((ICPStageLiteVo) form.treICPList().getValue()).getStatus())) || (form.treICPList().getValue() instanceof ICPPhaseLiteVo && !PreActiveActiveInactiveStatus.INACTIVE.equals(((ICPPhaseLiteVo) form.treICPList().getValue()).getStatus())) || (form.treICPList().getValue() instanceof ICPActionLiteVo && !PreActiveActiveInactiveStatus.INACTIVE.equals(((ICPActionLiteVo) form.treICPList().getValue()).getStatus()))); } else { form.ctnConfiguration().lyrICPTabs().Stage().chkStageHasPhases().setEnabled(!(form.getLocalContext().getSelectedItem() instanceof ICPStageVo && ((ICPStageVo) form.getLocalContext().getSelectedItem()).getPhasesIsNotNull() && ((ICPStageVo) form.getLocalContext().getSelectedItem()).getPhases().size() > 0)); form.ctnConfiguration().lyrICPTabs().Action().btnActionBrowseLink().setEnabled(form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().getValue() != null && !ICPCompLinkedType.NONE.equals(form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().getValue())); } // REGION - Update context menu state updateContextMenuState(); }
private boolean isStructuralAssessment() { PatientICPActionViewVo action = (PatientICPActionViewVo) form.lyrMain().tabPageActions().grdActions().getValue(); if (action == null) return false; if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(action.getAction().getLinkedType())) { return true; } return false; }
private boolean isGraphicalAssessment() { PatientICPActionViewVo action = (PatientICPActionViewVo) form.lyrMain().tabPageActions().grdActions().getValue(); if (action == null) return false; if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(action.getAction().getLinkedType()) ) { return true; } return false; }
private String getCaptionString(PatientICPActionLiteVo patientAction) { if (patientAction == null) return null; if (ICPCompLinkedType.FORM.equals(patientAction.getAction().getLinkedType())) { return patientAction.getAction().getLinkedForm().getCaption(); } else if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(patientAction.getAction().getLinkedType())) { return patientAction.getAction().getLinkedAssessment().getName(); } else if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(patientAction.getAction().getLinkedType())) { return patientAction.getAction().getLinkedGraphicAssessment().getName(); } else if (ICPCompLinkedType.ORDER_TEMPLATE.equals(patientAction.getAction().getLinkedType())) { return "Place Order"; } else if (ICPCompLinkedType.NONE.equals(patientAction.getAction().getLinkedType())) { return "No details"; } return null; }
public void open() { // Clear screen clearScreen(); // Check local context for value - set value to appropriate tab if (form.getLocalContext().getPatientICPActionIsNotNull() && form.getLocalContext().getPatientICPAction().getActionIsNotNull()) { if (ICPCompLinkedType.FORM.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { try { // Set form boolean readOnly = Boolean.FALSE.equals(form.getLocalContext().getUserHasEditRights()); form.lyrMain().tabPageForm().dynamicForm().setReadOnly(readOnly); ims.domain.FormName formName = new ims.domain.FormName(form.getLocalContext().getPatientICPAction().getAction().getLinkedForm().getID_AppForm()); form.lyrMain().tabPageForm().dynamicForm().open(formName); form.lyrMain().tabPageForm().setCaption(formName.getName()); form.lyrMain().showtabPageForm(); } catch (Exception exception) { // Treat any exceptions that might arise exception.printStackTrace(); engine.showMessage("Error displaying linked form: " + exception.getMessage()); return; } } if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { // Set user defined assessment populateUserAssessments(form.getLocalContext().getPatientICPAction()); form.lyrMain().showtabPageAssessment(); } if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { // Set graphical assessment populateGraphicalAssessments(form.getLocalContext().getPatientICPAction()); form.lyrMain().showtabPageGraphicalAssessment(); } if (ICPCompLinkedType.ORDER_TEMPLATE.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { // Set order template (form) tab populateOrderTemplate(form.getLocalContext().getPatientICPAction()); form.lyrMain().showtabPageForm(); } if (ICPCompLinkedType.NONE.equals(form.getLocalContext().getPatientICPAction().getAction().getLinkedType())) { form.lyrMain().showtabPageNone(); } } // Set component mode to VIEW form.setMode(FormMode.VIEW); }
/** * Function used to initialize Linked Type combobox * Will remove the NOTIFICATION value */ private void initializeLinkedType() { form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().removeRow(ICPCompLinkedType.NOTIFICATION); }
/** * Function used to validate the liked type for an ICP Action * * @param action * @param existingErrors * @return */ private String[] validateLinkedItem(ICPActionShortVo action, String[] existingErrors) { // Create errors array list ArrayList<String> errorList = new ArrayList<String>(); // Add existing errors if (existingErrors != null) { for (int i = 0; i < existingErrors.length; i++) { errorList.add(existingErrors[i]); } } // Validate linked type if (ICPCompLinkedType.FORM.equals(action.getLinkedType()) && !action.getLinkedFormIsNotNull()) errorList.add("Select the form you want to link the action to"); if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(action.getLinkedType()) && !action.getLinkedGraphicAssessmentIsNotNull()) errorList.add("Select the graphic assessment you want to link the action to"); if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(action.getLinkedType()) && !action.getLinkedAssessmentIsNotNull()) errorList.add("Select the assessment you want to link the action to"); if (ICPCompLinkedType.ORDER_TEMPLATE.equals(action.getLinkedType()) && !action.getLinkedOrderEntryTemplateIsNotNull()) errorList.add("Select the order template you want to link the action to"); // Return the errors int errorCount = errorList.size(); if (errorCount == 0) return null; String[] errors = new String[errorCount]; for (int i = 0; i < errorCount; i++) { errors[i] = errorList.get(i); } return errors; }
/** * Function used to populate instance controls with an ICP Action VO * * @param icpAction * - ICP Action provided for populating instance controls */ private void populateICPActionInstanceControls(ICPActionShortVo icpAction) { // No need to clear the controls - they were already cleared in the calling function // Exit the function if the ICP Action is null if (icpAction == null) return; // Populate controls with DATA // Disciplines form.ctnConfiguration().lyrICPTabs().Action().chklistActionDiscipline().setValues(icpAction.getDiscipline()); form.ctnConfiguration().lyrICPTabs().Action().txtActionName().setValue(icpAction.getName()); form.ctnConfiguration().lyrICPTabs().Action().txtActionDescription().setValue(icpAction.getDescription()); form.ctnConfiguration().lyrICPTabs().Action().txtActionHelpUrl().setValue(icpAction.getHelpURL()); form.ctnConfiguration().lyrICPTabs().Action().cmbActionStatus().setValue(icpAction.getStatus()); form.ctnConfiguration().lyrICPTabs().Action().intActionSequence().setValue(icpAction.getSequence()); form.ctnConfiguration().lyrICPTabs().Action().cmbActionLinkedType().setValue(icpAction.getLinkedType()); // Choose what to populate in Action Link text box if (ICPCompLinkedType.FORM.equals(icpAction.getLinkedType())) { setLinkedItem(icpAction.getLinkedForm()); } else if (ICPCompLinkedType.USERDEFINEDASSESSMENT.equals(icpAction.getLinkedType())) { setLinkedItem(icpAction.getLinkedAssessment()); } else if (ICPCompLinkedType.GRAPHICALASSESSMENT.equals(icpAction.getLinkedType())) { setLinkedItem(icpAction.getLinkedGraphicAssessment()); } else if (ICPCompLinkedType.ORDER_TEMPLATE.equals(icpAction.getLinkedType())) { setLinkedItem(icpAction.getLinkedOrderEntryTemplate()); } form.ctnConfiguration().lyrICPTabs().Action().chkActionMandatory().setValue(icpAction.getIsMandatory()); form.ctnConfiguration().lyrICPTabs().Action().chkCounterSignature().setValue(icpAction.getRequiresCounterSignature()); // Set other linked ICP Actions form.getGlobalContext().ICP.setLinkedActions(icpAction.getClinicalDetailActions()); }