Files
portal/app/Classes/Modules/Documents/DataTransferObjects/DocumentObject.php
T
omair saleh 9fe0757baf big commit
2021-03-22 08:46:33 +08:00

61 lines
1.2 KiB
PHP

<?php
namespace App\Classes\Modules\Documents\DataTransferObjects;
use App\Classes\Interfaces\DataTransferObject;
use App\Classes\Modules\Documents\Services\ConvertsBase64ToFile;
class DocumentObject implements DataTransferObject
{
/** @var string */
private $document_type;
/** @var array */
private $files;
/** @var string|null */
private $reference;
/**
* DocumentObject constructor.
* @param string $document_type
* @param array $files
* @param null|string $reference
*/
public function __construct(string $document_type, array $files, ?string $reference = null)
{
$this->document_type = $document_type;
$this->files = $files;
$this->reference = $reference;
}
/**
* @return string
*/
public function getDocumentType(): string
{
return $this->document_type;
}
/**
* @return string|null
*/
public function getReference(): string
{
return $this->reference;
}
/**
* @return array
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function getFiles(): array
{
return (new ConvertsBase64ToFile())->convert($this->files);
}
}