Package ch.voev.nova.contract.masterdata

Types / Enumerations:


Types

ContractCondition

Defines a condition of the contract.


Properties / Associations

Name Type Multiplicity Constraints Description
position int 1..1
title LocalizedString 1..1
text LocalizedString 1..1


ContractSubject

Abstract base class that represents the subject of a contract. As different types of contracts have different subjects it is intended that there are several contract type specific subclasses.


Type Details Details
Abstract true


Properties / Associations

Name Type Multiplicity Constraints Description


Handout


Properties / Associations

Name Type Multiplicity Constraints Description
link LocalizedURL 1..1
name LocalizedString 1..1
category HandoutCategory 1..1


SubscriptionContractDataUnit


Type Details Details
Parent Class DataUnit


Properties / Associations

Name Type Multiplicity Constraints Description
subscriptionContractTemplateMasterData SubscriptionContractTemplateMasterData 1..1
subscriptionContractTermsMasterData SubscriptionContractTermsMasterData 1..1
subscriptionContractTemplateTaxonomyMasterData SubscriptionContractTemplateTaxonomyMasterData 1..1
subscriptionContractTemplates SubscriptionContractTemplate 0..* derived
subscriptionContractTerms SubscriptionContractTerms 0..* derived
subscriptionContractTemplateTaxonomies SubscriptionContractTemplateTaxonomy 0..* derived


SubscriptionContractFamily


Properties / Associations

Name Type Multiplicity Constraints Description
type SubscriptionContractFamilyType 1..1
name LocalizedString 1..1


SubscriptionContractTemplate


Type Details Details
Parent Class EntityVersion


Properties / Associations

Name Type Multiplicity Constraints Description
internalName String 1..1
name LocalizedString 1..1
description LocalizedString 1..1
customerSegments CustomerSegment 1..*
paymentInterval PaymentInterval 1..1
price Price 1..1
subscriptionContractTerms SubscriptionContractTerms 1..1
family SubscriptionContractFamily 1..1 Family to which this contract template belongs to.
contractSubject ContractSubject 1..1
minimumContractDuration Duration 1..1 Minimum duration of a new contract.
minimumLeadTime Duration 1..1


SubscriptionContractTemplateMasterData


Type Details Details
Parent Class EntityMasterData


Properties / Associations

Name Type Multiplicity Constraints Description
subscriptionContractTemplates SubscriptionContractTemplate 0..*


SubscriptionContractTemplateTaxonomy

Type represents a taxonomy for subscription contracts. A taxonomy usually consists of multiple "classes" that are used to categorize subscription contracts.


Type Details Details
Parent Class EntityVersion


Properties / Associations

Name Type Multiplicity Constraints Description
classes SubscriptionContractTemplateTaxonomyClass 0..* List with all taxonomy classes that belong to this taxonomy.
name String 1..1 @Size(min=0, max=255)
Name of the taxonomy.


SubscriptionContractTemplateTaxonomyClass

Type represents a concrete taxonomy class for subscription contracts. Taxonomy classes are used to categorize subscription contract templates.


Properties / Associations

Name Type Multiplicity Constraints Description
className String 1..1 @Size(min=0, max=255)
Name of the class.
name LocalizedString 0..1 Localized name to the taxonomy class.
contractTemplates SubscriptionContractTemplate 0..* List with all subscription contract templates that belong to this class.


SubscriptionContractTemplateTaxonomyMasterData


Type Details Details
Parent Class EntityMasterData


Properties / Associations

Name Type Multiplicity Constraints Description
subscriptionContractTemplateTaxonomies SubscriptionContractTemplateTaxonomy 0..*


SubscriptionContractTerms


Type Details Details
Parent Class EntityVersion


Properties / Associations

Name Type Multiplicity Constraints Description
sellableFrom java.time.LocalDate 1..1
sellableThrough java.time.LocalDate 1..1
presalePeriod Duration 1..1 The time period defining the latest start of the contract in the future.
terminationConditions TerminationCondition 0..* The list of termination conditions for this contract defining the possible termination cases.
supportedProducts ProductTaxonomy 0..* List of products for which the travel credit can be used. In order to avoid new versions of the subscription contract terms over and over again. The list of supported products is not defined directly but by using an product taxonomy.
handoutLinks Handout 0..*
withdrawalPeriod Duration 1..1 The time period in which a withdrawal from the contract without any consequences for the contract partner is possible.
conditions ContractCondition 1..* The conditions of the contract. At least one condition has to be always present. The list is sorted by order of the conditions in the contract layout.
tariffOwner Organization 1..1 Tariff owner of the contract terms.


SubscriptionContractTermsMasterData


Type Details Details
Parent Class EntityMasterData


Properties / Associations

Name Type Multiplicity Constraints Description
subscriptionContractTerms SubscriptionContractTerms 0..*


TerminationCondition

Defines a termination case that is possible for these contract terms. The termination condition consists of a description and the eligible channels that are allowed to issue this termination.


Properties / Associations

Name Type Multiplicity Constraints Description
type TerminationType 1..1 Defines the type of termination reason that belongs to this termination condition
terminationFee MoneyAmount 1..1
description LocalizedString 1..1 Can be used by the channel to display a description of the termination condition.
eligibleChannelTypes ChannelType 1..* Defines the list of channel types that are allowed to trigger this exact case of termination on a contract.


TravelCreditContractSubject


Type Details Details
Parent Class ContractSubject


Properties / Associations

Name Type Multiplicity Constraints Description
credit MoneyAmount 1..1 Amount that is available to buy tickets. This includes the bonus that might be granted to a customer.



Enumerations

HandoutCategory

Literals

Name Description
AGB
OTHER
UNKNOWN Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice.

PaymentInterval

Literals

Name Description
INITIATED_BY_CUSTOMER
MONTHLY
ANNUAL
UNKNOWN Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice.