Class DefaultOfferAuditDetailService<P extends OfferAuditDetail>
java.lang.Object
com.broadleafcommerce.data.tracking.core.service.BaseCrudEntityService<P>
com.broadleafcommerce.data.tracking.core.service.BaseRsqlCrudEntityService<P>
com.broadleafcommerce.promotion.offer.service.DefaultOfferAuditDetailService<P>
- All Implemented Interfaces:
com.broadleafcommerce.data.tracking.core.service.CrudEntityService<P>,com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityService<P>,OfferAuditDetailService<P>
public class DefaultOfferAuditDetailService<P extends OfferAuditDetail>
extends com.broadleafcommerce.data.tracking.core.service.BaseRsqlCrudEntityService<P>
implements OfferAuditDetailService<P>
- Author:
- Nathan Moore (nathanmoore).
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected OfferServicePropertiesprotected com.broadleafcommerce.common.extension.TypeFactory -
Constructor Summary
ConstructorsConstructorDescriptionDefaultOfferAuditDetailService(OfferAuditDetailRepository<com.broadleafcommerce.data.tracking.core.Trackable> repository, com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityHelper helper) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidassertOfferIdNotNull(String offerId) protected voidbuildAuditDetailList(List<OfferUsageDetails> usageDetailsList, List<OfferCode> offerCodes, List<OfferAuditSummary> offerAuditSummaries, List<P> customerAuditDetailList, Offer offer) findAllOfferCodes(List<OfferUsageDetails> usageDetailsList, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected List<OfferAuditSummary>findAndUpdateAllOfferAuditSummaries(List<OfferUsageDetails> usageDetailsList, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected List<SharedCodeAuditSummary>findAndUpdateAllSharedCodeAuditSummaries(List<OfferUsageDetails> usageDetailsList, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Finds and updates all theSharedCodeAuditSummarybased on the givenOfferUsageDetails.protected OfferAuditSummaryfindAndUpdateOfferAuditSummary(String offerId, javax.money.MonetaryAmount totalSavings, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected SharedCodeAuditSummaryfindAndUpdateSharedCodeAuditSummary(OfferUsageDetails usageDetails, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected com.broadleafcommerce.data.tracking.core.mapping.DomainMapperManagerprotected OfferCodeService<OfferCode>protected OfferService<Offer>protected OfferSummaryService<OfferAuditSummary>protected OfferServicePropertiesprotected OfferAuditDetailRepository<com.broadleafcommerce.data.tracking.core.Trackable>protected SharedCodeAuditSummaryRepository<com.broadleafcommerce.data.tracking.core.Trackable>protected SharedCodeSummaryService<SharedCodeAuditSummary>protected OfferAuditSummaryRepository<com.broadleafcommerce.data.tracking.core.Trackable>protected com.broadleafcommerce.common.extension.TypeFactoryreadAllByOfferCodeIds(Set<String> offerCodeIds, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allOfferAuditDetailrecords that relate to the provided offer code ids.readAllByOfferCodeIdsInAndCustomerId(Set<String> offerCodeIds, @NonNull String customerId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allOfferAuditDetailrecords that relate to the provided offer code ids and customer ID.readAllByOfferCodeIdsInAndCustomerTargetValue(Set<String> offerCodeIds, @NonNull String customerTargetValue, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allOfferAuditDetailrecords that relate to the provided offer code ids and customer ID.readAllByOfferIds(Set<String> offerIds, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allOfferAuditDetailrecords that relate to the provided offer ids.readAllByOfferIdsInAndCustomerId(Set<String> offerIds, @NonNull String customerId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allOfferAuditDetailrecords that relate to the provided offer ids and customer ID.readAllByOfferIdsInAndCustomerTargetValue(Set<String> offerIds, @NonNull String customerTargetValue, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allOfferAuditDetailrecords that relate to the provided offer ids and customer ID.recordOfferUsages(List<OfferUsageDetails> usageDetailsList, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Records offer usages specified in a list ofOfferUsageDetailsand persists the details inOfferAuditDetail,OfferAuditSummary, andSharedCodeAuditSummary.voidsetMapperManager(com.broadleafcommerce.data.tracking.core.mapping.DomainMapperManager mapperManager) voidsetOfferCodeService(OfferCodeService<OfferCode> offerCodeService) voidsetOfferService(OfferService<Offer> offerService) voidsetOfferSummaryService(OfferSummaryService<OfferAuditSummary> offerSummaryService) voidsetProperties(OfferServiceProperties properties) voidsetSharedCodeSummaryRepository(SharedCodeAuditSummaryRepository<com.broadleafcommerce.data.tracking.core.Trackable> sharedCodeSummaryRepository) voidsetSharedCodeSummaryService(SharedCodeSummaryService<SharedCodeAuditSummary> sharedCodeSummaryService) voidsetSummaryRepository(OfferAuditSummaryRepository<com.broadleafcommerce.data.tracking.core.Trackable> summaryRepository) voidsetTypeFactory(com.broadleafcommerce.common.extension.TypeFactory typeFactory) Methods inherited from class com.broadleafcommerce.data.tracking.core.service.BaseRsqlCrudEntityService
getRsqlHelper, readAll, readAll, readAll, readAllMethods inherited from class com.broadleafcommerce.data.tracking.core.service.BaseCrudEntityService
convertFromPersistentDomain, convertToPersistentDomain, create, createAll, createAllAllowingPartialSuccess, delete, getHelper, getSortPositionStrategy, readAll, readAll, readAll, readAllByContextId, readByContextId, replace, replaceAll, replaceAllAllowingPartialSuccess, setSortPositionStrategy, update, updateAll, updateAllAllowingPartialSuccess, updateSortMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.broadleafcommerce.data.tracking.core.service.CrudEntityService
create, createAll, createAllAllowingPartialSuccess, delete, readAll, readAll, readAll, readAllByContextId, readByContextId, replace, replaceAll, replaceAllAllowingPartialSuccess, update, updateAll, updateAllAllowingPartialSuccess, updateSortMethods inherited from interface com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityService
readAll, readAll, readAll, readAll
-
Field Details
-
properties
-
typeFactory
protected com.broadleafcommerce.common.extension.TypeFactory typeFactory
-
-
Constructor Details
-
DefaultOfferAuditDetailService
public DefaultOfferAuditDetailService(OfferAuditDetailRepository<com.broadleafcommerce.data.tracking.core.Trackable> repository, com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityHelper helper)
-
-
Method Details
-
readAllByOfferIds
public List<P> readAllByOfferIds(Set<String> offerIds, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OfferAuditDetailServiceFind allOfferAuditDetailrecords that relate to the provided offer ids.- Specified by:
readAllByOfferIdsin interfaceOfferAuditDetailService<P extends OfferAuditDetail>- Parameters:
offerIds- The set of offer ids to use to fetch relatedOfferAuditDetailrecords.contextInfo- context information around sandbox and multitenant state- Returns:
- all
OfferAuditDetailrecords that relate to the provided offer ids.
-
readAllByOfferCodeIds
public List<P> readAllByOfferCodeIds(Set<String> offerCodeIds, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OfferAuditDetailServiceFind allOfferAuditDetailrecords that relate to the provided offer code ids.- Specified by:
readAllByOfferCodeIdsin interfaceOfferAuditDetailService<P extends OfferAuditDetail>- Parameters:
offerCodeIds- The set of offer code ids to use to fetch relatedOfferAuditDetailrecords.contextInfo- context information around sandbox and multitenant state- Returns:
- all
OfferAuditDetailrecords that relate to the provided offer code ids.
-
readAllByOfferCodeIdsInAndCustomerId
public List<P> readAllByOfferCodeIdsInAndCustomerId(Set<String> offerCodeIds, @NonNull @NonNull String customerId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OfferAuditDetailServiceFind allOfferAuditDetailrecords that relate to the provided offer code ids and customer ID.- Specified by:
readAllByOfferCodeIdsInAndCustomerIdin interfaceOfferAuditDetailService<P extends OfferAuditDetail>customerId- The customer id to use to fetch relatedOfferAuditDetailrecordscontextInfo- context information around sandbox and multitenant state- Returns:
- all
OfferAuditDetailrecords that relate to the provided offer code ids and customer ID.
-
readAllByOfferCodeIdsInAndCustomerTargetValue
public List<P> readAllByOfferCodeIdsInAndCustomerTargetValue(Set<String> offerCodeIds, @NonNull @NonNull String customerTargetValue, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OfferAuditDetailServiceFind allOfferAuditDetailrecords that relate to the provided offer code ids and customer ID.- Specified by:
readAllByOfferCodeIdsInAndCustomerTargetValuein interfaceOfferAuditDetailService<P extends OfferAuditDetail>- Parameters:
offerCodeIds- The set of offer code ids to use to fetch relatedOfferAuditDetailrecords.customerTargetValue- The customer id or email to use to fetch relatedOfferAuditDetailrecordscontextInfo- context information around sandbox and multitenant state- Returns:
- all
OfferAuditDetailrecords that relate to the provided offer code ids and customer ID.
-
readAllByOfferIdsInAndCustomerId
public List<P> readAllByOfferIdsInAndCustomerId(Set<String> offerIds, @NonNull @NonNull String customerId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OfferAuditDetailServiceFind allOfferAuditDetailrecords that relate to the provided offer ids and customer ID.- Specified by:
readAllByOfferIdsInAndCustomerIdin interfaceOfferAuditDetailService<P extends OfferAuditDetail>- Parameters:
offerIds- The set of offer ids to use to fetch relatedOfferAuditDetailrecords.customerId- The customer id to use to fetch relatedOfferAuditDetailrecordscontextInfo- context information around sandbox and multitenant state- Returns:
- all
OfferAuditDetailrecords that relate to the provided offer ids and customer ID.
-
readAllByOfferIdsInAndCustomerTargetValue
public List<P> readAllByOfferIdsInAndCustomerTargetValue(Set<String> offerIds, @NonNull @NonNull String customerTargetValue, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OfferAuditDetailServiceFind allOfferAuditDetailrecords that relate to the provided offer ids and customer ID.- Specified by:
readAllByOfferIdsInAndCustomerTargetValuein interfaceOfferAuditDetailService<P extends OfferAuditDetail>- Parameters:
offerIds- The set of offer ids to use to fetch relatedOfferAuditDetailrecords.customerTargetValue- The customer id or email to use to fetch relatedOfferAuditDetailrecordscontextInfo- context information around sandbox and multitenant state- Returns:
- all
OfferAuditDetailrecords that relate to the provided offer ids and customer ID.
-
recordOfferUsages
public List<P> recordOfferUsages(List<OfferUsageDetails> usageDetailsList, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OfferAuditDetailServiceRecords offer usages specified in a list ofOfferUsageDetailsand persists the details inOfferAuditDetail,OfferAuditSummary, andSharedCodeAuditSummary.- Specified by:
recordOfferUsagesin interfaceOfferAuditDetailService<P extends OfferAuditDetail>- Parameters:
usageDetailsList- the list ofOfferUsageDetailsto recordcontextInfo- context information around sandbox and multitenant state- Returns:
- all
OfferAuditDetailrecords that were persisted
-
buildAuditDetailList
protected void buildAuditDetailList(List<OfferUsageDetails> usageDetailsList, List<OfferCode> offerCodes, List<OfferAuditSummary> offerAuditSummaries, List<P> customerAuditDetailList, Offer offer) -
findAllOfferCodes
protected List<OfferCode> findAllOfferCodes(List<OfferUsageDetails> usageDetailsList, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
findAndUpdateAllOfferAuditSummaries
protected List<OfferAuditSummary> findAndUpdateAllOfferAuditSummaries(List<OfferUsageDetails> usageDetailsList, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
findAndUpdateOfferAuditSummary
protected OfferAuditSummary findAndUpdateOfferAuditSummary(String offerId, javax.money.MonetaryAmount totalSavings, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
assertOfferIdNotNull
-
getProperties
-
setProperties
-
getTypeFactory
protected com.broadleafcommerce.common.extension.TypeFactory getTypeFactory() -
setTypeFactory
@Autowired public void setTypeFactory(com.broadleafcommerce.common.extension.TypeFactory typeFactory) -
getOfferService
-
setOfferService
-
getOfferCodeService
-
setOfferCodeService
-
getOfferSummaryService
-
setOfferSummaryService
@Autowired public void setOfferSummaryService(OfferSummaryService<OfferAuditSummary> offerSummaryService) -
getRepository
@NonNull protected OfferAuditDetailRepository<com.broadleafcommerce.data.tracking.core.Trackable> getRepository()- Overrides:
getRepositoryin classcom.broadleafcommerce.data.tracking.core.service.BaseCrudEntityService<P extends OfferAuditDetail>
-
getSummaryRepository
protected OfferAuditSummaryRepository<com.broadleafcommerce.data.tracking.core.Trackable> getSummaryRepository() -
setSummaryRepository
@Autowired public void setSummaryRepository(@Nullable OfferAuditSummaryRepository<com.broadleafcommerce.data.tracking.core.Trackable> summaryRepository) -
getMapperManager
protected com.broadleafcommerce.data.tracking.core.mapping.DomainMapperManager getMapperManager() -
setMapperManager
@Autowired public void setMapperManager(@Nullable com.broadleafcommerce.data.tracking.core.mapping.DomainMapperManager mapperManager)
-