Server

<back to all web services

AddOrUpdateAbrechnungseinheit

Requires Authentication
The following routes are available for this service:
POST/AddUpdateAbrechnungseinheit
<?php namespace dtos;

use DateTime;
use Exception;
use DateInterval;
use JsonSerializable;
use ServiceStack\{IReturn,IReturnVoid,IGet,IPost,IPut,IDelete,IPatch,IMeta,IHasSessionId,IHasBearerToken,IHasVersion};
use ServiceStack\{ICrud,ICreateDb,IUpdateDb,IPatchDb,IDeleteDb,ISaveDb,AuditBase,QueryDb,QueryDb2,QueryData,QueryData2,QueryResponse};
use ServiceStack\{ResponseStatus,ResponseError,EmptyResponse,IdResponse,ArrayList,KeyValuePair2,StringResponse,StringsResponse,Tuple2,Tuple3,ByteArray};
use ServiceStack\{JsonConverters,Returns,TypeContext};


class AddOrUpdateAbrechnungseinheitResponse implements JsonSerializable
{
    public function __construct(
        /** @var ResponseStatus|null */
        public ?ResponseStatus $responseStatus=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['responseStatus'])) $this->responseStatus = JsonConverters::from('ResponseStatus', $o['responseStatus']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->responseStatus)) $o['responseStatus'] = JsonConverters::to('ResponseStatus', $this->responseStatus);
        return empty($o) ? new class(){} : $o;
    }
}

// @DataContract
class Customer implements JsonSerializable
{
    public function __construct(
        // @DataMember(Name="Guid")
        /** @var string */
        public string $Guid='',

        // @DataMember(Name="Name")
        /** @var string|null */
        public ?string $Name=null,

        // @DataMember(Name="Name2")
        /** @var string|null */
        public ?string $Name2=null,

        // @DataMember(Name="Name3")
        /** @var string|null */
        public ?string $Name3=null,

        // @DataMember(Name="Kundennummer")
        /** @var string|null */
        public ?string $Kundennummer=null,

        // @DataMember(Name="Notiz")
        /** @var string|null */
        public ?string $Notiz=null,

        // @DataMember(Name="Anrede")
        /** @var string|null */
        public ?string $Anrede=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Guid'])) $this->Guid = $o['Guid'];
        if (isset($o['Name'])) $this->Name = $o['Name'];
        if (isset($o['Name2'])) $this->Name2 = $o['Name2'];
        if (isset($o['Name3'])) $this->Name3 = $o['Name3'];
        if (isset($o['Kundennummer'])) $this->Kundennummer = $o['Kundennummer'];
        if (isset($o['Notiz'])) $this->Notiz = $o['Notiz'];
        if (isset($o['Anrede'])) $this->Anrede = $o['Anrede'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Guid)) $o['Guid'] = $this->Guid;
        if (isset($this->Name)) $o['Name'] = $this->Name;
        if (isset($this->Name2)) $o['Name2'] = $this->Name2;
        if (isset($this->Name3)) $o['Name3'] = $this->Name3;
        if (isset($this->Kundennummer)) $o['Kundennummer'] = $this->Kundennummer;
        if (isset($this->Notiz)) $o['Notiz'] = $this->Notiz;
        if (isset($this->Anrede)) $o['Anrede'] = $this->Anrede;
        return empty($o) ? new class(){} : $o;
    }
}

