Class DefaultB2BPermissionService
- java.lang.Object
-
- de.hybris.platform.b2b.services.impl.DefaultB2BPermissionService
-
- All Implemented Interfaces:
B2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>
public class DefaultB2BPermissionService extends java.lang.Object implements B2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>
Default implementation of theB2BPermissionService.- Spring Bean ID:
- b2bPermissionService
-
-
Constructor Summary
Constructors Constructor Description DefaultB2BPermissionService()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected java.util.Set<B2BPermissionResultModel>checkPermissionsOfApprovers(AbstractOrderModel order, java.util.List<java.lang.Class<? extends B2BPermissionModel>> permissionsThatNeedApproval, java.util.List<B2BCustomerModel> allApprovers, java.lang.Boolean fastReturn)Checks the permissions of the approvers for an order.java.util.Set<B2BPermissionResultModel>evaluatePermissions(AbstractOrderModel order, B2BCustomerModel employee, java.util.List<java.lang.Class<? extends B2BPermissionModel>> permissionTypes)Evaluate permissions of an order to determine if a violation has occurred and that an approver needs to intervene and approve/reject an order.java.util.Set<B2BPermissionModel>findAllB2BPermissions()Deprecated.As of hybris 4.4, replaced bygetAllB2BPermissions()java.util.List<java.lang.String>findAllB2BPermissionTypes()Deprecated.As of hybris 4.4, replaced bygetAllB2BPermissionTypes()java.util.Set<B2BPermissionResultModel>findApproversForOpenPermissions(AbstractOrderModel order, B2BCustomerModel employee, java.util.Collection<B2BPermissionResultModel> openPermissions)Deprecated.As of hybris 4.4, replaced bygetApproversForOpenPermissions(AbstractOrderModel, B2BCustomerModel, Collection)B2BPermissionModelfindB2BPermissionByCode(java.lang.String code)Deprecated.As of hybris 4.4, replaced bygetB2BPermissionForCode(String)java.util.Set<B2BPermissionModel>getAllB2BPermissions()Get all b2b permissions.java.util.List<java.lang.String>getAllB2BPermissionTypes()Get all permission typesjava.util.Set<B2BPermissionResultModel>getApproversForOpenPermissions(AbstractOrderModel order, B2BCustomerModel employee, java.util.Collection<B2BPermissionResultModel> openPermissions)Get the approvers for an order's associated permissions with a status of OPEN.protected B2BApproverService<B2BCustomerModel>getB2bApproverService()protected B2BCommentService<AbstractOrderModel>getB2bCommentService()protected B2BPermissionDaogetB2bPermissionDao()B2BPermissionModelgetB2BPermissionForCode(java.lang.String code)Gets the b2b permission for the code provided.protected BaseDaogetBaseDao()java.util.Map<B2BCustomerModel,B2BPermissionResultModel>getEligableApprovers(OrderModel order)Get all approvers who have permissions to approve the order.protected java.util.Set<PermissionEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel,B2BCustomerModel>>getEvaluateStrategies()protected ModelServicegetModelService()java.util.List<B2BPermissionResultModel>getOpenPermissions(AbstractOrderModel order)Gets permissions with OPEN status.java.util.Set<B2BPermissionResultModel>getOpenPermissonsForApprovers(AbstractOrderModel order, B2BCustomerModel employee, java.util.Collection<B2BPermissionResultModel> openPermissions, java.util.List<B2BCustomerModel> allApprovers)Get open permissions for approversprotected B2BPermissionResultHelperImplgetPermissionResultHelper()protected java.util.List<java.lang.String>getPermissionTypes()protected SearchRestrictionServicegetSearchRestrictionService()protected SessionServicegetSessionService()protected UserServicegetUserService()protected voidhandleError(AbstractOrderModel order)booleanneedsApproval(AbstractOrderModel order)Checks if the order requires approval by someone other than customer who placed the order.booleanpermissionExists(java.lang.String code)Determine if a b2b permission exists based on a code.protected java.lang.StringpermissionResultListToString(B2BCustomerModel customer, java.util.Set<B2BPermissionResultModel> approverPermissions)voidsetB2bApproverService(B2BApproverService<B2BCustomerModel> b2bApproverService)voidsetB2bCommentService(B2BCommentService<AbstractOrderModel> b2bCommentService)voidsetB2bPermissionDao(B2BPermissionDao b2bPermissionDao)voidsetBaseDao(BaseDao baseDao)voidsetEvaluateStrategies(java.util.Set<PermissionEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel,B2BCustomerModel>> evaluateStrategies)voidsetModelService(ModelService modelService)voidsetPermissionResultHelper(B2BPermissionResultHelperImpl permissionResultHelper)voidsetPermissionTypes(java.util.List<java.lang.String> permissionTypes)voidsetSearchRestrictionService(SearchRestrictionService searchRestrictionService)voidsetSessionService(SessionService sessionService)voidsetUserService(UserService userService)
-
-
-
Method Detail
-
evaluatePermissions
public java.util.Set<B2BPermissionResultModel> evaluatePermissions(AbstractOrderModel order, B2BCustomerModel employee, java.util.List<java.lang.Class<? extends B2BPermissionModel>> permissionTypes)
Description copied from interface:B2BPermissionServiceEvaluate permissions of an order to determine if a violation has occurred and that an approver needs to intervene and approve/reject an order.- Specified by:
evaluatePermissionsin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
order- the order to be evaluatedemployee- the person who placed the orderpermissionTypes- the permission types that will be checked- Returns:
- the set of
B2BPermissionResultModel
-
findApproversForOpenPermissions
@Deprecated(since="4.4") public java.util.Set<B2BPermissionResultModel> findApproversForOpenPermissions(AbstractOrderModel order, B2BCustomerModel employee, java.util.Collection<B2BPermissionResultModel> openPermissions)
Deprecated.As of hybris 4.4, replaced bygetApproversForOpenPermissions(AbstractOrderModel, B2BCustomerModel, Collection)- Specified by:
findApproversForOpenPermissionsin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
order- the orderemployee- the customeropenPermissions- permissions that need approval- Returns:
- the set of
B2BPermissionResultModel
-
getApproversForOpenPermissions
public java.util.Set<B2BPermissionResultModel> getApproversForOpenPermissions(AbstractOrderModel order, B2BCustomerModel employee, java.util.Collection<B2BPermissionResultModel> openPermissions)
Description copied from interface:B2BPermissionServiceGet the approvers for an order's associated permissions with a status of OPEN. Approvers are assigned to a customer or it's unit and this evaluates/gathers the approvers for all units up the hierarchy.- Specified by:
getApproversForOpenPermissionsin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
order- the orderemployee- the customer whom placed the orderopenPermissions- the permissions to be checked for status of OPEN- Returns:
- B2BPermissionResult the set of approvers
-
getOpenPermissonsForApprovers
public java.util.Set<B2BPermissionResultModel> getOpenPermissonsForApprovers(AbstractOrderModel order, B2BCustomerModel employee, java.util.Collection<B2BPermissionResultModel> openPermissions, java.util.List<B2BCustomerModel> allApprovers)
Get open permissions for approvers- Parameters:
order- the orderemployee- the employeeopenPermissions- the permissionsallApprovers- the approvers- Returns:
- the
Setof openB2BPermissionResultModel
-
checkPermissionsOfApprovers
protected java.util.Set<B2BPermissionResultModel> checkPermissionsOfApprovers(AbstractOrderModel order, java.util.List<java.lang.Class<? extends B2BPermissionModel>> permissionsThatNeedApproval, java.util.List<B2BCustomerModel> allApprovers, java.lang.Boolean fastReturn)
Checks the permissions of the approvers for an order.- Parameters:
order- the orderpermissionsThatNeedApproval- A list of permissions types for which approval is needed.allApprovers- A list of approversfastReturn- If true return once an approver can satisfy a workflow is found- Returns:
- A set of permission results.
-
handleError
protected void handleError(AbstractOrderModel order)
-
permissionResultListToString
protected java.lang.String permissionResultListToString(B2BCustomerModel customer, java.util.Set<B2BPermissionResultModel> approverPermissions)
-
needsApproval
public boolean needsApproval(AbstractOrderModel order)
Description copied from interface:B2BPermissionServiceChecks if the order requires approval by someone other than customer who placed the order.- Specified by:
needsApprovalin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
order- A b2b order.- Returns:
- True if order needs approval.
-
getEligableApprovers
public java.util.Map<B2BCustomerModel,B2BPermissionResultModel> getEligableApprovers(OrderModel order)
Description copied from interface:B2BPermissionServiceGet all approvers who have permissions to approve the order.- Specified by:
getEligableApproversin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
order- A b2b order- Returns:
- approvers who are eligible to approve the order.
-
getOpenPermissions
public java.util.List<B2BPermissionResultModel> getOpenPermissions(AbstractOrderModel order)
Description copied from interface:B2BPermissionServiceGets permissions with OPEN status.- Specified by:
getOpenPermissionsin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
order- the order- Returns:
- the open permissions
-
getEvaluateStrategies
protected java.util.Set<PermissionEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel,B2BCustomerModel>> getEvaluateStrategies()
-
findB2BPermissionByCode
@Deprecated(since="4.4") public B2BPermissionModel findB2BPermissionByCode(java.lang.String code)
Deprecated.As of hybris 4.4, replaced bygetB2BPermissionForCode(String)- Specified by:
findB2BPermissionByCodein interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
code- the permission code- Returns:
- the permission
-
getB2BPermissionForCode
public B2BPermissionModel getB2BPermissionForCode(java.lang.String code)
Description copied from interface:B2BPermissionServiceGets the b2b permission for the code provided.- Specified by:
getB2BPermissionForCodein interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
code- the code- Returns:
- the b2b permission model
-
findAllB2BPermissions
@Deprecated(since="4.4") public java.util.Set<B2BPermissionModel> findAllB2BPermissions()
Deprecated.As of hybris 4.4, replaced bygetAllB2BPermissions()- Specified by:
findAllB2BPermissionsin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Returns:
- the set of
B2BPermissionModel
-
getAllB2BPermissions
public java.util.Set<B2BPermissionModel> getAllB2BPermissions()
Description copied from interface:B2BPermissionServiceGet all b2b permissions.- Specified by:
getAllB2BPermissionsin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Returns:
- the set of B2BPermissionModel
-
setEvaluateStrategies
public void setEvaluateStrategies(java.util.Set<PermissionEvaluateStrategy<B2BPermissionResultModel,AbstractOrderModel,B2BCustomerModel>> evaluateStrategies)
-
getModelService
protected ModelService getModelService()
-
setModelService
public void setModelService(ModelService modelService)
-
getSessionService
protected SessionService getSessionService()
-
setSessionService
public void setSessionService(SessionService sessionService)
-
setB2bApproverService
public void setB2bApproverService(B2BApproverService<B2BCustomerModel> b2bApproverService)
-
getB2bApproverService
protected B2BApproverService<B2BCustomerModel> getB2bApproverService()
-
getPermissionResultHelper
protected B2BPermissionResultHelperImpl getPermissionResultHelper()
-
setPermissionResultHelper
public void setPermissionResultHelper(B2BPermissionResultHelperImpl permissionResultHelper)
-
getUserService
protected UserService getUserService()
-
setUserService
public void setUserService(UserService userService)
-
getBaseDao
protected BaseDao getBaseDao()
-
setBaseDao
public void setBaseDao(BaseDao baseDao)
-
permissionExists
public boolean permissionExists(java.lang.String code)
Description copied from interface:B2BPermissionServiceDetermine if a b2b permission exists based on a code.- Specified by:
permissionExistsin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Parameters:
code- the code- Returns:
- True if permission exists
-
getPermissionTypes
protected java.util.List<java.lang.String> getPermissionTypes()
-
setPermissionTypes
public void setPermissionTypes(java.util.List<java.lang.String> permissionTypes)
-
findAllB2BPermissionTypes
@Deprecated(since="4.4") public java.util.List<java.lang.String> findAllB2BPermissionTypes()
Deprecated.As of hybris 4.4, replaced bygetAllB2BPermissionTypes()- Specified by:
findAllB2BPermissionTypesin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Returns:
- the
Listof permission types
-
getAllB2BPermissionTypes
public java.util.List<java.lang.String> getAllB2BPermissionTypes()
Description copied from interface:B2BPermissionServiceGet all permission types- Specified by:
getAllB2BPermissionTypesin interfaceB2BPermissionService<B2BCustomerModel,B2BPermissionResultModel>- Returns:
- permission types list
-
getSearchRestrictionService
protected SearchRestrictionService getSearchRestrictionService()
-
setSearchRestrictionService
public void setSearchRestrictionService(SearchRestrictionService searchRestrictionService)
-
getB2bCommentService
protected B2BCommentService<AbstractOrderModel> getB2bCommentService()
-
setB2bCommentService
public void setB2bCommentService(B2BCommentService<AbstractOrderModel> b2bCommentService)
-
getB2bPermissionDao
protected B2BPermissionDao getB2bPermissionDao()
-
setB2bPermissionDao
public void setB2bPermissionDao(B2BPermissionDao b2bPermissionDao)
-
-