Class DefaultTmaSubscriptionBaseService
java.lang.Object
de.hybris.platform.b2ctelcoservices.services.impl.DefaultTmaSubscriptionBaseService
- All Implemented Interfaces:
TmaSubscriptionBaseService
Default implementation of the
TmaSubscriptionBaseService.- Since:
- 6.6
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateSubscriptionBase(String subscriberIdentity, String billingSystemId, String billingAccountId) Creates aTmaSubscriptionBaseModelwith given details.voiddeleteSubscriptionBase(String subscriberIdentity, String billingSystemId) Deletes theTmaSubscriptionBaseModeland associatedTmaSubscriptionAccessModel,TmaSubscribedProductModelidentified by the given details.booleandoesSubscriptionBaseExist(String subscriberIdentity) Checks if SubscriptionBase exist for given subscriberIdentitygenerateSubscriptionBase(String billingAccountId) generates aTmaSubscriptionBaseModelwith given details.generateSubscriptionBase(String customerId, String billingAccountId, TmaAccessType accessType) Generates a newTmaSubscriptionBaseModeland associatedTmaSubscriptionAccessModelfor the givenTmaAccessTypeRetrieves allTmaSubscriptionBaseModelsprotected StringgetMainTariffProductCodeForSubscriptionBase(TmaSubscriptionBaseModel subscriptionBaseModel) Determines the product code of the main tariff subscribed product for the given subscription base modelgetMainTariffSubscribedProductIdForSubscriptionBase(TmaSubscriptionBaseModel subscriptionBaseModel) Determines the Subscribed Product Id of the main tariff subscribed product for the given subscription base modelgetMainTariffSubscribedProductIdsForSubscriptionBases(List<TmaSubscriptionBaseModel> subscriptionBaseModelList) Determines the Subscribed Product Id of the main tariffs corresponding to the each of the subscription bases given.protected de.hybris.platform.servicelayer.model.ModelServicegetSubscriptionBase(String subscriberIdentity, String billingSystemId) Returns theTmaSubscriptionBaseModelidentified by the a given subscriber identity and a given billing system id.getSubscriptionBaseByIdentity(String subscriberIdentity) ReturnTmaSubscriptionBaseModelfor given subscriptionBase.getSubscriptionBases(String customerId) Gets the all subscription bases given a customer identifier.protected TmaBillingAccountServiceprotected de.hybris.platform.servicelayer.keygenerator.impl.PersistentKeyGeneratorprotected TmaSubscriptionAccessServiceprotected TmaSubscriptionBaseDaogroupSubscriptionsByBillingArrangementAndBpo(List<TmaSubscriptionBaseModel> subscriptionBases) The list ofTmaSubscriptionBaseModelgiven is grouped by billing agreement and BPO, obtaining a map of subscriptions.voidsetDefaultBillingSystemId(String defaultBillingSystemId) voidsetModelService(de.hybris.platform.servicelayer.model.ModelService modelService) voidsetTmaBillingAccountService(TmaBillingAccountService tmaBillingAccountService) voidsetTmaSubscriberIdentityGenerator(de.hybris.platform.servicelayer.keygenerator.impl.PersistentKeyGenerator tmaSubscriberIdentityGenerator) voidsetTmaSubscriptionAccessService(TmaSubscriptionAccessService tmaSubscriptionAccessService) voidsetTmaSubscriptionBaseDao(TmaSubscriptionBaseDao tmaSubscriptionBaseDao)
-
Constructor Details
-
DefaultTmaSubscriptionBaseService
public DefaultTmaSubscriptionBaseService()
-
-
Method Details
-
getSubscriptionBases
Description copied from interface:TmaSubscriptionBaseServiceGets the all subscription bases given a customer identifier.- Specified by:
getSubscriptionBasesin interfaceTmaSubscriptionBaseService- Parameters:
customerId- the customerId- Returns:
- the list of subscriptions
-
getSubscriptionBase
public TmaSubscriptionBaseModel getSubscriptionBase(String subscriberIdentity, String billingSystemId) Description copied from interface:TmaSubscriptionBaseServiceReturns theTmaSubscriptionBaseModelidentified by the a given subscriber identity and a given billing system id.- Specified by:
getSubscriptionBasein interfaceTmaSubscriptionBaseService- Parameters:
subscriberIdentity- unique identifier of the subscriber from the billing systembillingSystemId- unique identifier of the billing system- Returns:
TmaSubscriptionBaseModelif any exists
-
getAllSubscriptionBases
Description copied from interface:TmaSubscriptionBaseServiceRetrieves allTmaSubscriptionBaseModels- Specified by:
getAllSubscriptionBasesin interfaceTmaSubscriptionBaseService- Returns:
Setof allTmaSubscriptionBaseModels available in system.
-
getSubscriptionBaseByIdentity
Description copied from interface:TmaSubscriptionBaseServiceReturnTmaSubscriptionBaseModelfor given subscriptionBase.- Specified by:
getSubscriptionBaseByIdentityin interfaceTmaSubscriptionBaseService- Parameters:
subscriberIdentity- unique identifier of the subscriber from the billing system- Returns:
- TmaSubscriptionBaseModel for given subscriberIdentity
-
getMainTariffSubscribedProductIdsForSubscriptionBases
public Set<String> getMainTariffSubscribedProductIdsForSubscriptionBases(List<TmaSubscriptionBaseModel> subscriptionBaseModelList) Description copied from interface:TmaSubscriptionBaseServiceDetermines the Subscribed Product Id of the main tariffs corresponding to the each of the subscription bases given.- Specified by:
getMainTariffSubscribedProductIdsForSubscriptionBasesin interfaceTmaSubscriptionBaseService- Parameters:
subscriptionBaseModelList- the list of subscription bases- Returns:
- the set of Subscribed Product Id's or empty list if the input data is empty
-
createSubscriptionBase
public TmaSubscriptionBaseModel createSubscriptionBase(String subscriberIdentity, String billingSystemId, String billingAccountId) Description copied from interface:TmaSubscriptionBaseServiceCreates aTmaSubscriptionBaseModelwith given details.- Specified by:
createSubscriptionBasein interfaceTmaSubscriptionBaseService- Parameters:
subscriberIdentity- unique identifier of the subscriber from the billing systembillingSystemId- unique identifier of the billing systembillingAccountId- unique identifier for the billing account- Returns:
- newly created
TmaSubscriptionBaseModel
-
deleteSubscriptionBase
@Transactional public void deleteSubscriptionBase(String subscriberIdentity, String billingSystemId) Description copied from interface:TmaSubscriptionBaseServiceDeletes theTmaSubscriptionBaseModeland associatedTmaSubscriptionAccessModel,TmaSubscribedProductModelidentified by the given details.- Specified by:
deleteSubscriptionBasein interfaceTmaSubscriptionBaseService- Parameters:
subscriberIdentity- unique identifier of the subscriber for which theTmaSubscriptionBaseModeland dependencies should be deletedbillingSystemId- unique identifier of the billing system
-
generateSubscriptionBase
Description copied from interface:TmaSubscriptionBaseServicegenerates aTmaSubscriptionBaseModelwith given details.- Specified by:
generateSubscriptionBasein interfaceTmaSubscriptionBaseService- Parameters:
billingAccountId- unique identifier for the billing account- Returns:
- newly created
TmaSubscriptionBaseModel
-
generateSubscriptionBase
public TmaSubscriptionBaseModel generateSubscriptionBase(String customerId, String billingAccountId, TmaAccessType accessType) Description copied from interface:TmaSubscriptionBaseServiceGenerates a newTmaSubscriptionBaseModeland associatedTmaSubscriptionAccessModelfor the givenTmaAccessType- Specified by:
generateSubscriptionBasein interfaceTmaSubscriptionBaseService- Parameters:
customerId- customer identifierbillingAccountId- unique identifier for the billing accountaccessType- access type modifier- Returns:
- newly created
TmaSubscriptionBaseModel
-
getMainTariffProductCodeForSubscriptionBase
public String getMainTariffProductCodeForSubscriptionBase(TmaSubscriptionBaseModel subscriptionBaseModel) Description copied from interface:TmaSubscriptionBaseServiceDetermines the product code of the main tariff subscribed product for the given subscription base model- Specified by:
getMainTariffProductCodeForSubscriptionBasein interfaceTmaSubscriptionBaseService- Parameters:
subscriptionBaseModel- the subscription base to be checked- Returns:
- the product code of the main tariff subscribed product
-
getMainTariffSubscribedProductIdForSubscriptionBase
public String getMainTariffSubscribedProductIdForSubscriptionBase(TmaSubscriptionBaseModel subscriptionBaseModel) Description copied from interface:TmaSubscriptionBaseServiceDetermines the Subscribed Product Id of the main tariff subscribed product for the given subscription base model- Specified by:
getMainTariffSubscribedProductIdForSubscriptionBasein interfaceTmaSubscriptionBaseService- Parameters:
subscriptionBaseModel- the subscription base to be checked- Returns:
- the Subscribed Product Id of the main tariff subscribed product
-
groupSubscriptionsByBillingArrangementAndBpo
public Map<String,List<TmaSubscriptionBaseModel>> groupSubscriptionsByBillingArrangementAndBpo(List<TmaSubscriptionBaseModel> subscriptionBases) Description copied from interface:TmaSubscriptionBaseServiceThe list ofTmaSubscriptionBaseModelgiven is grouped by billing agreement and BPO, obtaining a map of subscriptions. The key of the map is: - Combination of billing agreement id and BPO: for those subscriptions having the billing agreement and BPO attached - Billing agreement ID + 'NOBPO' + indexNo: for those subscriptions having billing agreement attached but no BPO At first the subscriptions are grouped by billing agreement. If a subscription has no billing agreement that subscription is not considered anymore. The list of subscriptions grouped by billing agreement is then grouped by BPO. Each list of subscription having the same billing agreement and same BPO will be added to the result map as an entry having the key determined as described above.- Specified by:
groupSubscriptionsByBillingArrangementAndBpoin interfaceTmaSubscriptionBaseService- Parameters:
subscriptionBases- the list with subscriptions that will be processed- Returns:
- the map grouping the subscription bases by billing agreement and BPO
-
doesSubscriptionBaseExist
Description copied from interface:TmaSubscriptionBaseServiceChecks if SubscriptionBase exist for given subscriberIdentity- Specified by:
doesSubscriptionBaseExistin interfaceTmaSubscriptionBaseService- Parameters:
subscriberIdentity- SubscriptionBase identifier- Returns:
- true if TmaSubscriptionBaseModel exists for given subscriberIdentity else false
-
getTmaSubscriberIdentityGenerator
protected de.hybris.platform.servicelayer.keygenerator.impl.PersistentKeyGenerator getTmaSubscriberIdentityGenerator() -
setTmaSubscriberIdentityGenerator
public void setTmaSubscriberIdentityGenerator(de.hybris.platform.servicelayer.keygenerator.impl.PersistentKeyGenerator tmaSubscriberIdentityGenerator) -
getDefaultBillingSystemId
-
setDefaultBillingSystemId
-
setModelService
public void setModelService(de.hybris.platform.servicelayer.model.ModelService modelService) -
getModelService
protected de.hybris.platform.servicelayer.model.ModelService getModelService() -
setTmaBillingAccountService
-
getTmaBillingAccountService
-
setTmaSubscriptionBaseDao
-
getTmaSubscriptionBaseDao
-
getTmaSubscriptionAccessService
-
setTmaSubscriptionAccessService
public void setTmaSubscriptionAccessService(TmaSubscriptionAccessService tmaSubscriptionAccessService)
-