// @DataContract
class Address implements JsonSerializable
{
    public function __construct(
        // @DataMember(Name="Guid")
        /** @var string */
        public string $Guid='',

        // @DataMember(Name="Straße")
        /** @var string|null */
        public ?string $Stra_e=null,

        // @DataMember(Name="Straße2")
        /** @var string|null */
        public ?string $Stra_e2=null,

        // @DataMember(Name="Hausnummer")
        /** @var string|null */
        public ?string $Hausnummer=null,

        // @DataMember(Name="Postleitzahl")
        /** @var string|null */
        public ?string $Postleitzahl=null,

        // @DataMember(Name="Ort")
        /** @var string|null */
        public ?string $Ort=null,

        // @DataMember(Name="Postfach")
        /** @var string|null */
        public ?string $Postfach=null,

        // @DataMember(Name="Adresszusatz")
        /** @var string|null */
        public ?string $Adresszusatz=null,

        // @DataMember(Name="Breitengrad")
        /** @var float */
        public float $Breitengrad=0.0,

        // @DataMember(Name="Laengengrad")
        /** @var float */
        public float $Laengengrad=0.0
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Guid'])) $this->Guid = $o['Guid'];
        if (isset($o['Stra_e'])) $this->Stra_e = $o['Stra_e'];
        if (isset($o['Stra_e2'])) $this->Stra_e2 = $o['Stra_e2'];
        if (isset($o['Hausnummer'])) $this->Hausnummer = $o['Hausnummer'];
        if (isset($o['Postleitzahl'])) $this->Postleitzahl = $o['Postleitzahl'];
        if (isset($o['Ort'])) $this->Ort = $o['Ort'];
        if (isset($o['Postfach'])) $this->Postfach = $o['Postfach'];
        if (isset($o['Adresszusatz'])) $this->Adresszusatz = $o['Adresszusatz'];
        if (isset($o['Breitengrad'])) $this->Breitengrad = $o['Breitengrad'];
        if (isset($o['Laengengrad'])) $this->Laengengrad = $o['Laengengrad'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Guid)) $o['Guid'] = $this->Guid;
        if (isset($this->Stra_e)) $o['Stra_e'] = $this->Stra_e;
        if (isset($this->Stra_e2)) $o['Stra_e2'] = $this->Stra_e2;
        if (isset($this->Hausnummer)) $o['Hausnummer'] = $this->Hausnummer;
        if (isset($this->Postleitzahl)) $o['Postleitzahl'] = $this->Postleitzahl;
        if (isset($this->Ort)) $o['Ort'] = $this->Ort;
        if (isset($this->Postfach)) $o['Postfach'] = $this->Postfach;
        if (isset($this->Adresszusatz)) $o['Adresszusatz'] = $this->Adresszusatz;
        if (isset($this->Breitengrad)) $o['Breitengrad'] = $this->Breitengrad;
        if (isset($this->Laengengrad)) $o['Laengengrad'] = $this->Laengengrad;
        return empty($o) ? new class(){} : $o;
    }
}

// @DataContract
class PersonAbrechnungseinheit implements JsonSerializable
{
    public function __construct(
        // @DataMember(Name="Guid")
        /** @var string */
        public string $Guid='',

        // @DataMember(Name="LastModified")
        /** @var DateTime|null */
        public ?DateTime $LastModified=null,

        // @DataMember(Name="Anmerkung")
        /** @var string|null */
        public ?string $Anmerkung=null,

        // @DataMember(Name="PersonGuid")
        /** @var string */
        public string $PersonGuid='',

        // @DataMember(Name="BetrieblichePosition")
        /** @var string|null */
        public ?string $BetrieblichePosition=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Guid'])) $this->Guid = $o['Guid'];
        if (isset($o['LastModified'])) $this->LastModified = JsonConverters::from('DateTime', $o['LastModified']);
        if (isset($o['Anmerkung'])) $this->Anmerkung = $o['Anmerkung'];
        if (isset($o['PersonGuid'])) $this->PersonGuid = $o['PersonGuid'];
        if (isset($o['BetrieblichePosition'])) $this->BetrieblichePosition = $o['BetrieblichePosition'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Guid)) $o['Guid'] = $this->Guid;
        if (isset($this->LastModified)) $o['LastModified'] = JsonConverters::to('DateTime', $this->LastModified);
        if (isset($this->Anmerkung)) $o['Anmerkung'] = $this->Anmerkung;
        if (isset($this->PersonGuid)) $o['PersonGuid'] = $this->PersonGuid;
        if (isset($this->BetrieblichePosition)) $o['BetrieblichePosition'] = $this->BetrieblichePosition;
        return empty($o) ? new class(){} : $o;
    }
}

// @DataContract
class PersonCommunication implements JsonSerializable
{
    public function __construct(
        // @DataMember(Name="Guid")
        /** @var string */
        public string $Guid='',

        // @DataMember(Name="LastModified")
        /** @var DateTime|null */
        public ?DateTime $LastModified=null,

        // @DataMember(Name="Adresse")
        /** @var string|null */
        public ?string $Adresse=null,

        // @DataMember(Name="Anmerkung")
        /** @var string|null */
        public ?string $Anmerkung=null,

        // @DataMember(Name="KommunikationsFunktionGuid")
        /** @var string */
        public string $KommunikationsFunktionGuid=''
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Guid'])) $this->Guid = $o['Guid'];
        if (isset($o['LastModified'])) $this->LastModified = JsonConverters::from('DateTime', $o['LastModified']);
        if (isset($o['Adresse'])) $this->Adresse = $o['Adresse'];
        if (isset($o['Anmerkung'])) $this->Anmerkung = $o['Anmerkung'];
        if (isset($o['KommunikationsFunktionGuid'])) $this->KommunikationsFunktionGuid = $o['KommunikationsFunktionGuid'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Guid)) $o['Guid'] = $this->Guid;
        if (isset($this->LastModified)) $o['LastModified'] = JsonConverters::to('DateTime', $this->LastModified);
        if (isset($this->Adresse)) $o['Adresse'] = $this->Adresse;
        if (isset($this->Anmerkung)) $o['Anmerkung'] = $this->Anmerkung;
        if (isset($this->KommunikationsFunktionGuid)) $o['KommunikationsFunktionGuid'] = $this->KommunikationsFunktionGuid;
        return empty($o) ? new class(){} : $o;
    }
}

