Class DefaultConfirmReturnRequestValidator
- java.lang.Object
-
- com.broadleafcommerce.orderoperation.service.validator.DefaultConfirmReturnRequestValidator
-
- All Implemented Interfaces:
ConfirmReturnRequestValidator
public class DefaultConfirmReturnRequestValidator extends Object implements ConfirmReturnRequestValidator
-
-
Field Summary
Fields Modifier and Type Field Description protected static String
INSUFFICIENT_QUANTITY_CODE
protected static String
INSUFFICIENT_QUANTITY_MESSAGE
protected static String
INVALID_OVERRIDE_TOTAL_TO_REFUND_CODE
protected static String
INVALID_OVERRIDE_TOTAL_TO_REFUND_MESSAGE
protected static String
INVALID_QUANTITY_CODE
protected static String
INVALID_QUANTITY_MESSAGE
protected static String
ITEM_QUANTITY_FIELD
protected static String
ITEMS_FIELD
protected static String
MISSING_ITEM_CODE
protected static String
MISSING_ITEM_MESSAGE
protected static String
ORDER_FULFILLMENT_ITEM_ID_FIELD
protected static String
OVERRIDE_TOTAL_TO_REFUND_FIELD
protected static String
RETURN_AUTH_ID_FIELD
protected static String
RETURN_CANCELLED_CODE
protected static String
RETURN_CANCELLED_MESSAGE
protected static String
ZERO_QUANTITY_CODE
protected static String
ZERO_QUANTITY_MESSAGE
-
Constructor Summary
Constructors Constructor Description DefaultConfirmReturnRequestValidator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
checkAndValidateItemExistsInReturn(ConfirmReturnItemRequest confirmReturnItemRequest, int itemIndex, Map<String,Integer> returnItemQuantities, org.springframework.validation.Errors errors)
protected boolean
checkAndValidateQuantityValueValid(ConfirmReturnItemRequest confirmReturnItemRequest, int itemIndex, org.springframework.validation.Errors errors)
protected javax.money.MonetaryAmount
getTotalAvailableForRefund(com.broadleafcommerce.order.client.domain.ReturnAuthorizationItem returnItem, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
Gets the total available to refund for the givenReturnAuthorizationItem
.protected String
itemQuantityFieldForIndex(int index)
protected String
orderFulfillmentItemIdFieldForIndex(int index)
protected String
overrideTotalToRefundFieldForIndex(int index)
protected static String
prefixWithEntityValidationMessageKey(String errorCode)
protected void
subtractExistingConfirmationQuantities(Map<String,Integer> returnItemQuantities, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
protected void
subtractExistingConfirmationQuantity(Map<String,Integer> fulfillmentItemQuantities, com.broadleafcommerce.order.client.domain.ReturnConfirmation confirmation, com.broadleafcommerce.order.client.domain.ReturnAuthorizationItem returnItem)
void
validate(ConfirmReturnRequest confirmReturnRequest, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
Determines that the items and quantities to confirm are valid for theReturnAuthorization
.protected void
validateNotAllZeroQuantities(ConfirmReturnRequest confirmReturnRequest, org.springframework.validation.Errors errors)
protected void
validateNotCancelled(com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
protected void
validateOverrideTotalToRefund(ConfirmReturnRequest confirmReturnRequest, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
Validates theConfirmReturnItemRequest.getOverrideTotalToRefund()
to ensure that it's not greater than the amount that is available for refund.protected void
validateQuantities(ConfirmReturnRequest confirmReturnRequest, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
protected void
validateSufficientQuantityInReturn(ConfirmReturnItemRequest confirmReturnItemRequest, int itemIndex, Map<String,Integer> returnItemQuantities, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
-
-
-
Field Detail
-
RETURN_AUTH_ID_FIELD
protected static final String RETURN_AUTH_ID_FIELD
- See Also:
- Constant Field Values
-
ITEMS_FIELD
protected static final String ITEMS_FIELD
- See Also:
- Constant Field Values
-
ORDER_FULFILLMENT_ITEM_ID_FIELD
protected static final String ORDER_FULFILLMENT_ITEM_ID_FIELD
- See Also:
- Constant Field Values
-
ITEM_QUANTITY_FIELD
protected static final String ITEM_QUANTITY_FIELD
- See Also:
- Constant Field Values
-
OVERRIDE_TOTAL_TO_REFUND_FIELD
protected static final String OVERRIDE_TOTAL_TO_REFUND_FIELD
- See Also:
- Constant Field Values
-
RETURN_CANCELLED_CODE
protected static final String RETURN_CANCELLED_CODE
-
RETURN_CANCELLED_MESSAGE
protected static final String RETURN_CANCELLED_MESSAGE
- See Also:
- Constant Field Values
-
ZERO_QUANTITY_CODE
protected static final String ZERO_QUANTITY_CODE
-
ZERO_QUANTITY_MESSAGE
protected static final String ZERO_QUANTITY_MESSAGE
- See Also:
- Constant Field Values
-
INVALID_QUANTITY_CODE
protected static final String INVALID_QUANTITY_CODE
-
INVALID_QUANTITY_MESSAGE
protected static final String INVALID_QUANTITY_MESSAGE
- See Also:
- Constant Field Values
-
INVALID_OVERRIDE_TOTAL_TO_REFUND_CODE
protected static final String INVALID_OVERRIDE_TOTAL_TO_REFUND_CODE
-
INVALID_OVERRIDE_TOTAL_TO_REFUND_MESSAGE
protected static final String INVALID_OVERRIDE_TOTAL_TO_REFUND_MESSAGE
- See Also:
- Constant Field Values
-
MISSING_ITEM_CODE
protected static final String MISSING_ITEM_CODE
-
MISSING_ITEM_MESSAGE
protected static final String MISSING_ITEM_MESSAGE
- See Also:
- Constant Field Values
-
INSUFFICIENT_QUANTITY_CODE
protected static final String INSUFFICIENT_QUANTITY_CODE
-
INSUFFICIENT_QUANTITY_MESSAGE
protected static final String INSUFFICIENT_QUANTITY_MESSAGE
- See Also:
- Constant Field Values
-
-
Method Detail
-
validate
public void validate(ConfirmReturnRequest confirmReturnRequest, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
Description copied from interface:ConfirmReturnRequestValidator
Determines that the items and quantities to confirm are valid for theReturnAuthorization
.- Specified by:
validate
in interfaceConfirmReturnRequestValidator
- Parameters:
confirmReturnRequest
- the request containing items to confirm as returnedreturnAuthorization
- the return with items to be confirmed
-
validateNotCancelled
protected void validateNotCancelled(com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
-
validateQuantities
protected void validateQuantities(ConfirmReturnRequest confirmReturnRequest, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
-
validateNotAllZeroQuantities
protected void validateNotAllZeroQuantities(ConfirmReturnRequest confirmReturnRequest, org.springframework.validation.Errors errors)
-
checkAndValidateQuantityValueValid
protected boolean checkAndValidateQuantityValueValid(ConfirmReturnItemRequest confirmReturnItemRequest, int itemIndex, org.springframework.validation.Errors errors)
-
checkAndValidateItemExistsInReturn
protected boolean checkAndValidateItemExistsInReturn(ConfirmReturnItemRequest confirmReturnItemRequest, int itemIndex, Map<String,Integer> returnItemQuantities, org.springframework.validation.Errors errors)
-
validateSufficientQuantityInReturn
protected void validateSufficientQuantityInReturn(ConfirmReturnItemRequest confirmReturnItemRequest, int itemIndex, Map<String,Integer> returnItemQuantities, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
-
validateOverrideTotalToRefund
protected void validateOverrideTotalToRefund(ConfirmReturnRequest confirmReturnRequest, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization, org.springframework.validation.Errors errors)
Validates theConfirmReturnItemRequest.getOverrideTotalToRefund()
to ensure that it's not greater than the amount that is available for refund.- Parameters:
confirmReturnRequest
- theConfirmReturnRequest
to validatereturnAuthorization
- theReturnAuthorization
theConfirmReturnRequest
is forerrors
- an error container to place validation errors in
-
getTotalAvailableForRefund
protected javax.money.MonetaryAmount getTotalAvailableForRefund(com.broadleafcommerce.order.client.domain.ReturnAuthorizationItem returnItem, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
Gets the total available to refund for the givenReturnAuthorizationItem
.- Parameters:
returnItem
- theReturnAuthorizationItem
to get the total available to refund forreturnAuthorization
- theReturnAuthorization
the givenReturnAuthorizationItem
belongs to- Returns:
- the total available to refund for the given
ReturnAuthorizationItem
-
subtractExistingConfirmationQuantities
protected void subtractExistingConfirmationQuantities(Map<String,Integer> returnItemQuantities, com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization)
-
subtractExistingConfirmationQuantity
protected void subtractExistingConfirmationQuantity(Map<String,Integer> fulfillmentItemQuantities, com.broadleafcommerce.order.client.domain.ReturnConfirmation confirmation, com.broadleafcommerce.order.client.domain.ReturnAuthorizationItem returnItem)
-
orderFulfillmentItemIdFieldForIndex
protected String orderFulfillmentItemIdFieldForIndex(int index)
-
itemQuantityFieldForIndex
protected String itemQuantityFieldForIndex(int index)
-
overrideTotalToRefundFieldForIndex
protected String overrideTotalToRefundFieldForIndex(int index)
-
-