/* Options: Date: 2024-07-03 12:57:06 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CompanyLicenseQuery.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class BaseModel implements IConvertible { BaseModel(); BaseModel.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; getTypeName() => "BaseModel"; TypeContext? context = _ctx; } enum Currency { SEK, EUR, } class Country extends BaseModel implements IConvertible { // @References(typeof(Currency)) String? CurrencyId; Currency? CurrencyInfo; // @Required() String? Name; String? Culture; String? TimeZone; DateTime? ModifiedDate; // @Required() String? Id; Country({this.CurrencyId,this.CurrencyInfo,this.Name,this.Culture,this.TimeZone,this.ModifiedDate,this.Id}); Country.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); CurrencyId = json['CurrencyId']; CurrencyInfo = JsonConverters.fromJson(json['CurrencyInfo'],'Currency',context!); Name = json['Name']; Culture = json['Culture']; TimeZone = json['TimeZone']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); Id = json['Id']; return this; } Map toJson() => super.toJson()..addAll({ 'CurrencyId': CurrencyId, 'CurrencyInfo': JsonConverters.toJson(CurrencyInfo,'Currency',context!), 'Name': Name, 'Culture': Culture, 'TimeZone': TimeZone, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'Id': Id }); getTypeName() => "Country"; TypeContext? context = _ctx; } class Currency extends BaseModel implements IConvertible { // @Required() String? Name; // @Required() String? CurrencySign; // @Required() bool? Active; DateTime? ModifiedDate; // @Required() String? Id; Currency({this.Name,this.CurrencySign,this.Active,this.ModifiedDate,this.Id}); Currency.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Name = json['Name']; CurrencySign = json['CurrencySign']; Active = json['Active']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); Id = json['Id']; return this; } Map toJson() => super.toJson()..addAll({ 'Name': Name, 'CurrencySign': CurrencySign, 'Active': Active, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'Id': Id }); getTypeName() => "Currency"; TypeContext? context = _ctx; } class LicenseTypeItem extends BaseModel implements IConvertible { // @Ignore() String? Name; // @Required() int? LicenseTypesId; // @Required() int? LicenseItemsId; // @Required() int? NumberOfItems; int? Id; DateTime? ModifiedDate; LicenseTypeItem({this.Name,this.LicenseTypesId,this.LicenseItemsId,this.NumberOfItems,this.Id,this.ModifiedDate}); LicenseTypeItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Name = json['Name']; LicenseTypesId = json['LicenseTypesId']; LicenseItemsId = json['LicenseItemsId']; NumberOfItems = json['NumberOfItems']; Id = json['Id']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); return this; } Map toJson() => super.toJson()..addAll({ 'Name': Name, 'LicenseTypesId': LicenseTypesId, 'LicenseItemsId': LicenseItemsId, 'NumberOfItems': NumberOfItems, 'Id': Id, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!) }); getTypeName() => "LicenseTypeItem"; TypeContext? context = _ctx; } class LicensePrice extends BaseModel implements IConvertible { // @Ignore() Country? Country; // @Ignore() bool? MonthlyPayment; // @Required() int? LicenseTypeId; // @Required() String? CountryId; // @Required() int? Price; DateTime? ModifiedDate; LicensePrice({this.Country,this.MonthlyPayment,this.LicenseTypeId,this.CountryId,this.Price,this.ModifiedDate}); LicensePrice.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Country = JsonConverters.fromJson(json['Country'],'Country',context!); MonthlyPayment = json['MonthlyPayment']; LicenseTypeId = json['LicenseTypeId']; CountryId = json['CountryId']; Price = json['Price']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); return this; } Map toJson() => super.toJson()..addAll({ 'Country': JsonConverters.toJson(Country,'Country',context!), 'MonthlyPayment': MonthlyPayment, 'LicenseTypeId': LicenseTypeId, 'CountryId': CountryId, 'Price': Price, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!) }); getTypeName() => "LicensePrice"; TypeContext? context = _ctx; } class LicenseType extends BaseModel implements IConvertible { // @Ignore() List? LicenseItems; // @Ignore() List? Prices; // @Ignore() int? PeriodOfNoticeDays; // @Ignore() LicenseType? NextLicenseOption; // @Required() String? Name; // @Required() String? Description; // @Required() bool? ExtraLicenseOption; DateTime? ModifiedDate; int? Id; LicenseType({this.LicenseItems,this.Prices,this.PeriodOfNoticeDays,this.NextLicenseOption,this.Name,this.Description,this.ExtraLicenseOption,this.ModifiedDate,this.Id}); LicenseType.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); LicenseItems = JsonConverters.fromJson(json['LicenseItems'],'List',context!); Prices = JsonConverters.fromJson(json['Prices'],'List',context!); PeriodOfNoticeDays = json['PeriodOfNoticeDays']; NextLicenseOption = JsonConverters.fromJson(json['NextLicenseOption'],'LicenseType',context!); Name = json['Name']; Description = json['Description']; ExtraLicenseOption = json['ExtraLicenseOption']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); Id = json['Id']; return this; } Map toJson() => super.toJson()..addAll({ 'LicenseItems': JsonConverters.toJson(LicenseItems,'List',context!), 'Prices': JsonConverters.toJson(Prices,'List',context!), 'PeriodOfNoticeDays': PeriodOfNoticeDays, 'NextLicenseOption': JsonConverters.toJson(NextLicenseOption,'LicenseType',context!), 'Name': Name, 'Description': Description, 'ExtraLicenseOption': ExtraLicenseOption, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'Id': Id }); getTypeName() => "LicenseType"; TypeContext? context = _ctx; } class License extends BaseModel implements IConvertible { LicenseType? Type; // @Required() String? CompanyId; int? Id; // @Required() int? TypeId; // @Required() DateTime? ValidFrom; // @Required() DateTime? ValidTo; // @Required() bool? Active; // @Required() DateTime? Updated; // @Required() DateTime? Created; DateTime? ModifiedDate; String? MetaData; License({this.Type,this.CompanyId,this.Id,this.TypeId,this.ValidFrom,this.ValidTo,this.Active,this.Updated,this.Created,this.ModifiedDate,this.MetaData}); License.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Type = JsonConverters.fromJson(json['Type'],'LicenseType',context!); CompanyId = json['CompanyId']; Id = json['Id']; TypeId = json['TypeId']; ValidFrom = JsonConverters.fromJson(json['ValidFrom'],'DateTime',context!); ValidTo = JsonConverters.fromJson(json['ValidTo'],'DateTime',context!); Active = json['Active']; Updated = JsonConverters.fromJson(json['Updated'],'DateTime',context!); Created = JsonConverters.fromJson(json['Created'],'DateTime',context!); ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); MetaData = json['MetaData']; return this; } Map toJson() => super.toJson()..addAll({ 'Type': JsonConverters.toJson(Type,'LicenseType',context!), 'CompanyId': CompanyId, 'Id': Id, 'TypeId': TypeId, 'ValidFrom': JsonConverters.toJson(ValidFrom,'DateTime',context!), 'ValidTo': JsonConverters.toJson(ValidTo,'DateTime',context!), 'Active': Active, 'Updated': JsonConverters.toJson(Updated,'DateTime',context!), 'Created': JsonConverters.toJson(Created,'DateTime',context!), 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'MetaData': MetaData }); getTypeName() => "License"; TypeContext? context = _ctx; } class LicenseItemsResponse implements IConvertible { int? Id; String? Name; int? AllowedItems; LicenseItemsResponse({this.Id,this.Name,this.AllowedItems}); LicenseItemsResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Name = json['Name']; AllowedItems = json['AllowedItems']; return this; } Map toJson() => { 'Id': Id, 'Name': Name, 'AllowedItems': AllowedItems }; getTypeName() => "LicenseItemsResponse"; TypeContext? context = _ctx; } class LicenseTypeQueryResponse implements IConvertible { /** * The license type id */ // @ApiMember(Description="The license type id") int? Id; /** * The license type name */ // @ApiMember(Description="The license type name") String? Name; /** * The license type description */ // @ApiMember(Description="The license type description") String? Description; /** * 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.") bool? IsExtraLicenseOption; /** * The period of notice for the license in days. */ // @ApiMember(Description="The period of notice for the license in days.") int? PeriodOfNoticeDays; /** * The license items for the license type */ // @ApiMember(Description="The license items for the license type") List? Items; /** * The license prices in each country for the license type */ // @ApiMember(Description="The license prices in each country for the license type") List? Prices; LicenseTypeQueryResponse({this.Id,this.Name,this.Description,this.IsExtraLicenseOption,this.PeriodOfNoticeDays,this.Items,this.Prices}); LicenseTypeQueryResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Name = json['Name']; Description = json['Description']; IsExtraLicenseOption = json['IsExtraLicenseOption']; PeriodOfNoticeDays = json['PeriodOfNoticeDays']; Items = JsonConverters.fromJson(json['Items'],'List',context!); Prices = JsonConverters.fromJson(json['Prices'],'List',context!); return this; } Map toJson() => { 'Id': Id, 'Name': Name, 'Description': Description, 'IsExtraLicenseOption': IsExtraLicenseOption, 'PeriodOfNoticeDays': PeriodOfNoticeDays, 'Items': JsonConverters.toJson(Items,'List',context!), 'Prices': JsonConverters.toJson(Prices,'List',context!) }; getTypeName() => "LicenseTypeQueryResponse"; TypeContext? context = _ctx; } class CompanyLicenseQueryResponse implements IConvertible { int? Id; int? TypeId; LicenseTypeQueryResponse? Type; DateTime? ValidFrom; DateTime? ValidTo; String? MetaData; bool? Active; bool? Canceled; DateTime? Updated; DateTime? Created; CompanyLicenseQueryResponse({this.Id,this.TypeId,this.Type,this.ValidFrom,this.ValidTo,this.MetaData,this.Active,this.Canceled,this.Updated,this.Created}); CompanyLicenseQueryResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; TypeId = json['TypeId']; Type = JsonConverters.fromJson(json['Type'],'LicenseTypeQueryResponse',context!); ValidFrom = JsonConverters.fromJson(json['ValidFrom'],'DateTime',context!); ValidTo = JsonConverters.fromJson(json['ValidTo'],'DateTime',context!); MetaData = json['MetaData']; Active = json['Active']; Canceled = json['Canceled']; Updated = JsonConverters.fromJson(json['Updated'],'DateTime',context!); Created = JsonConverters.fromJson(json['Created'],'DateTime',context!); return this; } Map toJson() => { 'Id': Id, 'TypeId': TypeId, 'Type': JsonConverters.toJson(Type,'LicenseTypeQueryResponse',context!), 'ValidFrom': JsonConverters.toJson(ValidFrom,'DateTime',context!), 'ValidTo': JsonConverters.toJson(ValidTo,'DateTime',context!), 'MetaData': MetaData, 'Active': Active, 'Canceled': Canceled, 'Updated': JsonConverters.toJson(Updated,'DateTime',context!), 'Created': JsonConverters.toJson(Created,'DateTime',context!) }; getTypeName() => "CompanyLicenseQueryResponse"; TypeContext? context = _ctx; } // @Route("/licenses/company", "GET") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) // @ValidateRequest(Validator="IsAuthenticated") class CompanyLicenseQuery extends QueryDb2 implements IReturn>, IConvertible, IGet { /** * 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.") String? CompanyId; /** * If you want to include the connected license items */ // @ApiMember(DataType="boolean", Description="If you want to include the connected license items", ParameterType="query") bool? OnlyActiveLicenses; /** * What country you want to list the prices for */ // @ApiMember(DataType="string", Description="What country you want to list the prices for") String? CountryId; /** * Search by the Meta data information on the license */ // @ApiMember(DataType="string", Description="Search by the Meta data information on the license") String? MetaData; /** * Id of the license type */ // @ApiMember(Description="Id of the license type") int? TypeId; /** * If you want to only select Extra license options */ // @ApiMember(DataType="boolean", Description="If you want to only select Extra license options", ParameterType="query") bool? IsExtraLicenseOption; /** * If you want to include the connected license items */ // @ApiMember(DataType="boolean", Description="If you want to include the connected license items", ParameterType="query") bool? IncludeLicenseItems; /** * If you want to include the connected licens prices */ // @ApiMember(DataType="boolean", Description="If you want to include the connected licens prices", ParameterType="query") bool? IncludeLicensePrices; ResponseStatus? ResponseStatus; CompanyLicenseQuery({this.CompanyId,this.OnlyActiveLicenses,this.CountryId,this.MetaData,this.TypeId,this.IsExtraLicenseOption,this.IncludeLicenseItems,this.IncludeLicensePrices,this.ResponseStatus}); CompanyLicenseQuery.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); CompanyId = json['CompanyId']; OnlyActiveLicenses = json['OnlyActiveLicenses']; CountryId = json['CountryId']; MetaData = json['MetaData']; TypeId = json['TypeId']; IsExtraLicenseOption = json['IsExtraLicenseOption']; IncludeLicenseItems = json['IncludeLicenseItems']; IncludeLicensePrices = json['IncludeLicensePrices']; ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); return this; } Map toJson() => super.toJson()..addAll({ 'CompanyId': CompanyId, 'OnlyActiveLicenses': OnlyActiveLicenses, 'CountryId': CountryId, 'MetaData': MetaData, 'TypeId': TypeId, 'IsExtraLicenseOption': IsExtraLicenseOption, 'IncludeLicenseItems': IncludeLicenseItems, 'IncludeLicensePrices': IncludeLicensePrices, 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!) }); createResponse() => QueryResponse(); getResponseTypeName() => "QueryResponse"; getTypeName() => "CompanyLicenseQuery"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: { 'BaseModel': TypeInfo(TypeOf.Class, create:() => BaseModel()), 'Currency': TypeInfo(TypeOf.Enum, enumValues:Currency.values), 'Country': TypeInfo(TypeOf.Class, create:() => Country()), 'LicenseTypeItem': TypeInfo(TypeOf.Class, create:() => LicenseTypeItem()), 'LicensePrice': TypeInfo(TypeOf.Class, create:() => LicensePrice()), 'LicenseType': TypeInfo(TypeOf.Class, create:() => LicenseType()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'License': TypeInfo(TypeOf.Class, create:() => License()), 'LicenseItemsResponse': TypeInfo(TypeOf.Class, create:() => LicenseItemsResponse()), 'LicenseTypeQueryResponse': TypeInfo(TypeOf.Class, create:() => LicenseTypeQueryResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'CompanyLicenseQueryResponse': TypeInfo(TypeOf.Class, create:() => CompanyLicenseQueryResponse()), 'QueryResponse': TypeInfo(TypeOf.Class, create:() => QueryResponse()), 'CompanyLicenseQuery': TypeInfo(TypeOf.Class, create:() => CompanyLicenseQuery()), 'List': TypeInfo(TypeOf.Class, create:() => []), });