bug fixes / dbmapper fixes

This commit is contained in:
Dennis Eichhorn 2021-12-19 20:20:39 +01:00
parent 15b0f1cba7
commit 7fcb4742c3
8 changed files with 63 additions and 63 deletions

View File

@ -87,10 +87,10 @@ class ProjectAttribute implements \JsonSerializable, ArrayableInterface
public function toArray() : array public function toArray() : array
{ {
return [ return [
'id' => $this->id, 'id' => $this->id,
'item' => $this->item, 'project' => $this->project,
'type' => $this->type, 'type' => $this->type,
'value' => $this->value, 'value' => $this->value,
]; ];
} }

View File

@ -33,10 +33,10 @@ final class ProjectAttributeMapper extends DataMapperFactory
* @since 1.0.0 * @since 1.0.0
*/ */
public const COLUMNS = [ public const COLUMNS = [
'projectmanagement_project_attr_id' => ['name' => 'projectmanagement_project_attr_id', 'type' => 'int', 'internal' => 'id'], 'projectmanagement_project_attr_id' => ['name' => 'projectmanagement_project_attr_id', 'type' => 'int', 'internal' => 'id'],
'projectmanagement_project_attr_project' => ['name' => 'projectmanagement_project_attr_project', 'type' => 'int', 'internal' => 'project'], 'projectmanagement_project_attr_project' => ['name' => 'projectmanagement_project_attr_project', 'type' => 'int', 'internal' => 'project'],
'projectmanagement_project_attr_type' => ['name' => 'projectmanagement_project_attr_type', 'type' => 'int', 'internal' => 'type'], 'projectmanagement_project_attr_type' => ['name' => 'projectmanagement_project_attr_type', 'type' => 'int', 'internal' => 'type'],
'projectmanagement_project_attr_value' => ['name' => 'projectmanagement_project_attr_value', 'type' => 'int', 'internal' => 'value'], 'projectmanagement_project_attr_value' => ['name' => 'projectmanagement_project_attr_value', 'type' => 'int', 'internal' => 'value'],
]; ];
/** /**
@ -47,12 +47,12 @@ final class ProjectAttributeMapper extends DataMapperFactory
*/ */
public const OWNS_ONE = [ public const OWNS_ONE = [
'type' => [ 'type' => [
'mapper' => ProjectAttributeTypeMapper::class, 'mapper' => ProjectAttributeTypeMapper::class,
'external' => 'projectmanagement_project_attr_type', 'external' => 'projectmanagement_project_attr_type',
], ],
'value' => [ 'value' => [
'mapper' => ProjectAttributeValueMapper::class, 'mapper' => ProjectAttributeValueMapper::class,
'external' => 'projectmanagement_project_attr_value', 'external' => 'projectmanagement_project_attr_value',
], ],
]; ];

View File

@ -105,7 +105,7 @@ class ProjectAttributeType implements \JsonSerializable, ArrayableInterface
* Set l11n * Set l11n
* *
* @param string|ProjectAttributeTypeL11n $l11n Tag article l11n * @param string|ProjectAttributeTypeL11n $l11n Tag article l11n
* @param string $lang Language * @param string $lang Language
* *
* @return void * @return void
* *

View File

@ -63,8 +63,8 @@ class ProjectAttributeTypeL11n implements \JsonSerializable, ArrayableInterface
* Constructor. * Constructor.
* *
* @param int|ProjectAttributeType $type Attribute type * @param int|ProjectAttributeType $type Attribute type
* @param string $title Localized title * @param string $title Localized title
* @param string $language Language * @param string $language Language
* *
* @since 1.0.0 * @since 1.0.0
*/ */

View File

