Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@

Insert into KRCR_PARM_T (NMSPC_CD,CMPNT_CD,PARM_NM,OBJ_ID,VER_NBR,PARM_TYP_CD,VAL,PARM_DESC_TXT,EVAL_OPRTR_CD,APPL_ID) values ('KC-GEN','Document','KC_MEDUSA_COMPLIANCE_MODULE_CHECKBOX_DEFAULT',sys_guid(),1,'CONFG','Y','This boolean determines whether the Include Compliance Modules checkbox defaults to checked (Y) or unchecked (N)','A','KC');
Original file line number Diff line number Diff line change
Expand Up @@ -24,28 +24,40 @@
import java.io.Serializable;
import java.util.Collections;
import java.util.List;
import org.kuali.rice.coreservice.framework.parameter.ParameterService;
import org.kuali.rice.coreservice.framework.CoreFrameworkServiceLocator;

public class MedusaBean implements Serializable{


private static final long serialVersionUID = -8727199559530816767L;
private String medusaViewRadio;
private String moduleName;
private String complianceModulesCheckbox;
private Long moduleIdentifier;
private List<MedusaNode> parentNodes;
private MedusaNode currentNode;


ParameterService parameterService = CoreFrameworkServiceLocator.getParameterService();
String complianceModuleCheckboxDefault = parameterService.getParameterValueAsString("KC-GEN","Document","KC_MEDUSA_COMPLIANCE_MODULE_CHECKBOX_DEFAULT");

public MedusaBean() {
setMedusaViewRadio("0");
if (StringUtils.equalsIgnoreCase(complianceModuleCheckboxDefault, "N")) {
setComplianceModulesCheckbox("");
}
else {
setComplianceModulesCheckbox("includeComplianceModules");
}
}

public void init(String moduleName, Long moduleIdentifier) {
setMedusaViewRadio("0");
setModuleName(moduleName);
setModuleIdentifier(moduleIdentifier);
generateParentNodes();
}

/**
* Gets the medudaViewRadio attribute.
* @return Returns the medudaViewRadio.
Expand All @@ -65,6 +77,17 @@ public void setMedusaViewRadio(String medusaViewRadio) {
}
}

public String getComplianceModulesCheckbox() {
return this.complianceModulesCheckbox;
}

public void setComplianceModulesCheckbox(String complianceModulesCheckbox) {
if (!StringUtils.equals(this.complianceModulesCheckbox, complianceModulesCheckbox)) {
this.complianceModulesCheckbox = complianceModulesCheckbox;
generateParentNodes();
}
}

/**
* Gets the moduleName attribute.
* @return Returns the moduleName.
Expand Down Expand Up @@ -96,19 +119,20 @@ public Long getModuleIdentifier() {
public void setModuleIdentifier(Long moduleIdentifier) {
this.moduleIdentifier = moduleIdentifier;
}


private MedusaService getMedusaService() {
return KcServiceLocator.getService(MedusaService.class);
}

public void generateParentNodes() {
boolean includeComplianceModules = StringUtils.equals("includeComplianceModules", getComplianceModulesCheckbox());
if(StringUtils.equalsIgnoreCase("0", getMedusaViewRadio())){
setParentNodes(getMedusaService().getMedusaByProposal(getModuleName(), getModuleIdentifier()));
setParentNodes(getMedusaService().getMedusaByProposal(getModuleName(), getModuleIdentifier(), includeComplianceModules));
}else if(StringUtils.equalsIgnoreCase("1", getMedusaViewRadio())){
setParentNodes(getMedusaService().getMedusaByAward(getModuleName(), getModuleIdentifier()));
setParentNodes(getMedusaService().getMedusaByAward(getModuleName(), getModuleIdentifier(), includeComplianceModules));
}
sortNodes(parentNodes);
sortNodes(parentNodes);
}


Expand All @@ -118,26 +142,26 @@ public List<MedusaNode> getParentNodes() {
}
return parentNodes;
}

private void sortNodes(List<MedusaNode> nodes){
Collections.sort(nodes, new MedusaNodeComparator());
for(MedusaNode mNode: nodes){
if(!mNode.getChildNodes().isEmpty()){
sortNodes((List<MedusaNode>) mNode.getChildNodes());
sortNodes((List<MedusaNode>) mNode.getChildNodes());
}
}
}

public void setParentNodes(List<MedusaNode> parentNodes) {
this.parentNodes = parentNodes;
}

public MedusaNode getCurrentNode() {
return currentNode;
}

public void setCurrentNode(MedusaNode currentNode) {
this.currentNode = currentNode;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

import java.util.List;


/**
*
* Medusa Service provides the methods for displaying the tree-like view and summary of
Expand All @@ -36,7 +37,7 @@ public interface MedusaService {
* @param moduleIdentifier the primary key of the object to be looked up in the specified module
* @return
*/
public List<MedusaNode> getMedusaByAward(String moduleName, Long moduleIdentifier);
public List<MedusaNode> getMedusaByAward(String moduleName, Long moduleIdentifier, boolean includeComplianceModules);

/**
*
Expand All @@ -47,8 +48,8 @@ public interface MedusaService {
* @param moduleIdentifier the primary key of the object to be looked up in the specified module
* @return
*/
public List<MedusaNode> getMedusaByProposal(String moduleName, Long moduleIdentifier);
public List<MedusaNode> getMedusaByProposal(String moduleName, Long moduleIdentifier, boolean includeComplianceModules);

/**
*
* Returns a single MedusaNode that can be used to render the lazy-loaded summary for the
Expand Down
Loading