// @DataContract
class Person implements JsonSerializable
{
    public function __construct(
        // @DataMember(Name="Guid")
        /** @var string */
        public string $Guid='',

        // @DataMember(Name="LastModified")
        /** @var DateTime|null */
        public ?DateTime $LastModified=null,

        // @DataMember(Name="Nachname1")
        /** @var string|null */
        public ?string $Nachname1=null,

        // @DataMember(Name="Nachname2")
        /** @var string|null */
        public ?string $Nachname2=null,

        // @DataMember(Name="Nachname3")
        /** @var string|null */
        public ?string $Nachname3=null,

        // @DataMember(Name="Vorname1")
        /** @var string|null */
        public ?string $Vorname1=null,

        // @DataMember(Name="Vorname2")
        /** @var string|null */
        public ?string $Vorname2=null,

        // @DataMember(Name="Anmerkung")
        /** @var string|null */
        public ?string $Anmerkung=null,

        // @DataMember(Name="Anrede")
        /** @var string|null */
        public ?string $Anrede=null,

        // @DataMember(Name="Titel")
        /** @var string|null */
        public ?string $Titel=null,

        // @DataMember(Name="PersonKommunikationen")
        /** @var array<PersonCommunication>|null */
        public ?array $PersonKommunikationen=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Guid'])) $this->Guid = $o['Guid'];
        if (isset($o['LastModified'])) $this->LastModified = JsonConverters::from('DateTime', $o['LastModified']);
        if (isset($o['Nachname1'])) $this->Nachname1 = $o['Nachname1'];
        if (isset($o['Nachname2'])) $this->Nachname2 = $o['Nachname2'];
        if (isset($o['Nachname3'])) $this->Nachname3 = $o['Nachname3'];
        if (isset($o['Vorname1'])) $this->Vorname1 = $o['Vorname1'];
        if (isset($o['Vorname2'])) $this->Vorname2 = $o['Vorname2'];
        if (isset($o['Anmerkung'])) $this->Anmerkung = $o['Anmerkung'];
        if (isset($o['Anrede'])) $this->Anrede = $o['Anrede'];
        if (isset($o['Titel'])) $this->Titel = $o['Titel'];
        if (isset($o['PersonKommunikationen'])) $this->PersonKommunikationen = JsonConverters::fromArray('PersonCommunication', $o['PersonKommunikationen']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Guid)) $o['Guid'] = $this->Guid;
        if (isset($this->LastModified)) $o['LastModified'] = JsonConverters::to('DateTime', $this->LastModified);
        if (isset($this->Nachname1)) $o['Nachname1'] = $this->Nachname1;
        if (isset($this->Nachname2)) $o['Nachname2'] = $this->Nachname2;
        if (isset($this->Nachname3)) $o['Nachname3'] = $this->Nachname3;
        if (isset($this->Vorname1)) $o['Vorname1'] = $this->Vorname1;
        if (isset($this->Vorname2)) $o['Vorname2'] = $this->Vorname2;
        if (isset($this->Anmerkung)) $o['Anmerkung'] = $this->Anmerkung;
        if (isset($this->Anrede)) $o['Anrede'] = $this->Anrede;
        if (isset($this->Titel)) $o['Titel'] = $this->Titel;
        if (isset($this->PersonKommunikationen)) $o['PersonKommunikationen'] = JsonConverters::toArray('PersonCommunication', $this->PersonKommunikationen);
        return empty($o) ? new class(){} : $o;
    }
}

