@Service(value="blOfferService") public class OfferServiceImpl extends Object implements OfferService
| Modifier and Type | Field and Description |
|---|---|
protected CustomerOfferDao |
customerOfferDao |
protected OfferServiceExtensionListener |
extensionManager |
protected FulfillmentGroupOfferProcessor |
fulfillmentGroupOfferProcessor |
protected ItemOfferProcessor |
itemOfferProcessor |
protected OfferAuditDao |
offerAuditDao |
protected OfferCodeDao |
offerCodeDao |
protected OfferDao |
offerDao |
protected OrderOfferProcessor |
orderOfferProcessor |
protected OrderService |
orderService |
protected PromotableItemFactory |
promotableItemFactory |
| Constructor and Description |
|---|
OfferServiceImpl() |
| Modifier and Type | Method and Description |
|---|---|
void |
applyFulfillmentGroupOffersToOrder(List<Offer> offers,
Order order) |
void |
applyOffersToOrder(List<Offer> offers,
Order order)
Apply offers to order.
|
List<Offer> |
buildOfferListForOrder(Order order)
Creates a list of offers that applies to this order.
|
List<Offer> |
findAllOffers()
Returns all offers
|
OfferCode |
findOfferCodeById(Long id)
Lookup an OfferCode by its id
|
CustomerOfferDao |
getCustomerOfferDao() |
FulfillmentGroupOfferProcessor |
getFulfillmentGroupOfferProcessor() |
ItemOfferProcessor |
getItemOfferProcessor() |
OfferCodeDao |
getOfferCodeDao() |
OfferDao |
getOfferDao() |
OrderOfferProcessor |
getOrderOfferProcessor() |
OrderService |
getOrderService() |
PromotableItemFactory |
getPromotableItemFactory() |
protected List<Offer> |
lookupAutomaticDeliveryOffers()
Private method used to retrieve all offers with DeliveryType of AUTOMATIC
|
Offer |
lookupOfferByCode(String code)
Creates a list of offers that applies to this order.
|
OfferCode |
lookupOfferCodeByCode(String code)
Lookup OfferCode by code.
|
protected List<CustomerOffer> |
lookupOfferCustomerByCustomer(Customer customer)
Private method used to retrieve all offers assigned to this customer.
|
protected List<OfferCode> |
removeOutOfDateOfferCodes(List<OfferCode> offerCodes)
Removes all out of date offerCodes based on the offerCode and its offer's start and end
date.
|
Offer |
save(Offer offer)
Save a new offer or updates an existing offer
|
OfferCode |
saveOfferCode(OfferCode offerCode)
Saves a new Offer or updates an existing Offer that belongs to an OfferCode, then saves or updates the OfferCode
|
void |
setCustomerOfferDao(CustomerOfferDao customerOfferDao) |
void |
setFulfillmentGroupOfferProcessor(FulfillmentGroupOfferProcessor fulfillmentGroupOfferProcessor) |
void |
setItemOfferProcessor(ItemOfferProcessor itemOfferProcessor) |
void |
setOfferCodeDao(OfferCodeDao offerCodeDao) |
void |
setOfferDao(OfferDao offerDao) |
void |
setOrderOfferProcessor(OrderOfferProcessor orderOfferProcessor) |
void |
setOrderService(OrderService orderService) |
void |
setPromotableItemFactory(PromotableItemFactory promotableItemFactory) |
boolean |
verifyMaxCustomerUsageThreshold(Customer customer,
Offer offer)
Validates that the passed in customer has not exceeded the max uses for the
passed in offer.
|
protected CustomerOfferDao customerOfferDao
protected OfferCodeDao offerCodeDao
protected OfferAuditDao offerAuditDao
protected OfferDao offerDao
protected OrderOfferProcessor orderOfferProcessor
protected ItemOfferProcessor itemOfferProcessor
protected FulfillmentGroupOfferProcessor fulfillmentGroupOfferProcessor
protected PromotableItemFactory promotableItemFactory
protected OfferServiceExtensionListener extensionManager
protected OrderService orderService
public List<Offer> findAllOffers()
OfferServicefindAllOffers in interface OfferService@Transactional(value="blTransactionManager") public Offer save(Offer offer)
OfferServicesave in interface OfferService@Transactional(value="blTransactionManager") public OfferCode saveOfferCode(OfferCode offerCode)
OfferServicesaveOfferCode in interface OfferServicepublic Offer lookupOfferByCode(String code)
lookupOfferByCode in interface OfferServicecode - public OfferCode lookupOfferCodeByCode(String code)
OfferServicelookupOfferCodeByCode in interface OfferServicecode - the codepublic List<Offer> buildOfferListForOrder(Order order)
buildOfferListForOrder in interface OfferServiceorder - protected List<CustomerOffer> lookupOfferCustomerByCustomer(Customer customer)
customer - protected List<Offer> lookupAutomaticDeliveryOffers()
protected List<OfferCode> removeOutOfDateOfferCodes(List<OfferCode> offerCodes)
offerCodes - @Transactional(value="blTransactionManager") public void applyOffersToOrder(List<Offer> offers, Order order) throws PricingException
OfferServiceapplyOffersToOrder in interface OfferServiceoffers - the offersorder - the orderPricingException@Transactional(value="blTransactionManager") public void applyFulfillmentGroupOffersToOrder(List<Offer> offers, Order order) throws PricingException
applyFulfillmentGroupOffersToOrder in interface OfferServicePricingExceptionpublic boolean verifyMaxCustomerUsageThreshold(Customer customer, Offer offer)
OfferServiceverifyMaxCustomerUsageThreshold in interface OfferServicecustomer - The customer to checkoffer - The offer to checkpublic CustomerOfferDao getCustomerOfferDao()
getCustomerOfferDao in interface OfferServicepublic void setCustomerOfferDao(CustomerOfferDao customerOfferDao)
setCustomerOfferDao in interface OfferServicepublic OfferCodeDao getOfferCodeDao()
getOfferCodeDao in interface OfferServicepublic void setOfferCodeDao(OfferCodeDao offerCodeDao)
setOfferCodeDao in interface OfferServicepublic OfferDao getOfferDao()
getOfferDao in interface OfferServicepublic void setOfferDao(OfferDao offerDao)
setOfferDao in interface OfferServicepublic OrderOfferProcessor getOrderOfferProcessor()
getOrderOfferProcessor in interface OfferServicepublic void setOrderOfferProcessor(OrderOfferProcessor orderOfferProcessor)
setOrderOfferProcessor in interface OfferServicepublic ItemOfferProcessor getItemOfferProcessor()
getItemOfferProcessor in interface OfferServicepublic void setItemOfferProcessor(ItemOfferProcessor itemOfferProcessor)
setItemOfferProcessor in interface OfferServicepublic FulfillmentGroupOfferProcessor getFulfillmentGroupOfferProcessor()
getFulfillmentGroupOfferProcessor in interface OfferServicepublic void setFulfillmentGroupOfferProcessor(FulfillmentGroupOfferProcessor fulfillmentGroupOfferProcessor)
setFulfillmentGroupOfferProcessor in interface OfferServicepublic PromotableItemFactory getPromotableItemFactory()
getPromotableItemFactory in interface OfferServicepublic void setPromotableItemFactory(PromotableItemFactory promotableItemFactory)
setPromotableItemFactory in interface OfferServicepublic OfferCode findOfferCodeById(Long id)
OfferServicefindOfferCodeById in interface OfferServiceid - the offer idpublic OrderService getOrderService()
getOrderService in interface OfferServicepublic void setOrderService(OrderService orderService)
setOrderService in interface OfferServiceCopyright © 2014. All rights reserved.