PUT | /bookings/{BookingId}/quantity/{Id} | Update an existing booking quantity | Updates an existing booking quantity if you are authorized to do so. Note: Updating quantity wont updated the number of booked resources. |
---|
import 'package:servicestack/servicestack.dart';
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<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> 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<String, dynamic> 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;
}
// @ValidateRequest(Validator="IsAuthenticated")
// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403)
class UpdateQuantity implements ICompany, IConvertible
{
/**
* 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;
/**
* Id of the quantity
*/
// @ApiMember(Description="Id of the quantity", IsRequired=true, ParameterType="path")
int? Id;
/**
* 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;
/**
* 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 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;
/**
* Any comments to be stored in the event log.
*/
// @ApiMember(Description="Any comments to be stored in the event log.")
String? Comments;
/**
* If you want the amount to be refunded automatically if amount is lower than paid
*/
// @ApiMember(Description="If you want the amount to be refunded automatically if amount is lower than paid")
bool? Refund;
UpdateQuantity({this.CompanyId,this.BookingId,this.Id,this.OccupiesSpot,this.Quantity,this.Price,this.CurrencyId,this.Category,this.VAT,this.Comments,this.Refund});
UpdateQuantity.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CompanyId = json['CompanyId'];
BookingId = json['BookingId'];
Id = json['Id'];
OccupiesSpot = json['OccupiesSpot'];
Quantity = json['Quantity'];
Price = JsonConverters.toDouble(json['Price']);
CurrencyId = json['CurrencyId'];
Category = json['Category'];
VAT = JsonConverters.toDouble(json['VAT']);
Comments = json['Comments'];
Refund = json['Refund'];
return this;
}
Map<String, dynamic> toJson() => {
'CompanyId': CompanyId,
'BookingId': BookingId,
'Id': Id,
'OccupiesSpot': OccupiesSpot,
'Quantity': Quantity,
'Price': Price,
'CurrencyId': CurrencyId,
'Category': Category,
'VAT': VAT,
'Comments': Comments,
'Refund': Refund
};
getTypeName() => "UpdateQuantity";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: <String, TypeInfo> {
'BookedQuantity': TypeInfo(TypeOf.Class, create:() => BookedQuantity()),
'UpdateQuantity': TypeInfo(TypeOf.Class, create:() => UpdateQuantity()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /bookings/{BookingId}/quantity/{Id} HTTP/1.1
Host: api.bokamera.se
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","BookingId":0,"Id":0,"OccupiesSpot":false,"Quantity":0,"Price":0,"CurrencyId":"String","Category":"String","VAT":0,"Comments":"String","Refund":false}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Id":0,"Quantity":0,"Price":0,"PriceBeforeRebate":0,"CurrencyId":"String","PriceSign":"String","Category":"String","VAT":0,"PriceText":"String","OccupiesSpot":false}