Class ReturnAuthorizationEndpoint
- java.lang.Object
-
- com.broadleafcommerce.order.web.endpoint.ReturnAuthorizationEndpoint
-
@FrameworkRestController @DataRouteByExample(com.broadleafcommerce.order.client.domain.ReturnAuthorization.class) public class ReturnAuthorizationEndpoint extends Object
Endpoint for management ofReturnAuthorizations
.
-
-
Constructor Summary
Constructors Constructor Description ReturnAuthorizationEndpoint(ReturnAuthorizationService<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationService, OrderService<com.broadleafcommerce.order.client.domain.Order> orderService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<com.broadleafcommerce.order.client.domain.ReturnAuthorization>
bulkReplaceOrCreateReturnAuthorizations(String orderId, List<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorization, com.broadleafcommerce.data.tracking.core.context.ContextInfo context)
com.broadleafcommerce.order.client.domain.ReturnAuthorization
createReturnAuthorization(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String orderId, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
void
deleteReturnAuthorization(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String orderId, String returnAuthorizationId)
protected void
ensureOrderExists(@NonNull String orderId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Ensures that theOrder
exists before we manageReturnAuthorizations
in that order.protected void
ensureOrdersExists(@NonNull Collection<String> orderIds, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Ensures that theOrders
exists before we manageReturnAuthorizations
in those orders.protected com.broadleafcommerce.order.client.domain.ReturnAuthorization
ensureReturnBelongsToOrderAndReturn(@NonNull String orderId, @NonNull String returnAuthorizationId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Ensures that theReturnAuthorization
is associated with the specified order ID.protected OrderService<com.broadleafcommerce.order.client.domain.Order>
getOrderService()
protected ReturnAuthorizationService<com.broadleafcommerce.order.client.domain.ReturnAuthorization>
getReturnAuthorizationService()
org.springframework.data.domain.Page<com.broadleafcommerce.order.client.domain.ReturnAuthorization>
readAllReturnAuthorizations(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String orderId, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page)
org.springframework.data.domain.Page<com.broadleafcommerce.order.client.domain.ReturnAuthorization>
readAllReturnAuthorizationsForOrders(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, Set<String> orderIds, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page)
com.broadleafcommerce.order.client.domain.ReturnAuthorization
readReturnAuthorizationById(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String orderId, String returnAuthorizationId)
com.broadleafcommerce.order.client.domain.ReturnAuthorization
replaceReturnAuthorization(String orderId, String returnAuthorizationId, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, com.broadleafcommerce.data.tracking.core.context.ContextInfo context)
-
-
-
Field Detail
-
BASE_URI
public static final String BASE_URI
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ReturnAuthorizationEndpoint
public ReturnAuthorizationEndpoint(ReturnAuthorizationService<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationService, OrderService<com.broadleafcommerce.order.client.domain.Order> orderService)
-
-
Method Detail
-
readAllReturnAuthorizations
@Policy(permissionRoots="RETURN_AUTHORIZATION") @FrameworkGetMapping("/orders/{orderId}/returns") public org.springframework.data.domain.Page<com.broadleafcommerce.order.client.domain.ReturnAuthorization> readAllReturnAuthorizations(@ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("orderId") String orderId, cz.jirutka.rsql.parser.ast.Node filters, @PageableDefault(size=50) org.springframework.data.domain.Pageable page)
-
readAllReturnAuthorizationsForOrders
@Policy(permissionRoots="RETURN_AUTHORIZATION") @FrameworkGetMapping("/return-authorizations") public org.springframework.data.domain.Page<com.broadleafcommerce.order.client.domain.ReturnAuthorization> readAllReturnAuthorizationsForOrders(@ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @RequestParam("orderIds") Set<String> orderIds, cz.jirutka.rsql.parser.ast.Node filters, @PageableDefault(size=50) org.springframework.data.domain.Pageable page)
-
readReturnAuthorizationById
@Policy(permissionRoots="RETURN_AUTHORIZATION") @FrameworkGetMapping("/orders/{orderId}/returns/{id}") public com.broadleafcommerce.order.client.domain.ReturnAuthorization readReturnAuthorizationById(@ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("orderId") String orderId, @PathVariable("id") String returnAuthorizationId)
-
createReturnAuthorization
@Policy(permissionRoots="RETURN_AUTHORIZATION") @FrameworkPostMapping(path="/orders/{orderId}/returns", consumes="application/json") public com.broadleafcommerce.order.client.domain.ReturnAuthorization createReturnAuthorization(@ContextOperation(CREATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("orderId") String orderId, @RequestBody com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
-
replaceReturnAuthorization
@Policy(permissionRoots="RETURN_AUTHORIZATION") @FrameworkPutMapping("/orders/{orderId}/returns/{id}") public com.broadleafcommerce.order.client.domain.ReturnAuthorization replaceReturnAuthorization(@PathVariable("orderId") String orderId, @PathVariable("id") String returnAuthorizationId, @RequestBody com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context)
-
deleteReturnAuthorization
@Policy(permissionRoots="RETURN_AUTHORIZATION") @FrameworkDeleteMapping("/orders/{orderId}/returns/{id}") public void deleteReturnAuthorization(@ContextOperation(DELETE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("orderId") String orderId, @PathVariable("id") String returnAuthorizationId)
-
bulkReplaceOrCreateReturnAuthorizations
@Policy(permissionRoots="RETURN_AUTHORIZATION") @FrameworkPostMapping("/orders/{orderId}/returns/bulk-replace-create") public List<com.broadleafcommerce.order.client.domain.ReturnAuthorization> bulkReplaceOrCreateReturnAuthorizations(@PathVariable("orderId") String orderId, @RequestBody List<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorization, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context)
-
ensureOrderExists
protected void ensureOrderExists(@NonNull @NonNull String orderId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Ensures that theOrder
exists before we manageReturnAuthorizations
in that order. Specifically, this is for situations where the order id is in the path.- Parameters:
orderId
- ID of the order to check for existencecontextInfo
- context information around sandbox and multitenant state
-
ensureOrdersExists
protected void ensureOrdersExists(@NonNull @NonNull Collection<String> orderIds, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Ensures that theOrders
exists before we manageReturnAuthorizations
in those orders. This is for situations where 1 or more order ids are provided as request parameters.- Parameters:
orderIds
- IDs of the order to check for existencecontextInfo
- context information around sandbox and multitenant state
-
ensureReturnBelongsToOrderAndReturn
protected com.broadleafcommerce.order.client.domain.ReturnAuthorization ensureReturnBelongsToOrderAndReturn(@NonNull @NonNull String orderId, @NonNull @NonNull String returnAuthorizationId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Ensures that theReturnAuthorization
is associated with the specified order ID. Also retrieves the return authorization.- Parameters:
orderId
- ID of the order to check for associationreturnAuthorizationId
- ID of the return authorization to check for associationcontextInfo
- context information around sandbox and multitenant state- Returns:
- the found return authorization
- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException
- if the return authorization is not associated to the order
-
getReturnAuthorizationService
protected ReturnAuthorizationService<com.broadleafcommerce.order.client.domain.ReturnAuthorization> getReturnAuthorizationService()
-
getOrderService
protected OrderService<com.broadleafcommerce.order.client.domain.Order> getOrderService()
-
-