class Abrechnungseinheit implements JsonSerializable
{
    public function __construct(
        // @DataMember(Name="Guid")
        /** @var string */
        public string $Guid='',

        // @DataMember(Name="LastModified")
        /** @var DateTime|null */
        public ?DateTime $LastModified=null,

        // @DataMember(Name="Objektnummer")
        /** @var string|null */
        public ?string $Objektnummer=null,

        // @DataMember(Name="Notiz")
        /** @var string|null */
        public ?string $Notiz=null,

        // @DataMember(Name="NotizIntern")
        /** @var string|null */
        public ?string $NotizIntern=null,

        // @DataMember(Name="NotizLegionellen")
        /** @var string|null */
        public ?string $NotizLegionellen=null,

        // @DataMember(Name="Kunde")
        /** @var Customer|null */
        public ?Customer $Kunde=null,

        // @DataMember(Name="Adresse")
        /** @var Address|null */
        public ?Address $Adresse=null,

        // @DataMember(Name="BillingPeriodEnd")
        /** @var DateTime|null */
        public ?DateTime $BillingPeriodEnd=null,

        // @DataMember(Name="PersonAbrechnungseinheit")
        /** @var array<PersonAbrechnungseinheit>|null */
        public ?array $PersonAbrechnungseinheit=null,

        // @DataMember(Name="Persons")
        /** @var array<Person>|null */
        public ?array $Persons=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Guid'])) $this->Guid = $o['Guid'];
        if (isset($o['LastModified'])) $this->LastModified = JsonConverters::from('DateTime', $o['LastModified']);
        if (isset($o['Objektnummer'])) $this->Objektnummer = $o['Objektnummer'];
        if (isset($o['Notiz'])) $this->Notiz = $o['Notiz'];
        if (isset($o['NotizIntern'])) $this->NotizIntern = $o['NotizIntern'];
        if (isset($o['NotizLegionellen'])) $this->NotizLegionellen = $o['NotizLegionellen'];
        if (isset($o['Kunde'])) $this->Kunde = JsonConverters::from('Customer', $o['Kunde']);
        if (isset($o['Adresse'])) $this->Adresse = JsonConverters::from('Address', $o['Adresse']);
        if (isset($o['BillingPeriodEnd'])) $this->BillingPeriodEnd = JsonConverters::from('DateTime', $o['BillingPeriodEnd']);
        if (isset($o['PersonAbrechnungseinheit'])) $this->PersonAbrechnungseinheit = JsonConverters::fromArray('PersonAbrechnungseinheit', $o['PersonAbrechnungseinheit']);
        if (isset($o['Persons'])) $this->Persons = JsonConverters::fromArray('Person', $o['Persons']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Guid)) $o['Guid'] = $this->Guid;
        if (isset($this->LastModified)) $o['LastModified'] = JsonConverters::to('DateTime', $this->LastModified);
        if (isset($this->Objektnummer)) $o['Objektnummer'] = $this->Objektnummer;
        if (isset($this->Notiz)) $o['Notiz'] = $this->Notiz;
        if (isset($this->NotizIntern)) $o['NotizIntern'] = $this->NotizIntern;
        if (isset($this->NotizLegionellen)) $o['NotizLegionellen'] = $this->NotizLegionellen;
        if (isset($this->Kunde)) $o['Kunde'] = JsonConverters::to('Customer', $this->Kunde);
        if (isset($this->Adresse)) $o['Adresse'] = JsonConverters::to('Address', $this->Adresse);
        if (isset($this->BillingPeriodEnd)) $o['BillingPeriodEnd'] = JsonConverters::to('DateTime', $this->BillingPeriodEnd);
        if (isset($this->PersonAbrechnungseinheit)) $o['PersonAbrechnungseinheit'] = JsonConverters::toArray('PersonAbrechnungseinheit', $this->PersonAbrechnungseinheit);
        if (isset($this->Persons)) $o['Persons'] = JsonConverters::toArray('Person', $this->Persons);
        return empty($o) ? new class(){} : $o;
    }
}

// @DataContract
class AddOrUpdateAbrechnungseinheit implements JsonSerializable
{
    public function __construct(
        // @DataMember(Name="Abrechnungseinheit")
        /** @var Abrechnungseinheit|null */
        public ?Abrechnungseinheit $Abrechnungseinheit=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Abrechnungseinheit'])) $this->Abrechnungseinheit = JsonConverters::from('Abrechnungseinheit', $o['Abrechnungseinheit']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Abrechnungseinheit)) $o['Abrechnungseinheit'] = JsonConverters::to('Abrechnungseinheit', $this->Abrechnungseinheit);
        return empty($o) ? new class(){} : $o;
    }
}

PHP AddOrUpdateAbrechnungseinheit DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /AddUpdateAbrechnungseinheit HTTP/1.1 
Host: calotec-portal-servamw.eras-online.de 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"Abrechnungseinheit":{"Guid":"00000000000000000000000000000000","LastModified":"0001-01-01T00:00:00.0000000Z","Objektnummer":"String","Notiz":"String","NotizIntern":"String","NotizLegionellen":"String","Kunde":{"Guid":"00000000000000000000000000000000","Name":"String","Name2":"String","Name3":"String","Kundennummer":"String","Notiz":"String","Anrede":"String"},"Adresse":{"Guid":"00000000000000000000000000000000","Straße":"String","Straße2":"String","Hausnummer":"String","Postleitzahl":"String","Ort":"String","Postfach":"String","Adresszusatz":"String","Breitengrad":0,"Laengengrad":0},"BillingPeriodEnd":"0001-01-01T00:00:00.0000000Z"}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

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