@ -33,10 +33,10 @@ final class ProjectAttributeTypeL11nMapper extends DataMapperFactory
* @since 1.0.0 * @since 1.0.0
*/ */
public const COLUMNS = [ public const COLUMNS = [
'projectmanagement_project_attr_type_l11n_id' => ['name' => 'projectmanagement_project_attr_type_l11n_id', 'type' => 'int', 'internal' => 'id'], 'projectmanagement_project_attr_type_l11n_id' => ['name' => 'projectmanagement_project_attr_type_l11n_id', 'type' => 'int', 'internal' => 'id'],
'projectmanagement_project_attr_type_l11n_title' => ['name' => 'projectmanagement_project_attr_type_l11n_title', 'type' => 'string', 'internal' => 'title', 'autocomplete' => true], 'projectmanagement_project_attr_type_l11n_title' => ['name' => 'projectmanagement_project_attr_type_l11n_title', 'type' => 'string', 'internal' => 'title', 'autocomplete' => true],
'projectmanagement_project_attr_type_l11n_type' => ['name' => 'projectmanagement_project_attr_type_l11n_type', 'type' => 'int', 'internal' => 'type'], 'projectmanagement_project_attr_type_l11n_type' => ['name' => 'projectmanagement_project_attr_type_l11n_type', 'type' => 'int', 'internal' => 'type'],
'projectmanagement_project_attr_type_l11n_lang' => ['name' => 'projectmanagement_project_attr_type_l11n_lang', 'type' => 'string', 'internal' => 'language'], 'projectmanagement_project_attr_type_l11n_lang' => ['name' => 'projectmanagement_project_attr_type_l11n_lang', 'type' => 'string', 'internal' => 'language'],
]; ];
/** /**

View File

@ -33,12 +33,12 @@ final class ProjectAttributeTypeMapper extends DataMapperFactory
* @since 1.0.0 * @since 1.0.0
*/ */
public const COLUMNS = [ public const COLUMNS = [
'projectmanagement_project_attr_type_id' => ['name' => 'projectmanagement_project_attr_type_id', 'type' => 'int', 'internal' => 'id'], 'projectmanagement_project_attr_type_id' => ['name' => 'projectmanagement_project_attr_type_id', 'type' => 'int', 'internal' => 'id'],
'projectmanagement_project_attr_type_name' => ['name' => 'projectmanagement_project_attr_type_name', 'type' => 'string', 'internal' => 'name', 'autocomplete' => true], 'projectmanagement_project_attr_type_name' => ['name' => 'projectmanagement_project_attr_type_name', 'type' => 'string', 'internal' => 'name', 'autocomplete' => true],
'projectmanagement_project_attr_type_fields' => ['name' => 'projectmanagement_project_attr_type_fields', 'type' => 'int', 'internal' => 'fields'], 'projectmanagement_project_attr_type_fields' => ['name' => 'projectmanagement_project_attr_type_fields', 'type' => 'int', 'internal' => 'fields'],
'projectmanagement_project_attr_type_custom' => ['name' => 'projectmanagement_project_attr_type_custom', 'type' => 'bool', 'internal' => 'custom'], 'projectmanagement_project_attr_type_custom' => ['name' => 'projectmanagement_project_attr_type_custom', 'type' => 'bool', 'internal' => 'custom'],
'projectmanagement_project_attr_type_pattern' => ['name' => 'projectmanagement_project_attr_type_pattern', 'type' => 'string', 'internal' => 'validationPattern'], 'projectmanagement_project_attr_type_pattern' => ['name' => 'projectmanagement_project_attr_type_pattern', 'type' => 'string', 'internal' => 'validationPattern'],
'projectmanagement_project_attr_type_required' => ['name' => 'projectmanagement_project_attr_type_required', 'type' => 'bool', 'internal' => 'isRequired'], 'projectmanagement_project_attr_type_required' => ['name' => 'projectmanagement_project_attr_type_required', 'type' => 'bool', 'internal' => 'isRequired'],
]; ];
/** /**
@ -49,17 +49,17 @@ final class ProjectAttributeTypeMapper extends DataMapperFactory
*/ */
public const HAS_MANY = [ public const HAS_MANY = [
'l11n' => [ 'l11n' => [
'mapper' => ProjectAttributeTypeL11nMapper::class, 'mapper' => ProjectAttributeTypeL11nMapper::class,
'table' => 'projectmanagement_project_attr_type_l11n', 'table' => 'projectmanagement_project_attr_type_l11n',
'self' => 'projectmanagement_project_attr_type_l11n_type', 'self' => 'projectmanagement_project_attr_type_l11n_type',
'column' => 'title', 'column' => 'title',
'external' => null, 'external' => null,
], ],
'defaults' => [ 'defaults' => [
'mapper' => ProjectAttributeValueMapper::class, 'mapper' => ProjectAttributeValueMapper::class,
'table' => 'projectmanagement_project_attr_default', 'table' => 'projectmanagement_project_attr_default',
'self' => 'projectmanagement_project_attr_default_type', 'self' => 'projectmanagement_project_attr_default_type',
'external' => 'projectmanagement_project_attr_default_value' 'external' => 'projectmanagement_project_attr_default_value'
], ],
]; ];

View File

