using LCU.Library.Internal.IncentiveApiModels.Entities; using LCU.API.Internal.Operations.IncentiveApi.Models; using LCU.API.Internal.Operations.IncentiveApi.Models.GoalDispersal; namespace LCU.API.Internal.Operations.IncentiveApi.Services.DispersalStrategy; public interface IDispersalStrategyService { public GoalDispersalReceipt ExtrapolateFromExistingGoals(ExtrapolationGoalDispersalData data); public GoalDispersalReceipt DefaultWeightedDispersal(DefaultWeightedGoalDispersalData data); public int CalculateDefaultWeightedValue(Role userRole, int goalValue, List allRolesInDept); public GoalDispersalReceipt ExtrapolateSingleDepartmentProduct(DepartmentGoalExtrapolationRequest request, PersonnelGoals departmentPersonnelGoals); public GoalDispersalReceipt CustomWeightedDispersal(CustomWeightedDispersalRequest request, List personnel, int departmentGoal); }