Server

<back to all web services

UpdateAppointment

Requires Authentication
The following routes are available for this service:
PUT/Appointment
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class UpdateAppointmentResponse implements IConvertible
{
    ResponseStatus? responseStatus;

    UpdateAppointmentResponse({this.responseStatus});
    UpdateAppointmentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

// @DataContract
class AppointmentStoreUser implements IConvertible
{
    // @DataMember(Name="MonteurGuid")
    String? MonteurGuid;

    AppointmentStoreUser({this.MonteurGuid});
    AppointmentStoreUser.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        MonteurGuid = json['storeUserId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'monteurGuid': MonteurGuid
    };

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

// @DataContract
class AppointmentNutzeinheit implements IConvertible
{
    // @DataMember(Name="NutzeinheitGuid")
    String? NutzeinheitGuid;

    AppointmentNutzeinheit({this.NutzeinheitGuid});
    AppointmentNutzeinheit.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        NutzeinheitGuid = json['nutzeinheitGuid'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'nutzeinheitGuid': NutzeinheitGuid
    };

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

// @DataContract
class Appointment implements IConvertible
{
    // @DataMember(Name="Guid")
    String? Guid;

    // @DataMember(Name="Von")
    DateTime? Von;

    // @DataMember(Name="Bis")
    DateTime? Bis;

    // @DataMember(Name="Monteure")
    List<AppointmentStoreUser>? Monteure;

    // @DataMember(Name="Nutzeinheiten")
    List<AppointmentNutzeinheit>? Nutzeinheiten;

    Appointment({this.Guid,this.Von,this.Bis,this.Monteure,this.Nutzeinheiten});
    Appointment.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Guid = json['guid'];
        Von = JsonConverters.fromJson(json['from'],'DateTime',context!);
        Bis = JsonConverters.fromJson(json['to'],'DateTime',context!);
        Monteure = JsonConverters.fromJson(json['appointmentStoreUsers'],'List<AppointmentStoreUser>',context!);
        Nutzeinheiten = JsonConverters.fromJson(json['appointmentNutzeinheiten'],'List<AppointmentNutzeinheit>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'guid': Guid,
        'von': JsonConverters.toJson(Von,'DateTime',context!),
        'bis': JsonConverters.toJson(Bis,'DateTime',context!),
        'monteure': JsonConverters.toJson(Monteure,'List<AppointmentStoreUser>',context!),
        'nutzeinheiten': JsonConverters.toJson(Nutzeinheiten,'List<AppointmentNutzeinheit>',context!)
    };

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

// @DataContract
class UpdateAppointment implements IConvertible
{
    // @DataMember(Name="Appointment")
    Appointment? Appointment;

    UpdateAppointment({this.Appointment});
    UpdateAppointment.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'appointment': JsonConverters.toJson(Appointment,'Appointment',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'mi_waerme_servamw.eras_online.de', types: <String, TypeInfo> {
    'UpdateAppointmentResponse': TypeInfo(TypeOf.Class, create:() => UpdateAppointmentResponse()),
    'AppointmentStoreUser': TypeInfo(TypeOf.Class, create:() => AppointmentStoreUser()),
    'AppointmentNutzeinheit': TypeInfo(TypeOf.Class, create:() => AppointmentNutzeinheit()),
    'Appointment': TypeInfo(TypeOf.Class, create:() => Appointment()),
    'List<AppointmentStoreUser>': TypeInfo(TypeOf.Class, create:() => <AppointmentStoreUser>[]),
    'List<AppointmentNutzeinheit>': TypeInfo(TypeOf.Class, create:() => <AppointmentNutzeinheit>[]),
    'UpdateAppointment': TypeInfo(TypeOf.Class, create:() => UpdateAppointment()),
});

Dart UpdateAppointment DTOs

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

HTTP + JSV

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

PUT /Appointment HTTP/1.1 
Host: mi-waerme-servamw.eras-online.de 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Appointment: 
	{
		Guid: 00000000000000000000000000000000,
		Von: 0001-01-01T00:00:00Z,
		Bis: 0001-01-01T00:00:00Z
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}