49 lines
1.4 KiB
PHP
49 lines
1.4 KiB
PHP
|
|
<?php declare(strict_types=1);
|
||
|
|
|
||
|
|
namespace VeruA\DomainObjects;
|
||
|
|
|
||
|
|
use VeruA\DomainObjects\ValueObjects\IntKey;
|
||
|
|
use VeruA\DomainObjects\ValueObjects\Varchar;
|
||
|
|
use VeruA\DomainObjects\ValueObjects\Email;
|
||
|
|
use VeruA\DomainObjects\ValueObjects\Phone;
|
||
|
|
use VeruA\DomainObjects\ValueObjects\URL;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* An Address
|
||
|
|
*
|
||
|
|
* @property ValueObjects\Integer $id The pk of the client
|
||
|
|
* @property ValueObjects\Varchar $street (str)
|
||
|
|
* @property ValueObjects\Varchar $zip (plz)
|
||
|
|
* @property ValueObjects\Varchar $city (ort)
|
||
|
|
* @property ValueObjects\Varchar $pobox (pfach)
|
||
|
|
* @property ValueObjects\Email $email
|
||
|
|
* @property ValueObjects\Phone $phone (tel)
|
||
|
|
* @property ValueObjects\Phone $cellPhone (natel)
|
||
|
|
* @property ValueObjects\Phone $officePhone (tel_geschaeft
|
||
|
|
* @property ValueObjects\Phone $fax
|
||
|
|
* @property ValueObjects\URL $website (webseite)
|
||
|
|
*/
|
||
|
|
class Address extends DomainObject
|
||
|
|
{
|
||
|
|
|
||
|
|
protected function fields(array ...$superFields): array
|
||
|
|
{
|
||
|
|
return parent::fields([
|
||
|
|
'id' => IntKey::class,
|
||
|
|
'street' => Varchar::class,
|
||
|
|
'zip' => Varchar::class,
|
||
|
|
'city' => Varchar::class,
|
||
|
|
'pobox' => Varchar::class,
|
||
|
|
'email' => Email::class,
|
||
|
|
'phone' => Phone::class,
|
||
|
|
'cellPhone' => Phone::class,
|
||
|
|
'officePhone' => Phone::class,
|
||
|
|
'fax' => Phone::class,
|
||
|
|
'website' => URL::class,
|
||
|
|
], ...$superFields);
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
/* jEdit buffer local properties {{{
|
||
|
|
* :folding=explicit:collapseFolds=1:
|
||
|
|
}}}*/
|