/* Options: Date: 2024-11-21 11:56:16 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: AddQuantity.* //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; /** * The quantity for booked on this price category */ // @ApiMember(Description="The quantity for booked on this price category") int? Quantity; /** * 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/", "POST") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) // @ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403) // @ValidateRequest(Validator="IsAuthenticated") class AddQuantity implements IReturn, ICompany, IConvertible, IPost { /** * 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; /** * The quantity for booked on this price category */ // @ApiMember(Description="The quantity for booked on this price category", IsRequired=true) int? Quantity; /** * The price */ // @ApiMember(Description="The price") double? Price; /** * The price currency */ // @ApiMember(Description="The price currency") String? CurrencyId; /** * The price category */ // @ApiMember(Description="The price category") String? Category; /** * The price VAT in percent */ // @ApiMember(Description="The price VAT in percent") double? VAT; /** * 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; /** * Any comments to be stored in the event log. */ // @ApiMember(Description="Any comments to be stored in the event log.") String? Comments; AddQuantity({this.CompanyId,this.BookingId,this.Quantity,this.Price,this.CurrencyId,this.Category,this.VAT,this.OccupiesSpot,this.Comments}); AddQuantity.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CompanyId = json['CompanyId']; BookingId = json['BookingId']; Quantity = json['Quantity']; Price = JsonConverters.toDouble(json['Price']); CurrencyId = json['CurrencyId']; Category = json['Category']; VAT = JsonConverters.toDouble(json['VAT']); OccupiesSpot = json['OccupiesSpot']; Comments = json['Comments']; return this; } Map toJson() => { 'CompanyId': CompanyId, 'BookingId': BookingId, 'Quantity': Quantity, 'Price': Price, 'CurrencyId': CurrencyId, 'Category': Category, 'VAT': VAT, 'OccupiesSpot': OccupiesSpot, 'Comments': Comments }; createResponse() => BookedQuantity(); getResponseTypeName() => "BookedQuantity"; getTypeName() => "AddQuantity"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: { 'ICompany': TypeInfo(TypeOf.Interface), 'BookedQuantity': TypeInfo(TypeOf.Class, create:() => BookedQuantity()), 'AddQuantity': TypeInfo(TypeOf.Class, create:() => AddQuantity()), });