BokaMera.API.Host

<back to all web services

GetAllBookingQueueForUser

Requires Authentication
The following routes are available for this service:
GET/bookinguserqueue/userGet all queue items for the logged in user
import 'package:servicestack/servicestack.dart';

class BookingUserQueuePriceResponse implements IConvertible
{
    String? CompanyId;
    int? Id;
    int? BookingUserQueueId;
    int? ServicePriceId;
    int? Quantity;

    BookingUserQueuePriceResponse({this.CompanyId,this.Id,this.BookingUserQueueId,this.ServicePriceId,this.Quantity});
    BookingUserQueuePriceResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CompanyId = json['CompanyId'];
        Id = json['Id'];
        BookingUserQueueId = json['BookingUserQueueId'];
        ServicePriceId = json['ServicePriceId'];
        Quantity = json['Quantity'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CompanyId': CompanyId,
        'Id': Id,
        'BookingUserQueueId': BookingUserQueueId,
        'ServicePriceId': ServicePriceId,
        'Quantity': Quantity
    };

    getTypeName() => "BookingUserQueuePriceResponse";
    TypeContext? context = _ctx;
}

class GroupBookingSettings implements IConvertible
{
    bool? Active;
    int? Min;
    int? Max;

    GroupBookingSettings({this.Active,this.Min,this.Max});
    GroupBookingSettings.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Active = json['Active'];
        Min = json['Min'];
        Max = json['Max'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Active': Active,
        'Min': Min,
        'Max': Max
    };

    getTypeName() => "GroupBookingSettings";
    TypeContext? context = _ctx;
}

class MultipleResourceSettings implements IConvertible
{
    bool? Active;
    int? Min;
    int? Max;

    MultipleResourceSettings({this.Active,this.Min,this.Max});
    MultipleResourceSettings.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Active = json['Active'];
        Min = json['Min'];
        Max = json['Max'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Active': Active,
        'Min': Min,
        'Max': Max
    };

    getTypeName() => "MultipleResourceSettings";
    TypeContext? context = _ctx;
}

class ServiceInfoResponse implements IConvertible
{
    int? Id;
    String? Name;
    String? Description;
    Uri? ImageUrl;
    int? LengthInMinutes;
    int? MaxNumberOfSpotsPerBooking;
    int? MinNumberOfSpotsPerBooking;
    GroupBookingSettings? GroupBooking;
    MultipleResourceSettings? MultipleResource;
    bool? IsGroupBooking;
    bool? IsPaymentEnabled;

    ServiceInfoResponse({this.Id,this.Name,this.Description,this.ImageUrl,this.LengthInMinutes,this.MaxNumberOfSpotsPerBooking,this.MinNumberOfSpotsPerBooking,this.GroupBooking,this.MultipleResource,this.IsGroupBooking,this.IsPaymentEnabled});
    ServiceInfoResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Name = json['Name'];
        Description = json['Description'];
        ImageUrl = JsonConverters.fromJson(json['ImageUrl'],'Uri',context!);
        LengthInMinutes = json['LengthInMinutes'];
        MaxNumberOfSpotsPerBooking = json['MaxNumberOfSpotsPerBooking'];
        MinNumberOfSpotsPerBooking = json['MinNumberOfSpotsPerBooking'];
        GroupBooking = JsonConverters.fromJson(json['GroupBooking'],'GroupBookingSettings',context!);
        MultipleResource = JsonConverters.fromJson(json['MultipleResource'],'MultipleResourceSettings',context!);
        IsGroupBooking = json['IsGroupBooking'];
        IsPaymentEnabled = json['IsPaymentEnabled'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Name': Name,
        'Description': Description,
        'ImageUrl': JsonConverters.toJson(ImageUrl,'Uri',context!),
        'LengthInMinutes': LengthInMinutes,
        'MaxNumberOfSpotsPerBooking': MaxNumberOfSpotsPerBooking,
        'MinNumberOfSpotsPerBooking': MinNumberOfSpotsPerBooking,
        'GroupBooking': JsonConverters.toJson(GroupBooking,'GroupBookingSettings',context!),
        'MultipleResource': JsonConverters.toJson(MultipleResource,'MultipleResourceSettings',context!),
        'IsGroupBooking': IsGroupBooking,
        'IsPaymentEnabled': IsPaymentEnabled
    };

    getTypeName() => "ServiceInfoResponse";
    TypeContext? context = _ctx;
}

