Class BTImmediateSchedulingTeamExclusionByLastSync
java.lang.Object
overit.geocall.bl.BusinessTask<ImmediateSchedulingTeamExclusionEvent>
overit.geocallapp.wfm.orchestrator.scheduling.bl.immediatescheduling.teamexclusion.task.BTImmediateSchedulingTeamExclusion
overit.geocallapp.wfm.orchestrator.scheduling.bl.immediatescheduling.teamexclusion.task.BTImmediateSchedulingTeamExclusionByLastSync
- All Implemented Interfaces:
Serializable,Tool
@Event(value=ImmediateSchedulingTeamExclusionEvent.class,
priority=30)
public class BTImmediateSchedulingTeamExclusionByLastSync
extends BTImmediateSchedulingTeamExclusion
Business Task for filtering teams based on resource last synchronization.
Excludes teams whose foreman has not synchronized within the configured time interval
(no feedback exclusion time interval).
The time interval is retrieved from:
1. Scheduling model (if configured)
2. Operation center (if not in model)
3. System properties (if not in operation center)
- Since:
- 22.0
- See Also:
-
Field Summary
Fields inherited from class overit.geocallapp.wfm.orchestrator.scheduling.bl.immediatescheduling.teamexclusion.task.BTImmediateSchedulingTeamExclusion
integrationService -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidfilter(ImmediateSchedulingTeamExclusionOutput output, ImmediateSchedulingTeamExclusionInput input, PoolKit poolKit) Applies the specific exclusion filter logic.protected booleanhasRecentSync(BOResource resource, Date minLastSync) Checks if the resource has a recent synchronization.Methods inherited from class overit.geocallapp.wfm.orchestrator.scheduling.bl.immediatescheduling.teamexclusion.task.BTImmediateSchedulingTeamExclusion
body, createInitialTeamCompatibilityMatrix, getIntegrationService, getOutput, recordResourceExclusions, removeTeamsWithoutWorkOrdersMethods inherited from class overit.geocall.bl.BusinessTask
start, start, startAlone, startInBackground
-
Constructor Details
-
BTImmediateSchedulingTeamExclusionByLastSync
public BTImmediateSchedulingTeamExclusionByLastSync()
-
-
Method Details
-
filter
protected void filter(ImmediateSchedulingTeamExclusionOutput output, ImmediateSchedulingTeamExclusionInput input, PoolKit poolKit) throws DAValidateException, DAException Description copied from class:BTImmediateSchedulingTeamExclusionApplies the specific exclusion filter logic. Implementations should: 1. Remove teams from output.getForemanByAliveTeam() that should be excluded 2. Remove incompatible work orders from output.getTeamWorkOrderCompatibility() 3. Log the excluded resources with appropriate messages Note: Teams are automatically removed byBTImmediateSchedulingTeamExclusion.removeTeamsWithoutWorkOrders(overit.geocallapp.wfm.scheduling.bl.immediatescheduling.teamexclusion.event.ImmediateSchedulingTeamExclusionOutput)if they have no compatible work orders.- Specified by:
filterin classBTImmediateSchedulingTeamExclusion- Parameters:
output- the current output from previous filters (modify foremanByAliveTeam and teamWorkOrderCompatibility)input- the event input containing scheduling model and reference datepoolKit- the pool kit- Throws:
DAValidateException- if a validation error occursDAException- if a data access error occurs
-
hasRecentSync
Checks if the resource has a recent synchronization.- Parameters:
resource- the resource to checkminLastSync- the minimum acceptable last sync date- Returns:
- true if the resource has synchronized recently, false otherwise
-