/* Options: Date: 2026-02-11 14:25:10 Version: 10.05 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api-staging.bookmore.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: UpdateAllQuantities.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class ICompany { String? CompanyId; } class BookedQuantity implements IConvertible { /** * The quantity Id */ // @ApiMember(Description="The quantity Id") int Id = 0; /** * The quantity for booked on this price category */ // @ApiMember(Description="The quantity for booked on this price category") int Quantity = 0; /** * The price */ // @ApiMember(Description="The price") double? Price; /** * The price bofore rebate codes */ // @ApiMember(Description="The price bofore rebate codes") double? PriceBeforeRebate; /** * The price currency */ // @ApiMember(Description="The price currency") String CurrencyId = ""; /** * The price sign */ // @ApiMember(Description="The price sign") String PriceSign = ""; /** * The price category */ // @ApiMember(Description="The price category") String Category = ""; /** * The price VAT in percent */ // @ApiMember(Description="The price VAT in percent") double? VAT; /** * The price text to display */ // @ApiMember(Description="The price text to display") String PriceText = ""; /** * If the quantity you add should occupy a spot. Default is true. If no it will only be a row that includes price information. */ // @ApiMember(Description="If the quantity you add should occupy a spot. Default is true. If no it will only be a row that includes price information.") bool OccupiesSpot; BookedQuantity({this.Id,this.Quantity,this.Price,this.PriceBeforeRebate,this.CurrencyId,this.PriceSign,this.Category,this.VAT,this.PriceText,this.OccupiesSpot}); BookedQuantity.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Quantity = json['Quantity']; Price = JsonConverters.toDouble(json['Price']); PriceBeforeRebate = JsonConverters.toDouble(json['PriceBeforeRebate']); CurrencyId = json['CurrencyId']; PriceSign = json['PriceSign']; Category = json['Category']; VAT = JsonConverters.toDouble(json['VAT']); PriceText = json['PriceText']; OccupiesSpot = json['OccupiesSpot']; return this; } Map toJson() => { 'Id': Id, 'Quantity': Quantity, 'Price': Price, 'PriceBeforeRebate': PriceBeforeRebate, 'CurrencyId': CurrencyId, 'PriceSign': PriceSign, 'Category': Category, 'VAT': VAT, 'PriceText': PriceText, 'OccupiesSpot': OccupiesSpot }; getTypeName() => "BookedQuantity"; TypeContext? context = _ctx; } // @Route("/bookings/{BookingId}/quantity/", "PUT") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) // @ApiResponse(Description="You have too low privileges to call this service", StatusCode=403) // @ValidateRequest(Validator="IsAuthenticated") class UpdateAllQuantities implements IReturn, ICompany, IConvertible, IPut { /** * 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; /** * Id of the booking */ // @ApiMember(Description="Id of the booking", IsRequired=true, ParameterType="path") int BookingId = 0; /** * Set the number of spots you want to book. You add number of spots per price category. Multiple spots require that the service has GroupBooking enabled. Default is one spot. */ // @ApiMember(Description="Set the number of spots you want to book. You add number of spots per price category. Multiple spots require that the service has GroupBooking enabled. Default is one spot.") List Quantities = []; /** * Any comments to be stored in the event log. */ // @ApiMember(Description="Any comments to be stored in the event log.") String Comments = ""; UpdateAllQuantities({this.CompanyId,this.BookingId,this.Quantities,this.Comments}); UpdateAllQuantities.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CompanyId = json['CompanyId']; BookingId = json['BookingId']; Quantities = JsonConverters.fromJson(json['Quantities'],'List',context!); Comments = json['Comments']; return this; } Map toJson() => { 'CompanyId': CompanyId, 'BookingId': BookingId, 'Quantities': JsonConverters.toJson(Quantities,'List',context!), 'Comments': Comments }; createResponse() => BookedQuantity(); getResponseTypeName() => "BookedQuantity"; getTypeName() => "UpdateAllQuantities"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api_staging.bookmore.com', types: { 'ICompany': TypeInfo(TypeOf.Interface), 'BookedQuantity': TypeInfo(TypeOf.Class, create:() => BookedQuantity()), 'UpdateAllQuantities': TypeInfo(TypeOf.Class, create:() => UpdateAllQuantities()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'QuantityToUpdate': TypeInfo(TypeOf.Class, create:() => QuantityToUpdate()), });