private void loadFormMenuActions(TreeNode node) { if(node.getValue() instanceof IAppForm && node.getNodes().size() == 1 && node.getNodes().get(0).getValue() == null) { node.getNodes().clear(); MenuActionVoCollection actions = domain.getMenuActions((IAppForm)node.getValue()); if(actions != null && actions.size() > 0) { for (MenuActionVo action : actions) { addMenuAction(node, action); } } else { node.setCheckBoxVisible(false); } } }
private AppFormMenuActionsVoCollection getSelection() { AppFormMenuActionsVoCollection result = new AppFormMenuActionsVoCollection(); for(int x = 0; x < form.treFormActions().getNodes().size(); x++) { TreeNode node = form.treFormActions().getNodes().get(x); if(node.getValue() instanceof IAppForm) { MenuActionVoCollection checkedActions = new MenuActionVoCollection(); for(int y = 0; y < node.getNodes().size(); y++) { TreeNode childNode = node.getNodes().get(y); if(childNode.isChecked() && childNode.getValue() instanceof MenuActionVo) { checkedActions.add((MenuActionVo)childNode.getValue()); } } if(checkedActions.size() > 0) { AppFormMenuActionsVo item = new AppFormMenuActionsVo(); item.setID_AppForm(((IAppForm)node.getValue()).getFormId()); item.setMenuActions(checkedActions); result.add(item); } } } return result; }
private FormMenuActionsDeniedVoCollection getActionsDenied() { FormMenuActionsDeniedVoCollection result = new FormMenuActionsDeniedVoCollection(); for(int x = 0; x < form.lyrRights().tabActionsDenied().treActions().getNodes().size(); x++) { TreeNode formNode = form.lyrRights().tabActionsDenied().treActions().getNodes().get(x); AppFormVo formValue = (AppFormVo)formNode.getValue(); MenuActionVoCollection actions = new MenuActionVoCollection(); for(int y = 0; y < formNode.getNodes().size(); y++) { TreeNode itemNode = formNode.getNodes().get(y); if(itemNode.getValue() != null) { actions.add((MenuActionVo)itemNode.getValue()); } } if(actions.size() > 0) { FormMenuActionsDeniedVo item = new FormMenuActionsDeniedVo(); item.setForm(formValue); item.setMenuActions(actions); result.add(item); } } return result; }
public MenuActionVoCollection getMenuActions(ims.framework.interfaces.IAppForm form) { if(form == null) throw new DomainRuntimeException("Invalid form"); AppForm domainObject = (AppForm)getDomainFactory().getDomainObject(AppForm.class, form.getFormId()); AppFormMenuActionsVo vo = AppFormMenuActionsVoAssembler.create(domainObject); return vo.getMenuActions(); }
private MenuActionVoCollection getDeniedActionForCurrentUser() { MenuActionVoCollection deniedActions = new MenuActionVoCollection(); AppFormForTrackingVo currentForm = domain.getFormMenuAction(engine.getFormName().getID()); if(currentForm == null) return null; IAppRole role = engine.getLoggedInRole(); if(role == null) return null; for(MenuActionVo menuAction : currentForm.getMenuActions()) { if(menuAction == null) continue; if(!role.hasMenuActionRight(currentForm, menuAction)) { deniedActions.add(menuAction); } } return deniedActions; }
private void updateControlsState() { if(form.getLocalContext().getFormMode() == null) { form.lyrTriage().tabPageTriageAccepted().ccAccepted().setMode(FormMode.EDIT); } /*if(form.lyrTriage().tabPageTriage().isVisible())//WDEV-21994 { Boolean isReferralCAB = form.getLocalContext().getCurrentCatsReferralIsNotNull() && Boolean.TRUE.equals(form.getLocalContext().getCurrentCatsReferral().getIsCAB()); form.lyrTriage().tabPageTriage().btnRedirect().setVisible(!isReferralCAB);//WDEV-21994 }*/ boolean isSaveVisible = form.lyrTriage().tabPageTriageAccepted().isVisible() || form.lyrTriage().tabPageTriagePendingDiagnosticResult().isVisible() || form.lyrTriage().tabPageRedirectReferral().isVisible() || form.lyrTriage().tabPageReferralRejected().isVisible() || form.lyrTriage().tabPageAwaitingClinicalInformation().isVisible() || form.lyrTriage().tabPageSecondOpinion().isVisible(); form.btnSaveReturnToList().setVisible(isSaveVisible && (form.getLocalContext().getFormMode() == null)); form.btnSaveTriageNextPatient().setVisible(isSaveVisible && (form.getLocalContext().getFormMode() == null)); form.btnCancelNextPatient().setVisible(form.getLocalContext().getFormMode() == null); form.btnCancelReturnToWorklist().setVisible(form.getLocalContext().getFormMode() == null); boolean viewMode = FormMode.VIEW.equals(form.getLocalContext().getFormMode()); if(viewMode) { form.lyrTriage().tabPageTriagePendingDiagnosticResult().txtPendingComment().setEnabled(false); } form.btnClose().setVisible(viewMode); //WDEV-20711 Boolean isReferralCAB = form.getLocalContext().getCurrentCatsReferralIsNotNull() && Boolean.TRUE.equals(form.getLocalContext().getCurrentCatsReferral().getIsCAB()); form.lyrTriage().tabPageRedirectReferral().GroupRedirect().setVisible(GroupRedirectEnumeration.rdoRedirectToHcp, !isReferralCAB); boolean showRedirectToHcpControls = GroupRedirectEnumeration.rdoRedirectToHcp.equals(form.lyrTriage().tabPageRedirectReferral().GroupRedirect().getValue()); form.lyrTriage().tabPageRedirectReferral().lblRedirectToHcp().setVisible(showRedirectToHcpControls); form.lyrTriage().tabPageRedirectReferral().qmbRedirectedHcp().setVisible(showRedirectToHcpControls); form.lyrTriage().tabPageRedirectReferral().GroupRedirect().setEnabled(!viewMode); form.lyrTriage().tabPageRedirectReferral().cmbRedirectedService().setEnabled(!showRedirectToHcpControls && !viewMode); form.lyrTriage().tabPageRedirectReferral().qmbRedirectedHcp().setEnabled(!viewMode); form.lyrTriage().tabPageRedirectReferral().cmbReason().setEnabled(!viewMode); form.lyrTriage().tabPageRedirectReferral().txtCommentsBig().setEnabled(!viewMode); form.lyrTriage().tabPageReferralRejected().cmbReasonForRejection().setEnabled(!viewMode); form.lyrTriage().tabPageReferralRejected().txtRejectedComments().setEnabled(!viewMode); form.lyrTriage().tabPageReferralRejected().GroupGPContacted().setEnabled(!viewMode); form.lyrTriage().tabPageReferralRejected().GroupPatientContacted().setEnabled(!viewMode); form.lyrTriage().tabPageAwaitingClinicalInformation().txtAwaitingClinicalComment().setEnabled(!viewMode); MenuActionVoCollection deniedActions = form.getLocalContext().getDeniedMenuActions(); boolean isUndoTriageOutcomeVisible = true; for (int i = 0; deniedActions != null && i < deniedActions.size(); i++) { MenuActionVo action = deniedActions.get(i); if (action == null) continue; if (UNDO_TRIAGE_OUTCOME == action.getID_MenuAction()) { isUndoTriageOutcomeVisible = false; } } form.lyrTriage().tabPageSecondOpinion().btnSecondOpinion().setEnabled(!viewMode); form.btnUndoTriageOutcome().setVisible(isUndoTriageOutcomeVisible && form.getLocalContext().getCurrentCatsReferral() != null && form.getLocalContext().getCurrentCatsReferral().getTriageOutcome() != null); //WDEV-22464 form.btnViewReferralDocuments().setVisible(form.getLocalContext().getCurrentCatsReferralIsNotNull() && form.getLocalContext().getCurrentCatsReferral().getReferralDocumentsIsNotNull() && form.getLocalContext().getCurrentCatsReferral().getReferralDocuments().size()>1); // start WDEV-23328 form.lyrTriage().tabPageTriage().btnAccept().setVisible(engine.hasRight(AppRight.REFERRAL_TRIAGE_ACTION_CAN_ACCEPT)); form.lyrTriage().tabPageTriage().btnRedirect().setVisible(engine.hasRight(AppRight.REFERRAL_TRIAGE_ACTION_CAN_REDIRECT)); form.lyrTriage().tabPageTriage().btnReject().setVisible(engine.hasRight(AppRight.REFERRAL_TRIAGE_ACTION_CAN_REJECT)); // end WDEV-23328 }