class CompanyInfoResponse implements IConvertible
{
    String? Id;
    String? Name;
    Uri? LogoType;
    String? Category;
    String? Street1;
    String? Street2;
    String? ZipCode;
    String? City;
    String? CountryId;
    String? Longitude;
    String? Latitude;
    String? Phone;
    String? Email;
    String? HomePage;
    String? SitePath;

    CompanyInfoResponse({this.Id,this.Name,this.LogoType,this.Category,this.Street1,this.Street2,this.ZipCode,this.City,this.CountryId,this.Longitude,this.Latitude,this.Phone,this.Email,this.HomePage,this.SitePath});
    CompanyInfoResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Name = json['Name'];
        LogoType = JsonConverters.fromJson(json['LogoType'],'Uri',context!);
        Category = json['Category'];
        Street1 = json['Street1'];
        Street2 = json['Street2'];
        ZipCode = json['ZipCode'];
        City = json['City'];
        CountryId = json['CountryId'];
        Longitude = json['Longitude'];
        Latitude = json['Latitude'];
        Phone = json['Phone'];
        Email = json['Email'];
        HomePage = json['HomePage'];
        SitePath = json['SitePath'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Name': Name,
        'LogoType': JsonConverters.toJson(LogoType,'Uri',context!),
        'Category': Category,
        'Street1': Street1,
        'Street2': Street2,
        'ZipCode': ZipCode,
        'City': City,
        'CountryId': CountryId,
        'Longitude': Longitude,
        'Latitude': Latitude,
        'Phone': Phone,
        'Email': Email,
        'HomePage': HomePage,
        'SitePath': SitePath
    };

    getTypeName() => "CompanyInfoResponse";
    TypeContext? context = _ctx;
}

class BookingUserQueueItemResponse implements IConvertible
{
    int? BookingUserQueueId;
    String? CompanyId;
    String? CustomerId;
    int? ServiceId;
    DateTime? From;
    DateTime? To;
    int? StatusCode;
    String? StatusName;
    DateTime? SendConfirmationTime;
    List<BookingUserQueuePriceResponse>? Quantities;
    ServiceInfoResponse? Service;
    CompanyInfoResponse? Company;

    BookingUserQueueItemResponse({this.BookingUserQueueId,this.CompanyId,this.CustomerId,this.ServiceId,this.From,this.To,this.StatusCode,this.StatusName,this.SendConfirmationTime,this.Quantities,this.Service,this.Company});
    BookingUserQueueItemResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        BookingUserQueueId = json['BookingUserQueueId'];
        CompanyId = json['CompanyId'];
        CustomerId = json['CustomerId'];
        ServiceId = json['ServiceId'];
        From = JsonConverters.fromJson(json['From'],'DateTime',context!);
        To = JsonConverters.fromJson(json['To'],'DateTime',context!);
        StatusCode = json['StatusCode'];
        StatusName = json['StatusName'];
        SendConfirmationTime = JsonConverters.fromJson(json['SendConfirmationTime'],'DateTime',context!);
        Quantities = JsonConverters.fromJson(json['Quantities'],'List<BookingUserQueuePriceResponse>',context!);
        Service = JsonConverters.fromJson(json['Service'],'ServiceInfoResponse',context!);
        Company = JsonConverters.fromJson(json['Company'],'CompanyInfoResponse',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'BookingUserQueueId': BookingUserQueueId,
        'CompanyId': CompanyId,
        'CustomerId': CustomerId,
        'ServiceId': ServiceId,
        'From': JsonConverters.toJson(From,'DateTime',context!),
        'To': JsonConverters.toJson(To,'DateTime',context!),
        'StatusCode': StatusCode,
        'StatusName': StatusName,
        'SendConfirmationTime': JsonConverters.toJson(SendConfirmationTime,'DateTime',context!),
        'Quantities': JsonConverters.toJson(Quantities,'List<BookingUserQueuePriceResponse>',context!),
        'Service': JsonConverters.toJson(Service,'ServiceInfoResponse',context!),
        'Company': JsonConverters.toJson(Company,'CompanyInfoResponse',context!)
    };

    getTypeName() => "BookingUserQueueItemResponse";
    TypeContext? context = _ctx;
}

class GetAllBookingQueueForUserResponse implements IConvertible
{
    List<BookingUserQueueItemResponse>? BookingUserQueueResponseList;
    ResponseStatus? ResponseStatus;

