RM-6302 adding the java work to edit disposition schedule

This commit is contained in:
Ross Gale
2018-05-02 21:52:08 +01:00
parent b8af7ba22a
commit 308e86a4e5
7 changed files with 27 additions and 12 deletions

View File

@@ -242,6 +242,12 @@
</index>
</property>
<property name="rma:combineDispositionStepConditions">
<title>Disposition Evaluator Combination</title>
<type>d:boolean</type>
<mandatory>false</mandatory>
</property>
</properties>
<mandatory-aspects>
<aspect>rma:filePlanComponent</aspect>

View File

@@ -37,6 +37,7 @@
<#if action.period??>"period": "${action.period}",</#if>
<#if action.periodProperty??>"periodProperty": "${action.periodProperty}",</#if>
<#if action.location??>"location": "${action.location}",</#if>
<#if action.combineDispositionStepConditions??>"combineDispositionStepConditions": "${action.combineDispositionStepConditions?string}",</#if>
<#if action.events??>"events": [<#list action.events as event>"${event}"<#if event_has_next>,</#if></#list>],</#if>
"eligibleOnFirstCompleteEvent": ${action.eligibleOnFirstCompleteEvent?string}
}

View File

@@ -28,6 +28,7 @@
package org.alfresco.module.org_alfresco_module_rm.jscript.app;
import static org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel.READ_RECORDS;
import static org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel.PROP_COMBINE_DISPOSITION_STEP_CONDITIONS;
import static org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel.PROP_RS_DISPOSITION_EVENTS;
import static org.alfresco.service.cmr.security.AccessStatus.ALLOWED;
@@ -481,6 +482,7 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS
{
if(!details.isEventComplete())
{
((HashMap) rmNodeValues.get("properties")).put("combineDispositionStepConditions", nodeService.getProperty(dispositionService.getNextDispositionAction(nodeRef).getDispositionActionDefinition().getNodeRef(), PROP_COMBINE_DISPOSITION_STEP_CONDITIONS));
((HashMap) rmNodeValues.get("properties")).put("incompleteDispositionEvent", details.getEventName());
break;
}

View File

@@ -99,7 +99,7 @@ public interface RecordsManagementModel extends RecordsManagementCustomModel
QName PROP_DISPOSITION_PERIOD_PROPERTY = QName.createQName(RM_URI, "dispositionPeriodProperty");
QName PROP_DISPOSITION_EVENT = QName.createQName(RM_URI, "dispositionEvent");
QName PROP_DISPOSITION_EVENT_COMBINATION = QName.createQName(RM_URI, "dispositionEventCombination");
QName PROP_DISPOSITION_EVALUATOR_COMBINATION = QName.createQName(RM_URI, "dispositionEvaluatorCombination");
QName PROP_COMBINE_DISPOSITION_STEP_CONDITIONS = QName.createQName(RM_URI, "combineDispositionStepConditions");
QName PROP_DISPOSITION_LOCATION = QName.createQName(RM_URI, "dispositionLocation");
QName PROP_DISPOSITION_ACTION_GHOST_ON_DESTROY = QName.createQName(RM_URI, "dispositionActionGhostOnDestroy");

View File

@@ -27,6 +27,8 @@
package org.alfresco.module.org_alfresco_module_rm.script;
import static org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel.PROP_COMBINE_DISPOSITION_STEP_CONDITIONS;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -165,6 +167,11 @@ public class DispositionAbstractBase extends AbstractRmWebScript
model.put("events", eventNames);
}
if(getNodeService().getProperty(actionDef.getNodeRef(), PROP_COMBINE_DISPOSITION_STEP_CONDITIONS) != null)
{
model.put("combineDispositionStepConditions", getNodeService().getProperty(actionDef.getNodeRef(), PROP_COMBINE_DISPOSITION_STEP_CONDITIONS));
}
return model;
}

View File

@@ -133,11 +133,11 @@ public class DispositionActionDefinitionPost extends DispositionAbstractBase
json.getBoolean("eligibleOnFirstCompleteEvent") ? "or" : "and");
}
// if (json.has("evaluatorCombination"))
// {
// props.put(RecordsManagementModel.PROP_DISPOSITION_EVALUATOR_COMBINATION,
// json.getBoolean("evaluatorCombination") ? "and" : "or");
// }
if (json.has("combineDispositionStepConditions"))
{
props.put(RecordsManagementModel.PROP_COMBINE_DISPOSITION_STEP_CONDITIONS,
json.getBoolean("combineDispositionStepConditions"));
}
if (json.has("location"))
{

View File

@@ -96,7 +96,6 @@ public class DispositionActionDefinitionPut extends DispositionAbstractBase
*
* @param actionDef The action definition to update
* @param json The JSON to use to create the action definition
* @param schedule The DispositionSchedule the action definition belongs to
* @return The updated DispositionActionDefinition
*/
protected DispositionActionDefinition updateActionDefinition(DispositionActionDefinition actionDef,
@@ -132,11 +131,11 @@ public class DispositionActionDefinitionPut extends DispositionAbstractBase
json.getBoolean("eligibleOnFirstCompleteEvent") ? "or" : "and");
}
// if (json.has("evaluatorCombination"))
// {
// props.put(RecordsManagementModel.PROP_DISPOSITION_EVALUATOR_COMBINATION,
// json.getBoolean("evaluatorCombination") ? "and" : "or");
// }
if (json.has("combineDispositionStepConditions"))
{
props.put(RecordsManagementModel.PROP_COMBINE_DISPOSITION_STEP_CONDITIONS,
json.getBoolean("combineDispositionStepConditions"));
}
if (json.has("location"))
{