Class DefaultB2BBudgetExceededEvaluationStrategy
java.lang.Object
de.hybris.platform.b2b.strategies.impl.AbstractEvaluationStrategy<P>
de.hybris.platform.b2b.strategies.impl.AbstractPermissionEvaluationStrategy<B2BPermissionModel>
de.hybris.platform.b2b.strategies.impl.DefaultB2BBudgetExceededEvaluationStrategy
- All Implemented Interfaces:
EvaluateStrategy<B2BPermissionResultModel,,AbstractOrderModel, B2BCustomerModel> PermissionEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel, B2BCustomerModel>
public class DefaultB2BBudgetExceededEvaluationStrategy
extends AbstractPermissionEvaluationStrategy<B2BPermissionModel>
implements PermissionEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel,B2BCustomerModel>
A strategy for evaluating
B2BBudgetExceededPermissionModel-
Field Summary
Fields inherited from class de.hybris.platform.b2b.strategies.impl.AbstractPermissionEvaluationStrategy
NOLIMIT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanCheck if the order has exceeded the active budget.evaluate(AbstractOrderModel order, B2BCustomerModel employee) 1) Check if order would exceed budget of cost center 1.1) If it doesn't, fine, set permissionresult for this type to approved and exit 1.2) If it does, continue with 2 2) Check if user has BudgetExceeded permission 2.1) If he doesn't, continue with 3 2.2) If he does, fine, set permission result for this type to approved and exit 3) Set PermissionResult to Open and later processing has to find approverprotected B2BBudgetService<B2BBudgetModel,B2BCustomerModel> protected B2BCostCenterServicegetPermissionToEvaluate(Set<B2BPermissionModel> permissions, Class<? extends B2BPermissionModel> type) Class<? extends B2BPermissionModel>Gets the permission type.voidsetB2BBudgetService(B2BBudgetService<B2BBudgetModel, B2BCustomerModel> b2BBudgetService) voidsetB2bCostCenterService(B2BCostCenterService b2bCostCenterService) Methods inherited from class de.hybris.platform.b2b.strategies.impl.AbstractPermissionEvaluationStrategy
getActivePermissions, getOrderEntryTotal, getOrderTotal, getOrderTotals, getPermissions, getTotalOfEntriesWithCostCenter, getTotalTax, getTypesToEvaluate, toMoneyMethods inherited from class de.hybris.platform.b2b.strategies.impl.AbstractEvaluationStrategy
getModelService, getTypeService, setModelService, setTypeService
-
Constructor Details
-
DefaultB2BBudgetExceededEvaluationStrategy
public DefaultB2BBudgetExceededEvaluationStrategy()
-
-
Method Details
-
evaluate
1) Check if order would exceed budget of cost center 1.1) If it doesn't, fine, set permissionresult for this type to approved and exit 1.2) If it does, continue with 2 2) Check if user has BudgetExceeded permission 2.1) If he doesn't, continue with 3 2.2) If he does, fine, set permission result for this type to approved and exit 3) Set PermissionResult to Open and later processing has to find approver- Specified by:
evaluatein interfaceEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel, B2BCustomerModel> - Parameters:
order- the AbstractOrderModelemployee- the B2BCustomerModel- Returns:
- the B2BPermissionResultModel
-
checkBudgetExceeded
Check if the order has exceeded the active budget.- Parameters:
order- A b2b order- Returns:
- true, if successful
-
getPermissionToEvaluate
public B2BBudgetExceededPermissionModel getPermissionToEvaluate(Set<B2BPermissionModel> permissions, Class<? extends B2BPermissionModel> type) -
getPermissionType
Description copied from interface:PermissionEvaluateStrategyGets the permission type.- Specified by:
getPermissionTypein interfacePermissionEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel, B2BCustomerModel> - Specified by:
getPermissionTypein classAbstractPermissionEvaluationStrategy<B2BPermissionModel>- Returns:
- the permission type
-
setB2bCostCenterService
-
setB2BBudgetService
-
getB2bCostCenterService
-
getB2BBudgetService
-