@ -8,7 +8,7 @@
* @copyright Dennis Eichhorn * @copyright Dennis Eichhorn
* @license OMS License 1.0 * @license OMS License 1.0
* @version 1.0.0 * @version 1.0.0
* @link https: //orange-management.org * @link https://orange-management.org
*/ */
declare(strict_types=1); declare(strict_types=1);
@ -21,7 +21,7 @@ use phpOMS\DataStorage\Database\Mapper\DataMapperFactory;
* *
* @package Modules\ProjectManagement\Models * @package Modules\ProjectManagement\Models
* @license OMS License 1.0 * @license OMS License 1.0
* @link https: //orange-management.org * @link https://orange-management.org
* @since 1.0.0 * @since 1.0.0
*/ */
final class ProjectAttributeValueMapper extends DataMapperFactory final class ProjectAttributeValueMapper extends DataMapperFactory
@ -33,15 +33,15 @@ final class ProjectAttributeValueMapper extends DataMapperFactory
* @since 1.0.0 * @since 1.0.0
*/ */
public const COLUMNS = [ public const COLUMNS = [
'projectmanagement_project_attr_value_id' => ['name' => 'projectmanagement_project_attr_value_id', 'type' => 'int', 'internal' => 'id'], 'projectmanagement_project_attr_value_id' => ['name' => 'projectmanagement_project_attr_value_id', 'type' => 'int', 'internal' => 'id'],
'projectmanagement_project_attr_value_default' => ['name' => 'projectmanagement_project_attr_value_default', 'type' => 'bool', 'internal' => 'isDefault'], 'projectmanagement_project_attr_value_default' => ['name' => 'projectmanagement_project_attr_value_default', 'type' => 'bool', 'internal' => 'isDefault'],
'projectmanagement_project_attr_value_type' => ['name' => 'projectmanagement_project_attr_value_type', 'type' => 'int', 'internal' => 'type'], 'projectmanagement_project_attr_value_type' => ['name' => 'projectmanagement_project_attr_value_type', 'type' => 'int', 'internal' => 'type'],
'projectmanagement_project_attr_value_valueStr' => ['name' => 'projectmanagement_project_attr_value_valueStr', 'type' => 'string', 'internal' => 'valueStr'], 'projectmanagement_project_attr_value_valueStr' => ['name' => 'projectmanagement_project_attr_value_valueStr', 'type' => 'string', 'internal' => 'valueStr'],
'projectmanagement_project_attr_value_valueInt' => ['name' => 'projectmanagement_project_attr_value_valueInt', 'type' => 'int', 'internal' => 'valueInt'], 'projectmanagement_project_attr_value_valueInt' => ['name' => 'projectmanagement_project_attr_value_valueInt', 'type' => 'int', 'internal' => 'valueInt'],
'projectmanagement_project_attr_value_valueDec' => ['name' => 'projectmanagement_project_attr_value_valueDec', 'type' => 'float', 'internal' => 'valueDec'], 'projectmanagement_project_attr_value_valueDec' => ['name' => 'projectmanagement_project_attr_value_valueDec', 'type' => 'float', 'internal' => 'valueDec'],
'projectmanagement_project_attr_value_valueDat' => ['name' => 'projectmanagement_project_attr_value_valueDat', 'type' => 'DateTime', 'internal' => 'valueDat'], 'projectmanagement_project_attr_value_valueDat' => ['name' => 'projectmanagement_project_attr_value_valueDat', 'type' => 'DateTime', 'internal' => 'valueDat'],
'projectmanagement_project_attr_value_lang' => ['name' => 'projectmanagement_project_attr_value_lang', 'type' => 'string', 'internal' => 'language'], 'projectmanagement_project_attr_value_lang' => ['name' => 'projectmanagement_project_attr_value_lang', 'type' => 'string', 'internal' => 'language'],
'projectmanagement_project_attr_value_country' => ['name' => 'projectmanagement_project_attr_value_country', 'type' => 'string', 'internal' => 'country'], 'projectmanagement_project_attr_value_country' => ['name' => 'projectmanagement_project_attr_value_country', 'type' => 'string', 'internal' => 'country'],
]; ];
/** /**

View File

@ -37,21 +37,21 @@ final class ProjectMapper extends DataMapperFactory
* @since 1.0.0 * @since 1.0.0
*/ */
public const COLUMNS = [ public const COLUMNS = [
'projectmanagement_project_id' => ['name' => 'projectmanagement_project_id', 'type' => 'int', 'internal' => 'id'], 'projectmanagement_project_id' => ['name' => 'projectmanagement_project_id', 'type' => 'int', 'internal' => 'id'],
'projectmanagement_project_name' => ['name' => 'projectmanagement_project_name', 'type' => 'string', 'internal' => 'name'], 'projectmanagement_project_name' => ['name' => 'projectmanagement_project_name', 'type' => 'string', 'internal' => 'name'],
'projectmanagement_project_description' => ['name' => 'projectmanagement_project_description', 'type' => 'string', 'internal' => 'description'], 'projectmanagement_project_description' => ['name' => 'projectmanagement_project_description', 'type' => 'string', 'internal' => 'description'],
'projectmanagement_project_description_raw' => ['name' => 'projectmanagement_project_description_raw', 'type' => 'string', 'internal' => 'descriptionRaw'], 'projectmanagement_project_description_raw' => ['name' => 'projectmanagement_project_description_raw', 'type' => 'string', 'internal' => 'descriptionRaw'],
'projectmanagement_project_calendar' => ['name' => 'projectmanagement_project_calendar', 'type' => 'int', 'internal' => 'calendar'], 'projectmanagement_project_calendar' => ['name' => 'projectmanagement_project_calendar', 'type' => 'int', 'internal' => 'calendar'],
'projectmanagement_project_budgetcosts' => ['name' => 'projectmanagement_project_budgetcosts', 'type' => 'Serializable', 'internal' => 'budgetCosts'], 'projectmanagement_project_budgetcosts' => ['name' => 'projectmanagement_project_budgetcosts', 'type' => 'Serializable', 'internal' => 'budgetCosts'],
'projectmanagement_project_budgetearnings' => ['name' => 'projectmanagement_project_budgetearnings', 'type' => 'Serializable', 'internal' => 'budgetEarnings'], 'projectmanagement_project_budgetearnings' => ['name' => 'projectmanagement_project_budgetearnings', 'type' => 'Serializable', 'internal' => 'budgetEarnings'],
'projectmanagement_project_actualearnings' => ['name' => 'projectmanagement_project_actualearnings', 'type' => 'Serializable', 'internal' => 'actualEarnings'], 'projectmanagement_project_actualearnings' => ['name' => 'projectmanagement_project_actualearnings', 'type' => 'Serializable', 'internal' => 'actualEarnings'],
'projectmanagement_project_actualcosts' => ['name' => 'projectmanagement_project_actualcosts', 'type' => 'Serializable', 'internal' => 'actualCosts'], 'projectmanagement_project_actualcosts' => ['name' => 'projectmanagement_project_actualcosts', 'type' => 'Serializable', 'internal' => 'actualCosts'],
'projectmanagement_project_start' => ['name' => 'projectmanagement_project_start', 'type' => 'DateTime', 'internal' => 'start'], 'projectmanagement_project_start' => ['name' => 'projectmanagement_project_start', 'type' => 'DateTime', 'internal' => 'start'],
'projectmanagement_project_end' => ['name' => 'projectmanagement_project_end', 'type' => 'DateTime', 'internal' => 'end'], 'projectmanagement_project_end' => ['name' => 'projectmanagement_project_end', 'type' => 'DateTime', 'internal' => 'end'],
'projectmanagement_project_endestimated' => ['name' => 'projectmanagement_project_endestimated', 'type' => 'DateTime', 'internal' => 'endEstimated'], 'projectmanagement_project_endestimated' => ['name' => 'projectmanagement_project_endestimated', 'type' => 'DateTime', 'internal' => 'endEstimated'],
'projectmanagement_project_progress' => ['name' => 'projectmanagement_project_progress', 'type' => 'int', 'internal' => 'progress'], 'projectmanagement_project_progress' => ['name' => 'projectmanagement_project_progress', 'type' => 'int', 'internal' => 'progress'],
'projectmanagement_project_progress_type' => ['name' => 'projectmanagement_project_progress_type', 'type' => 'int', 'internal' => 'progressType'], 'projectmanagement_project_progress_type' => ['name' => 'projectmanagement_project_progress_type', 'type' => 'int', 'internal' => 'progressType'],
'projectmanagement_project_created_by' => ['name' => 'projectmanagement_project_created_by', 'type' => 'int', 'internal' => 'createdBy', 'readonly' => true], 'projectmanagement_project_created_by' => ['name' => 'projectmanagement_project_created_by', 'type' => 'int', 'internal' => 'createdBy', 'readonly' => true],
'projectmanagement_project_created_at' => ['name' => 'projectmanagement_project_created_at', 'type' => 'DateTimeImmutable', 'internal' => 'createdAt', 'readonly' => true], 'projectmanagement_project_created_at' => ['name' => 'projectmanagement_project_created_at', 'type' => 'DateTimeImmutable', 'internal' => 'createdAt', 'readonly' => true],
]; ];
@ -91,8 +91,8 @@ final class ProjectMapper extends DataMapperFactory
*/ */
public const OWNS_ONE = [ public const OWNS_ONE = [
'calendar' => [ 'calendar' => [
'mapper' => CalendarMapper::class, 'mapper' => CalendarMapper::class,
'external' => 'projectmanagement_project_calendar', 'external' => 'projectmanagement_project_calendar',
], ],
]; ];
@ -104,8 +104,8 @@ final class ProjectMapper extends DataMapperFactory
*/ */
public const BELONGS_TO = [ public const BELONGS_TO = [
'createdBy' => [ 'createdBy' => [
'mapper' => AccountMapper::class, 'mapper' => AccountMapper::class,
'external' => 'projectmanagement_project_created_by', 'external' => 'projectmanagement_project_created_by',
], ],
]; ];