/* Options: Date: 2024-09-30 10:27:10 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: CreateLicense.* //ExcludeTypes: //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.*; import java.util.*; import net.servicestack.client.*; public class dtos { @Route(Path="/licenses/company", Verbs="POST") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) @ValidateRequest(Validator="IsAuthenticated") public static class CreateLicense implements IReturn, ICompany { /** * The company id, if empty will use the company id for the user you are logged in with. */ @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") public UUID CompanyId = null; /** * Id of the license type */ @ApiMember(Description="Id of the license type", IsRequired=true) public Integer TypeId = null; /** * Any metadata connected to the license. In example for domain license set the requested domain name here. */ @ApiMember(Description="Any metadata connected to the license. In example for domain license set the requested domain name here.", IsRequired=true) public String MetaData = null; /** * If you want to update your company billing information. Note, if no billing information is added before, you need to set this. */ @ApiMember(Description="If you want to update your company billing information. Note, if no billing information is added before, you need to set this.") public BillingInformationResponse BillingInformation = null; public UUID getCompanyId() { return CompanyId; } public CreateLicense setCompanyId(UUID value) { this.CompanyId = value; return this; } public Integer getTypeId() { return TypeId; } public CreateLicense setTypeId(Integer value) { this.TypeId = value; return this; } public String getMetaData() { return MetaData; } public CreateLicense setMetaData(String value) { this.MetaData = value; return this; } public BillingInformationResponse getBillingInformation() { return BillingInformation; } public CreateLicense setBillingInformation(BillingInformationResponse value) { this.BillingInformation = value; return this; } private static Object responseType = CompanyLicenseQueryResponse.class; public Object getResponseType() { return responseType; } } public static class CompanyLicenseQueryResponse { public Integer Id = null; public Integer TypeId = null; public LicenseTypeQueryResponse Type = null; public Date ValidFrom = null; public Date ValidTo = null; public String MetaData = null; public Boolean Active = null; public Boolean Canceled = null; public Date Updated = null; public Date Created = null; public Integer getId() { return Id; } public CompanyLicenseQueryResponse setId(Integer value) { this.Id = value; return this; } public Integer getTypeId() { return TypeId; } public CompanyLicenseQueryResponse setTypeId(Integer value) { this.TypeId = value; return this; } public LicenseTypeQueryResponse getType() { return Type; } public CompanyLicenseQueryResponse setType(LicenseTypeQueryResponse value) { this.Type = value; return this; } public Date getValidFrom() { return ValidFrom; } public CompanyLicenseQueryResponse setValidFrom(Date value) { this.ValidFrom = value; return this; } public Date getValidTo() { return ValidTo; } public CompanyLicenseQueryResponse setValidTo(Date value) { this.ValidTo = value; return this; } public String getMetaData() { return MetaData; } public CompanyLicenseQueryResponse setMetaData(String value) { this.MetaData = value; return this; } public Boolean isActive() { return Active; } public CompanyLicenseQueryResponse setActive(Boolean value) { this.Active = value; return this; } public Boolean isCanceled() { return Canceled; } public CompanyLicenseQueryResponse setCanceled(Boolean value) { this.Canceled = value; return this; } public Date getUpdated() { return Updated; } public CompanyLicenseQueryResponse setUpdated(Date value) { this.Updated = value; return this; } public Date getCreated() { return Created; } public CompanyLicenseQueryResponse setCreated(Date value) { this.Created = value; return this; } } public static interface ICompany { public UUID CompanyId = null; } public static class Country extends BaseModel { @References(Currency.class) public String CurrencyId = null; public Currency CurrencyInfo = null; @Required() public String Name = null; public String Culture = null; public String TimeZone = null; public Date ModifiedDate = null; @Required() public String Id = null; public String getCurrencyId() { return CurrencyId; } public Country setCurrencyId(String value) { this.CurrencyId = value; return this; } public Currency getCurrencyInfo() { return CurrencyInfo; } public Country setCurrencyInfo(Currency value) { this.CurrencyInfo = value; return this; } public String getName() { return Name; } public Country setName(String value) { this.Name = value; return this; } public String getCulture() { return Culture; } public Country setCulture(String value) { this.Culture = value; return this; } public String getTimeZone() { return TimeZone; } public Country setTimeZone(String value) { this.TimeZone = value; return this; } public Date getModifiedDate() { return ModifiedDate; } public Country setModifiedDate(Date value) { this.ModifiedDate = value; return this; } public String getId() { return Id; } public Country setId(String value) { this.Id = value; return this; } } public static class Currency extends BaseModel { @Required() public String Name = null; @Required() public String CurrencySign = null; @Required() public Boolean Active = null; public Date ModifiedDate = null; @Required() public String Id = null; public String getName() { return Name; } public Currency setName(String value) { this.Name = value; return this; } public String getCurrencySign() { return CurrencySign; } public Currency setCurrencySign(String value) { this.CurrencySign = value; return this; } public Boolean isActive() { return Active; } public Currency setActive(Boolean value) { this.Active = value; return this; } public Date getModifiedDate() { return ModifiedDate; } public Currency setModifiedDate(Date value) { this.ModifiedDate = value; return this; } public String getId() { return Id; } public Currency setId(String value) { this.Id = value; return this; } } public static class LicenseTypeQueryResponse { /** * The license type id */ @ApiMember(Description="The license type id") public Integer Id = null; /** * The license type name */ @ApiMember(Description="The license type name") public String Name = null; /** * The license type description */ @ApiMember(Description="The license type description") public String Description = null; /** * If the license type is not a standard license but instead an extra license option. An example would be sending new letter license. */ @ApiMember(Description="If the license type is not a standard license but instead an extra license option. An example would be sending new letter license.") public Boolean IsExtraLicenseOption = null; /** * The period of notice for the license in days. */ @ApiMember(Description="The period of notice for the license in days.") public Integer PeriodOfNoticeDays = null; /** * The license items for the license type */ @ApiMember(Description="The license items for the license type") public ArrayList Items = null; /** * The license prices in each country for the license type */ @ApiMember(Description="The license prices in each country for the license type") public ArrayList Prices = null; public Integer getId() { return Id; } public LicenseTypeQueryResponse setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public LicenseTypeQueryResponse setName(String value) { this.Name = value; return this; } public String getDescription() { return Description; } public LicenseTypeQueryResponse setDescription(String value) { this.Description = value; return this; } public Boolean getIsExtraLicenseOption() { return IsExtraLicenseOption; } public LicenseTypeQueryResponse setIsExtraLicenseOption(Boolean value) { this.IsExtraLicenseOption = value; return this; } public Integer getPeriodOfNoticeDays() { return PeriodOfNoticeDays; } public LicenseTypeQueryResponse setPeriodOfNoticeDays(Integer value) { this.PeriodOfNoticeDays = value; return this; } public ArrayList getItems() { return Items; } public LicenseTypeQueryResponse setItems(ArrayList value) { this.Items = value; return this; } public ArrayList getPrices() { return Prices; } public LicenseTypeQueryResponse setPrices(ArrayList value) { this.Prices = value; return this; } } public static class BaseModel { } public static class LicensePrice extends BaseModel { @Ignore() public Country Country = null; @Ignore() public Boolean MonthlyPayment = null; @Required() public Integer LicenseTypeId = null; @Required() public String CountryId = null; @Required() public Integer Price = null; public Date ModifiedDate = null; public Country getCountry() { return Country; } public LicensePrice setCountry(Country value) { this.Country = value; return this; } public Boolean isMonthlyPayment() { return MonthlyPayment; } public LicensePrice setMonthlyPayment(Boolean value) { this.MonthlyPayment = value; return this; } public Integer getLicenseTypeId() { return LicenseTypeId; } public LicensePrice setLicenseTypeId(Integer value) { this.LicenseTypeId = value; return this; } public String getCountryId() { return CountryId; } public LicensePrice setCountryId(String value) { this.CountryId = value; return this; } public Integer getPrice() { return Price; } public LicensePrice setPrice(Integer value) { this.Price = value; return this; } public Date getModifiedDate() { return ModifiedDate; } public LicensePrice setModifiedDate(Date value) { this.ModifiedDate = value; return this; } } public static class LicenseItemsResponse { public Integer Id = null; public String Name = null; public Integer AllowedItems = null; public Integer getId() { return Id; } public LicenseItemsResponse setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public LicenseItemsResponse setName(String value) { this.Name = value; return this; } public Integer getAllowedItems() { return AllowedItems; } public LicenseItemsResponse setAllowedItems(Integer value) { this.AllowedItems = value; return this; } } public static enum Currency { Sek(1), Eur(2); private final int value; Currency(final int intValue) { value = intValue; } public int getValue() { return value; } } public static class BillingInformationResponse { /** * The company id. */ @ApiMember(Description="The company id.") public UUID CompanyId = null; /** * The prefered billing method. */ @ApiMember(Description="The prefered billing method.", IsRequired=true) public Integer BillingMethodId = null; /** * The name that should be printed on the billing information, normally this would be your company name. */ @ApiMember(Description="The name that should be printed on the billing information, normally this would be your company name.") public String Name = null; /** * If you want to add the attention to the billing address. */ @ApiMember(Description="If you want to add the attention to the billing address.") public String Attention = null; /** * The street for the billing adress. This is required when having postal invoice as billing method. */ @ApiMember(Description="The street for the billing adress. This is required when having postal invoice as billing method.") public String Street1 = null; /** * The street for the billing adress. */ @ApiMember(Description="The street for the billing adress.") public String Street2 = null; /** * The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method. */ @ApiMember(Description="The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method.") public String ZipCode = null; /** * The city for the billing adress. This is required when having postal invoice as billing method. */ @ApiMember(Description="The city for the billing adress. This is required when having postal invoice as billing method.") public String City = null; /** * The country for the billing adress. This is required when having postal invoice as billing method. */ @ApiMember(Description="The country for the billing adress. This is required when having postal invoice as billing method.") public String CountryId = null; /** * The billing email. This is required when having email invoice as billing method. */ @ApiMember(Description="The billing email. This is required when having email invoice as billing method.") public String Email = null; /** * The company global location number. */ @ApiMember(Description="The company global location number.") public String GLN = null; /** * You're internal rereference. */ @ApiMember(Description="You're internal rereference.") public String ReferenceLine1 = null; /** * You're internal rereference. */ @ApiMember(Description="You're internal rereference.") public String ReferenceLine2 = null; /** * The billing payment terms in days. This is default 15 days. */ @ApiMember(Description="The billing payment terms in days. This is default 15 days.") public Integer PaymentTermsDays = null; /** * The company vat registration number. */ @ApiMember(Description="The company vat registration number.") public String VatRegistrationNumber = null; /** * The billing method options to choose from */ @ApiMember(Description="The billing method options to choose from") public ArrayList BillingMethodOptions = null; public UUID getCompanyId() { return CompanyId; } public BillingInformationResponse setCompanyId(UUID value) { this.CompanyId = value; return this; } public Integer getBillingMethodId() { return BillingMethodId; } public BillingInformationResponse setBillingMethodId(Integer value) { this.BillingMethodId = value; return this; } public String getName() { return Name; } public BillingInformationResponse setName(String value) { this.Name = value; return this; } public String getAttention() { return Attention; } public BillingInformationResponse setAttention(String value) { this.Attention = value; return this; } public String getStreet1() { return Street1; } public BillingInformationResponse setStreet1(String value) { this.Street1 = value; return this; } public String getStreet2() { return Street2; } public BillingInformationResponse setStreet2(String value) { this.Street2 = value; return this; } public String getZipCode() { return ZipCode; } public BillingInformationResponse setZipCode(String value) { this.ZipCode = value; return this; } public String getCity() { return City; } public BillingInformationResponse setCity(String value) { this.City = value; return this; } public String getCountryId() { return CountryId; } public BillingInformationResponse setCountryId(String value) { this.CountryId = value; return this; } public String getEmail() { return Email; } public BillingInformationResponse setEmail(String value) { this.Email = value; return this; } public String getGln() { return GLN; } public BillingInformationResponse setGln(String value) { this.GLN = value; return this; } public String getReferenceLine1() { return ReferenceLine1; } public BillingInformationResponse setReferenceLine1(String value) { this.ReferenceLine1 = value; return this; } public String getReferenceLine2() { return ReferenceLine2; } public BillingInformationResponse setReferenceLine2(String value) { this.ReferenceLine2 = value; return this; } public Integer getPaymentTermsDays() { return PaymentTermsDays; } public BillingInformationResponse setPaymentTermsDays(Integer value) { this.PaymentTermsDays = value; return this; } public String getVatRegistrationNumber() { return VatRegistrationNumber; } public BillingInformationResponse setVatRegistrationNumber(String value) { this.VatRegistrationNumber = value; return this; } public ArrayList getBillingMethodOptions() { return BillingMethodOptions; } public BillingInformationResponse setBillingMethodOptions(ArrayList value) { this.BillingMethodOptions = value; return this; } } }