phpstan, phpcs, phpunit fixes

This commit is contained in:
Dennis Eichhorn 2023-01-27 22:12:09 +01:00
parent 714a814c05
commit 35366d5415
8 changed files with 31 additions and 29 deletions

View File

@ -227,11 +227,6 @@
"type": "TINYINT(1)", "type": "TINYINT(1)",
"null": false "null": false
}, },
"projectmanagement_project_attr_value_type": {
"name": "projectmanagement_project_attr_value_type",
"type": "INT(11)",
"null": false
},
"projectmanagement_project_attr_value_valueStr": { "projectmanagement_project_attr_value_valueStr": {
"name": "projectmanagement_project_attr_value_valueStr", "name": "projectmanagement_project_attr_value_valueStr",
"type": "VARCHAR(255)", "type": "VARCHAR(255)",

View File

@ -42,7 +42,7 @@ final class ProjectAttributeMapper extends DataMapperFactory
/** /**
* Has one relation. * Has one relation.
* *
* @var array<string, array{mapper:string, external:string, by?:string, column?:string, conditional?:bool}> * @var array<string, array{mapper:class-string, external:string, by?:string, column?:string, conditional?:bool}>
* @since 1.0.0 * @since 1.0.0
*/ */
public const OWNS_ONE = [ public const OWNS_ONE = [

View File

@ -14,6 +14,7 @@ declare(strict_types=1);
namespace Modules\ProjectManagement\Models; namespace Modules\ProjectManagement\Models;
use phpOMS\Localization\BaseStringL11n;
use phpOMS\Localization\ISO639x1Enum; use phpOMS\Localization\ISO639x1Enum;
/** /**
@ -65,9 +66,9 @@ class ProjectAttributeType implements \JsonSerializable
/** /**
* Localization * Localization
* *
* @var ProjectAttributeTypeL11n * @var BaseStringL11n
*/ */
private string | ProjectAttributeTypeL11n $l11n; private string | BaseStringL11n $l11n;
/** /**
* Possible default attribute values * Possible default attribute values
@ -103,22 +104,23 @@ class ProjectAttributeType implements \JsonSerializable
/** /**
* Set l11n * Set l11n
* *
* @param string|ProjectAttributeTypeL11n $l11n Tag article l11n * @param string|BaseStringL11n $l11n Tag article l11n
* @param string $lang Language * @param string $lang Language
* *
* @return void * @return void
* *
* @since 1.0.0 * @since 1.0.0
*/ */
public function setL11n(string | ProjectAttributeTypeL11n $l11n, string $lang = ISO639x1Enum::_EN) : void public function setL11n(string | BaseStringL11n $l11n, string $lang = ISO639x1Enum::_EN) : void
{ {
if ($l11n instanceof ProjectAttributeTypeL11n) { if ($l11n instanceof BaseStringL11n) {
$this->l11n = $l11n; $this->l11n = $l11n;
} elseif (isset($this->l11n) && $this->l11n instanceof ProjectAttributeTypeL11n) { } elseif (isset($this->l11n) && $this->l11n instanceof BaseStringL11n) {
$this->l11n->title = $l11n; $this->l11n->content = $l11n;
$this->l11n->setLanguage($lang);
} else { } else {
$this->l11n = new ProjectAttributeTypeL11n(); $this->l11n = new BaseStringL11n();
$this->l11n->title = $l11n; $this->l11n->content = $l11n;
$this->l11n->setLanguage($lang); $this->l11n->setLanguage($lang);
} }
} }
@ -130,7 +132,11 @@ class ProjectAttributeType implements \JsonSerializable
*/ */
public function getL11n() : string public function getL11n() : string
{ {
return $this->l11n instanceof ProjectAttributeTypeL11n ? $this->l11n->title : $this->l11n; if (!isset($this->l11n)) {
return '';
}
return $this->l11n instanceof BaseStringL11n ? $this->l11n->content : $this->l11n;
} }
/** /**

View File

@ -59,7 +59,7 @@ final class ProjectAttributeTypeL11nMapper extends DataMapperFactory
/** /**
* Model to use by the mapper. * Model to use by the mapper.
* *
* @var string * @var class-string
* @since 1.0.0 * @since 1.0.0
*/ */
public const MODEL = BaseStringL11n::class; public const MODEL = BaseStringL11n::class;

View File

@ -44,7 +44,7 @@ final class ProjectAttributeTypeMapper extends DataMapperFactory
/** /**
* Has many relation. * Has many relation.
* *
* @var array<string, array{mapper:string, table:string, self?:?string, external?:?string, column?:string}> * @var array<string, array{mapper:class-string, table:string, self?:?string, external?:?string, column?:string}>
* @since 1.0.0 * @since 1.0.0
*/ */
public const HAS_MANY = [ public const HAS_MANY = [

View File

@ -124,7 +124,7 @@ class ProjectAttributeValue implements \JsonSerializable
/** /**
* Set value * Set value
* *
* @param int|string|float|\DateTimeInterface $value Value * @param int|string|float $value Value
* *
* @return void * @return void
* *
@ -142,7 +142,7 @@ class ProjectAttributeValue implements \JsonSerializable
} elseif ($datatype === AttributeValueType::_FLOAT) { } elseif ($datatype === AttributeValueType::_FLOAT) {
$this->valueDec = (float) $value; $this->valueDec = (float) $value;
} elseif ($datatype === AttributeValueType::_DATETIME) { } elseif ($datatype === AttributeValueType::_DATETIME) {
$this->valueDat = new \DateTime($value); $this->valueDat = new \DateTime((string) $value);
} }
} }
@ -172,7 +172,7 @@ class ProjectAttributeValue implements \JsonSerializable
* Set l11n * Set l11n
* *
* @param string|BaseStringL11n $l11n Tag article l11n * @param string|BaseStringL11n $l11n Tag article l11n
* @param string $lang Language * @param string $lang Language
* *
* @return void * @return void
* *
@ -183,11 +183,12 @@ class ProjectAttributeValue implements \JsonSerializable
if ($l11n instanceof BaseStringL11n) { if ($l11n instanceof BaseStringL11n) {
$this->l11n = $l11n; $this->l11n = $l11n;
} elseif (isset($this->l11n) && $this->l11n instanceof BaseStringL11n) { } elseif (isset($this->l11n) && $this->l11n instanceof BaseStringL11n) {
$this->l11n->content = $l11n; $this->l11n->content = $l11n;
$this->l11n->setLanguage($lang);
} else { } else {
$this->l11n = new BaseStringL11n(); $this->l11n = new BaseStringL11n();
$this->l11n->content = $l11n; $this->l11n->content = $l11n;
$this->l11n->ref = $this->id; $this->l11n->ref = $this->id;
$this->l11n->setLanguage($lang); $this->l11n->setLanguage($lang);
} }
} }

View File

@ -44,7 +44,7 @@ final class ProjectAttributeValueMapper extends DataMapperFactory
/** /**
* Has many relation. * Has many relation.
* *
* @var array<string, array{mapper:string, table:string, self?:?string, external?:?string, column?:string}> * @var array<string, array{mapper:class-string, table:string, self?:?string, external?:?string, column?:string}>
* @since 1.0.0 * @since 1.0.0
*/ */
/* /*

View File

@ -58,7 +58,7 @@ final class ProjectMapper extends DataMapperFactory
/** /**
* Has many relation. * Has many relation.
* *
* @var array<string, array{mapper:string, table:string, self?:?string, external?:?string, column?:string}> * @var array<string, array{mapper:class-string, table:string, self?:?string, external?:?string, column?:string}>
* @since 1.0.0 * @since 1.0.0
*/ */
public const HAS_MANY = [ public const HAS_MANY = [
@ -86,7 +86,7 @@ final class ProjectMapper extends DataMapperFactory
/** /**
* Has one relation. * Has one relation.
* *
* @var array<string, array{mapper:string, external:string, by?:string, column?:string, conditional?:bool}> * @var array<string, array{mapper:class-string, external:string, by?:string, column?:string, conditional?:bool}>
* @since 1.0.0 * @since 1.0.0
*/ */
public const OWNS_ONE = [ public const OWNS_ONE = [
@ -99,7 +99,7 @@ final class ProjectMapper extends DataMapperFactory
/** /**
* Belongs to. * Belongs to.
* *
* @var array<string, array{mapper:string, external:string, column?:string, by?:string}> * @var array<string, array{mapper:class-string, external:string, column?:string, by?:string}>
* @since 1.0.0 * @since 1.0.0
*/ */
public const BELONGS_TO = [ public const BELONGS_TO = [