Class BTCapacityPlanningResultDetailCalculateCoverage
java.lang.Object
overit.geocall.bl.BusinessTask<CapacityPlanningResultDetailCalculateCoverageEvent>
overit.geocallapp.utilities.core.bl.common.validexecution.ValidExecutionBusinessTask<CapacityPlanningResultDetailCalculateCoverageEvent>
overit.geocallapp.utilities.core.bl.common.validexecution.ValidPermissionBusinessTask<CapacityPlanningResultDetailCalculateCoverageEvent>
overit.geocallapp.wfm.forecastcapacity.bl.capacityplanning.result.detail.task.BTCapacityPlanningResultDetailCalculateCoverage
- All Implemented Interfaces:
Serializable,Tool,ValidExecution
@Event(CapacityPlanningResultDetailCalculateCoverageEvent.class)
public class BTCapacityPlanningResultDetailCalculateCoverage
extends ValidPermissionBusinessTask<CapacityPlanningResultDetailCalculateCoverageEvent>
This Business task calculates the coverage of an scenario, the result are stored by
When the
BOCapacityPlanningScenario. When the
CapacityPlanningResultDetailCalculateCoverageEvent is launched the BT notices the
call and calculates the coverage scenario basing on the event's input. - Since:
- 15.0
- See Also:
- GCApi:
- task
-
Field Summary
Fields inherited from class overit.geocallapp.utilities.core.bl.common.validexecution.ValidPermissionBusinessTask
LOG -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidThis method adds the details of the scenario in the current transactioncalculateActivitiesAssignment(List<CapacityPlanningAssignment> solutionAssignmentList, List<BOForecastActivityDetail> originalActivities) protected doublecalculateAssignment(Map.Entry<Date, List<CapacityPlanningAssignment>> dayAssignment, long activityId) protected DoublecalculateResourceSaturation(Map.Entry<Long, List<BOForecastResourceDetail>> resourceDetailGroup, List<CapacityPlanningAssignment> solutionAssignmentList) calculateResourcesSaturation(List<CapacityPlanningAssignment> solutionAssignmentList, List<BOForecastResourceDetail> resourceDetailList) protected BOCapacityPlanningResultDetailcreateResourlDetail(BOCapacityPlanningScenario scenario, CapacityPlanningAssignment assignment) protected voidexecute(CapacityPlanningResultDetailCalculateCoverageEvent event, PoolKit poolKit) Executes the actual business logic after validation has passed.protected BOCapacityPlanningScenariofindScenario(Long scenarioId, PoolKit poolKit) protected doublegetActivityAssignment(Map.Entry<Long, List<BOForecastActivityDetail>> activityTimeframeGroup, List<CapacityPlanningAssignment> solutionAssignmentList) protected LongbooleanDetermines whether the current state is valid for execution.protected List<BOForecastActivitySkill> loadActivitiesSkills(Long forecastId, PoolKit poolKit) protected List<BOForecastActivity> loadForecastActivities(Long forecastId, PoolKit poolKit) protected List<BOForecastActivityDetail> loadForecastActivitiesDetails(Long forecastId, PoolKit poolKit) protected List<BOForecastResource> loadForecastResources(Long forecastId, PoolKit poolKit) protected List<BOForecastResourceDetail> loadForecastResourcesDetails(Long forecastId, PoolKit poolKit) protected List<BOForecastResourceGroupingConstraint> loadResourcesConstraints(Set<Long> resourceList, PoolKit poolKit) protected List<BOResourceForecastSkill> loadResourcesSkills(Long forecastId, PoolKit poolKit) protected voidsaveSaturationAndAssignmentValues(BOCapacityPlanningScenario scenario, List<CapacityPlanningAssignment> solutionAssignmentList, List<BOCapacityPlanningResultDetail> details, PoolKit poolKit) protected BOCapacityPlanningResulttotalResultCalculate(List<BOCapacityPlanningResultDetail> details, PoolKit poolKit, List<BOForecastActivityDetail> activities, List<BOForecastResourceDetail> resources, BOCapacityPlanningResult result) protected voidupdateScenario(BOCapacityPlanningScenario scenario) This method updates the input objectBOCapacityPlanningScenariowith a new connection/transactionMethods inherited from class overit.geocallapp.utilities.core.bl.common.validexecution.ValidPermissionBusinessTask
checkValidExecution, getException, throwExceptionIfInvalidMethods inherited from class overit.geocallapp.utilities.core.bl.common.validexecution.ValidExecutionBusinessTask
body, getEventMethods inherited from class overit.geocall.bl.BusinessTask
start, start, startAlone, startInBackground
-
Constructor Details
-
BTCapacityPlanningResultDetailCalculateCoverage
public BTCapacityPlanningResultDetailCalculateCoverage()
-
-
Method Details
-
isValidExecution
public boolean isValidExecution()Description copied from interface:ValidExecutionDetermines whether the current state is valid for execution.- Returns:
- true if execution is valid, false otherwise
-
execute
protected void execute(CapacityPlanningResultDetailCalculateCoverageEvent event, PoolKit poolKit) throws DAException, DAValidateException Description copied from class:ValidExecutionBusinessTaskExecutes the actual business logic after validation has passed.- Specified by:
executein classValidExecutionBusinessTask<CapacityPlanningResultDetailCalculateCoverageEvent>- Parameters:
event- the input event to processpoolKit- thePoolKit- Throws:
DAException- if a data access error occurs during executionDAValidateException- if validation fails during execution
-
createResourlDetail
protected BOCapacityPlanningResultDetail createResourlDetail(BOCapacityPlanningScenario scenario, CapacityPlanningAssignment assignment) -
saveSaturationAndAssignmentValues
protected void saveSaturationAndAssignmentValues(BOCapacityPlanningScenario scenario, List<CapacityPlanningAssignment> solutionAssignmentList, List<BOCapacityPlanningResultDetail> details, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
totalResultCalculate
protected BOCapacityPlanningResult totalResultCalculate(List<BOCapacityPlanningResultDetail> details, PoolKit poolKit, List<BOForecastActivityDetail> activities, List<BOForecastResourceDetail> resources, BOCapacityPlanningResult result) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
calculateResourcesSaturation
protected Map<String,Long> calculateResourcesSaturation(List<CapacityPlanningAssignment> solutionAssignmentList, List<BOForecastResourceDetail> resourceDetailList) -
calculateResourceSaturation
protected Double calculateResourceSaturation(Map.Entry<Long, List<BOForecastResourceDetail>> resourceDetailGroup, List<CapacityPlanningAssignment> solutionAssignmentList) -
calculateActivitiesAssignment
protected Map<String,Long> calculateActivitiesAssignment(List<CapacityPlanningAssignment> solutionAssignmentList, List<BOForecastActivityDetail> originalActivities) -
getActivityAssignment
protected double getActivityAssignment(Map.Entry<Long, List<BOForecastActivityDetail>> activityTimeframeGroup, List<CapacityPlanningAssignment> solutionAssignmentList) -
calculateAssignment
protected double calculateAssignment(Map.Entry<Date, List<CapacityPlanningAssignment>> dayAssignment, long activityId) -
findScenario
protected BOCapacityPlanningScenario findScenario(Long scenarioId, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
loadForecastActivities
protected List<BOForecastActivity> loadForecastActivities(Long forecastId, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
loadForecastActivitiesDetails
protected List<BOForecastActivityDetail> loadForecastActivitiesDetails(Long forecastId, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
loadForecastResources
protected List<BOForecastResource> loadForecastResources(Long forecastId, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
loadForecastResourcesDetails
protected List<BOForecastResourceDetail> loadForecastResourcesDetails(Long forecastId, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
loadActivitiesSkills
protected List<BOForecastActivitySkill> loadActivitiesSkills(Long forecastId, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
loadResourcesSkills
protected List<BOResourceForecastSkill> loadResourcesSkills(Long forecastId, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
loadResourcesConstraints
protected List<BOForecastResourceGroupingConstraint> loadResourcesConstraints(Set<Long> resourceList, PoolKit poolKit) throws DAValidateException, DAException - Throws:
DAValidateExceptionDAException
-
addCapacityPlanningResultDetail
protected void addCapacityPlanningResultDetail(List<BOCapacityPlanningResultDetail> details, PoolKit pk) throws DAException, DAValidateException This method adds the details of the scenario in the current transaction- Parameters:
details-pk-- Throws:
DAExceptionDAValidateException
-
updateScenario
protected void updateScenario(BOCapacityPlanningScenario scenario) throws DAValidateException, DAException This method updates the input objectBOCapacityPlanningScenariowith a new connection/transaction- Parameters:
scenario-- Throws:
DAValidateExceptionDAException
-
getLong
-