    GetAllBookingQueueForUserResponse({this.BookingUserQueueResponseList,this.ResponseStatus});
    GetAllBookingQueueForUserResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        BookingUserQueueResponseList = JsonConverters.fromJson(json['BookingUserQueueResponseList'],'List<BookingUserQueueItemResponse>',context!);
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'BookingUserQueueResponseList': JsonConverters.toJson(BookingUserQueueResponseList,'List<BookingUserQueueItemResponse>',context!),
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "GetAllBookingQueueForUserResponse";
    TypeContext? context = _ctx;
}

// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ValidateRequest(Validator="IsAuthenticated")
class GetAllBookingQueueForUser implements IConvertible
{
    /**
    * The user id for your profile. If not set it will set it automatically from your session
    */
    // @ApiMember(Description="The user id for your profile. If not set it will set it automatically from your session")
    String? UserId;

    DateTime? DateStart;
    DateTime? DateEnd;
    /**
    * If you want to include the service information for the booking
    */
    // @ApiMember(DataType="boolean", Description="If you want to include the service information for the booking", ParameterType="query")
    bool? IncludeServiceInformation;

    /**
    * If you want to include the company information for the booking
    */
    // @ApiMember(DataType="boolean", Description="If you want to include the company information for the booking", ParameterType="query")
    bool? IncludeCompanyInformation;

    GetAllBookingQueueForUser({this.UserId,this.DateStart,this.DateEnd,this.IncludeServiceInformation,this.IncludeCompanyInformation});
    GetAllBookingQueueForUser.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        UserId = json['UserId'];
        DateStart = JsonConverters.fromJson(json['DateStart'],'DateTime',context!);
        DateEnd = JsonConverters.fromJson(json['DateEnd'],'DateTime',context!);
        IncludeServiceInformation = json['IncludeServiceInformation'];
        IncludeCompanyInformation = json['IncludeCompanyInformation'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'UserId': UserId,
        'DateStart': JsonConverters.toJson(DateStart,'DateTime',context!),
        'DateEnd': JsonConverters.toJson(DateEnd,'DateTime',context!),
        'IncludeServiceInformation': IncludeServiceInformation,
        'IncludeCompanyInformation': IncludeCompanyInformation
    };

    getTypeName() => "GetAllBookingQueueForUser";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: <String, TypeInfo> {
    'BookingUserQueuePriceResponse': TypeInfo(TypeOf.Class, create:() => BookingUserQueuePriceResponse()),
    'GroupBookingSettings': TypeInfo(TypeOf.Class, create:() => GroupBookingSettings()),
    'MultipleResourceSettings': TypeInfo(TypeOf.Class, create:() => MultipleResourceSettings()),
    'ServiceInfoResponse': TypeInfo(TypeOf.Class, create:() => ServiceInfoResponse()),
    'Uri': TypeInfo(TypeOf.Class, create:() => Uri()),
    'CompanyInfoResponse': TypeInfo(TypeOf.Class, create:() => CompanyInfoResponse()),
    'BookingUserQueueItemResponse': TypeInfo(TypeOf.Class, create:() => BookingUserQueueItemResponse()),
    'List<BookingUserQueuePriceResponse>': TypeInfo(TypeOf.Class, create:() => <BookingUserQueuePriceResponse>[]),
    'GetAllBookingQueueForUserResponse': TypeInfo(TypeOf.Class, create:() => GetAllBookingQueueForUserResponse()),
    'List<BookingUserQueueItemResponse>': TypeInfo(TypeOf.Class, create:() => <BookingUserQueueItemResponse>[]),
    'GetAllBookingQueueForUser': TypeInfo(TypeOf.Class, create:() => GetAllBookingQueueForUser()),
});

Dart GetAllBookingQueueForUser DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /bookinguserqueue/user HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"BookingUserQueueResponseList":[{"BookingUserQueueId":0,"ServiceId":0,"StatusCode":0,"StatusName":"String","SendConfirmationTime":"0001-01-01T00:00:00","Quantities":[{"Id":0,"BookingUserQueueId":0,"ServicePriceId":0,"Quantity":0}],"Service":{"Id":0,"Name":"String","Description":"String","LengthInMinutes":0,"MaxNumberOfSpotsPerBooking":0,"MinNumberOfSpotsPerBooking":0,"GroupBooking":{"Active":false,"Min":0,"Max":0},"MultipleResource":{"Active":false,"Min":0,"Max":0},"IsGroupBooking":false,"IsPaymentEnabled":false},"Company":{"Name":"String","Category":"String","Street1":"String","Street2":"String","ZipCode":"String","City":"String","CountryId":"String","Longitude":"String","Latitude":"String","Phone":"String","Email":"String","HomePage":"String","SitePath":"String"}}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}