mirror of
https://github.com/Karaka-Management/oms-EquipmentManagement.git
synced 2026-02-16 18:28:41 +00:00
update
This commit is contained in:
parent
39698b133d
commit
ade1c110b3
|
|
@ -19,7 +19,7 @@
|
||||||
"type": 2,
|
"type": 2,
|
||||||
"subtype": 1,
|
"subtype": 1,
|
||||||
"name": "Equipments",
|
"name": "Equipments",
|
||||||
"uri": "{/base}/equipment/equipment/list",
|
"uri": "{/base}/equipment/list",
|
||||||
"target": "self",
|
"target": "self",
|
||||||
"icon": null,
|
"icon": null,
|
||||||
"order": 1,
|
"order": 1,
|
||||||
|
|
@ -29,11 +29,11 @@
|
||||||
"children": [
|
"children": [
|
||||||
{
|
{
|
||||||
"id": 1008402101,
|
"id": 1008402101,
|
||||||
"pid": "/equipment/equipment",
|
"pid": "/equipment",
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subtype": 1,
|
"subtype": 1,
|
||||||
"name": "List",
|
"name": "List",
|
||||||
"uri": "{/base}/equipment/equipment/list",
|
"uri": "{/base}/equipment/list",
|
||||||
"target": "self",
|
"target": "self",
|
||||||
"icon": null,
|
"icon": null,
|
||||||
"order": 1,
|
"order": 1,
|
||||||
|
|
@ -44,11 +44,11 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 1008402201,
|
"id": 1008402201,
|
||||||
"pid": "/equipment/equipment",
|
"pid": "/equipment",
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subtype": 1,
|
"subtype": 1,
|
||||||
"name": "Create",
|
"name": "Create",
|
||||||
"uri": "{/base}/equipment/equipment/create?{?}",
|
"uri": "{/base}/equipment/create?{?}",
|
||||||
"target": "self",
|
"target": "self",
|
||||||
"icon": null,
|
"icon": null,
|
||||||
"order": 1,
|
"order": 1,
|
||||||
|
|
@ -94,7 +94,7 @@
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subtype": 1,
|
"subtype": 1,
|
||||||
"name": "EquipmentInspectionTypes",
|
"name": "EquipmentInspectionTypes",
|
||||||
"uri": "{/base}/equipment/equipment/inspection/type/list?{?}",
|
"uri": "{/base}/equipment/inspection/type/list?{?}",
|
||||||
"target": "self",
|
"target": "self",
|
||||||
"icon": null,
|
"icon": null,
|
||||||
"order": 5,
|
"order": 5,
|
||||||
|
|
@ -111,7 +111,7 @@
|
||||||
"type": 2,
|
"type": 2,
|
||||||
"subtype": 1,
|
"subtype": 1,
|
||||||
"name": "EquipmentAttributes",
|
"name": "EquipmentAttributes",
|
||||||
"uri": "{/base}/equipment/equipment/attribute/type/list?{?}",
|
"uri": "{/base}/equipment/attribute/type/list?{?}",
|
||||||
"target": "self",
|
"target": "self",
|
||||||
"icon": null,
|
"icon": null,
|
||||||
"order": 5,
|
"order": 5,
|
||||||
|
|
@ -121,11 +121,11 @@
|
||||||
"children": [
|
"children": [
|
||||||
{
|
{
|
||||||
"id": 1008405101,
|
"id": 1008405101,
|
||||||
"pid": "/equipment/equipment/attribute",
|
"pid": "/equipment/attribute",
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subtype": 1,
|
"subtype": 1,
|
||||||
"name": "Types",
|
"name": "Types",
|
||||||
"uri": "{/base}/equipment/equipment/attribute/type/list?{?}",
|
"uri": "{/base}/equipment/attribute/type/list?{?}",
|
||||||
"target": "self",
|
"target": "self",
|
||||||
"icon": null,
|
"icon": null,
|
||||||
"order": 15,
|
"order": 15,
|
||||||
|
|
@ -136,11 +136,11 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 1008405201,
|
"id": 1008405201,
|
||||||
"pid": "/equipment/equipment/attribute",
|
"pid": "/equipment/attribute",
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subtype": 1,
|
"subtype": 1,
|
||||||
"name": "Values",
|
"name": "Values",
|
||||||
"uri": "{/base}/equipment/equipment/attribute/value/list?{?}",
|
"uri": "{/base}/equipment/attribute/value/list?{?}",
|
||||||
"target": "self",
|
"target": "self",
|
||||||
"icon": null,
|
"icon": null,
|
||||||
"order": 15,
|
"order": 15,
|
||||||
|
|
|
||||||
|
|
@ -171,7 +171,7 @@
|
||||||
},
|
},
|
||||||
"equipmgmt_equipment_inspection_interval": {
|
"equipmgmt_equipment_inspection_interval": {
|
||||||
"name": "equipmgmt_equipment_inspection_interval",
|
"name": "equipmgmt_equipment_inspection_interval",
|
||||||
"type": "TINYINT(3)",
|
"type": "INT",
|
||||||
"null": false
|
"null": false
|
||||||
},
|
},
|
||||||
"equipmgmt_equipment_inspection_next": {
|
"equipmgmt_equipment_inspection_next": {
|
||||||
|
|
@ -180,12 +180,25 @@
|
||||||
"null": true,
|
"null": true,
|
||||||
"default": null
|
"default": null
|
||||||
},
|
},
|
||||||
|
"equipmgmt_equipment_inspection_date": {
|
||||||
|
"name": "equipmgmt_equipment_inspection_date",
|
||||||
|
"type": "DATETIME",
|
||||||
|
"null": true,
|
||||||
|
"default": null
|
||||||
|
},
|
||||||
"equipmgmt_equipment_inspection_type": {
|
"equipmgmt_equipment_inspection_type": {
|
||||||
"name": "equipmgmt_equipment_inspection_type",
|
"name": "equipmgmt_equipment_inspection_type",
|
||||||
"type": "INT",
|
"type": "INT",
|
||||||
"null": false,
|
"null": false,
|
||||||
"foreignTable": "equipmgmt_inspection_type",
|
"foreignTable": "equipmgmt_inspection_type",
|
||||||
"foreignKey": "equipmgmt_inspection_type_id"
|
"foreignKey": "equipmgmt_inspection_type_id"
|
||||||
|
},
|
||||||
|
"equipmgmt_equipment_inspection_driver": {
|
||||||
|
"name": "equipmgmt_equipment_inspection_driver",
|
||||||
|
"type": "INT",
|
||||||
|
"null": false,
|
||||||
|
"foreignTable": "equipmgmt_equipment",
|
||||||
|
"foreignKey": "equipmgmt_equipment_id"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ use phpOMS\Account\PermissionType;
|
||||||
use phpOMS\Router\RouteVerb;
|
use phpOMS\Router\RouteVerb;
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'^.*/equipment/equipment/find.*$' => [
|
'^.*/equipment/find.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\ApiEquipmentController:apiEquipmentFind',
|
'dest' => '\Modules\EquipmentManagement\Controller\ApiEquipmentController:apiEquipmentFind',
|
||||||
'verb' => RouteVerb::GET,
|
'verb' => RouteVerb::GET,
|
||||||
|
|
@ -30,7 +30,7 @@ return [
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
'^.*/equipment/equipment/attribute.*$' => [
|
'^.*/equipment/attribute.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\ApiEquipmentAttributeController:apiEquipmentAttributeCreate',
|
'dest' => '\Modules\EquipmentManagement\Controller\ApiEquipmentAttributeController:apiEquipmentAttributeCreate',
|
||||||
'verb' => RouteVerb::PUT,
|
'verb' => RouteVerb::PUT,
|
||||||
|
|
@ -51,7 +51,7 @@ return [
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
'^.*/equipment/equipment/note.*$' => [
|
'^.*/equipment/note.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\ApiEquipmentAttributeController:apiNoteCreate',
|
'dest' => '\Modules\EquipmentManagement\Controller\ApiEquipmentAttributeController:apiNoteCreate',
|
||||||
'verb' => RouteVerb::PUT,
|
'verb' => RouteVerb::PUT,
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ use phpOMS\Account\PermissionType;
|
||||||
use phpOMS\Router\RouteVerb;
|
use phpOMS\Router\RouteVerb;
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'^.*/equipment/equipment/attribute/type/list.*$' => [
|
'^.*/equipment/attribute/type/list.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementAttributeTypeList',
|
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementAttributeTypeList',
|
||||||
'verb' => RouteVerb::GET,
|
'verb' => RouteVerb::GET,
|
||||||
|
|
@ -29,7 +29,7 @@ return [
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
'^.*/equipment/equipment/attribute/type\?.*$' => [
|
'^.*/equipment/attribute/type\?.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementAttributeType',
|
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementAttributeType',
|
||||||
'verb' => RouteVerb::GET,
|
'verb' => RouteVerb::GET,
|
||||||
|
|
@ -41,7 +41,7 @@ return [
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
'^.*/equipment/equipment/list.*$' => [
|
'^.*/equipment/list.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementEquipmentList',
|
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementEquipmentList',
|
||||||
'verb' => RouteVerb::GET,
|
'verb' => RouteVerb::GET,
|
||||||
|
|
@ -52,7 +52,7 @@ return [
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
'^.*/equipment/equipment/create.*$' => [
|
'^.*/equipment/create.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementEquipmentCreate',
|
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementEquipmentCreate',
|
||||||
'verb' => RouteVerb::GET,
|
'verb' => RouteVerb::GET,
|
||||||
|
|
@ -63,7 +63,7 @@ return [
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
'^.*/equipment/equipment/profile.*$' => [
|
'^.*/equipment/profile.*$' => [
|
||||||
[
|
[
|
||||||
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementEquipmentProfile',
|
'dest' => '\Modules\EquipmentManagement\Controller\BackendController:viewEquipmentManagementEquipmentProfile',
|
||||||
'verb' => RouteVerb::GET,
|
'verb' => RouteVerb::GET,
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,7 @@ use phpOMS\Message\ResponseAbstract;
|
||||||
*/
|
*/
|
||||||
final class ApiEquipmentController extends Controller
|
final class ApiEquipmentController extends Controller
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Api method to create a equipment
|
* Api method to create a equipment
|
||||||
*
|
*
|
||||||
|
|
@ -90,7 +91,7 @@ final class ApiEquipmentController extends Controller
|
||||||
$equipment->name = $request->getDataString('name') ?? '';
|
$equipment->name = $request->getDataString('name') ?? '';
|
||||||
$equipment->info = $request->getDataString('info') ?? '';
|
$equipment->info = $request->getDataString('info') ?? '';
|
||||||
$equipment->type = new NullBaseStringL11nType((int) ($request->getDataInt('type') ?? 0));
|
$equipment->type = new NullBaseStringL11nType((int) ($request->getDataInt('type') ?? 0));
|
||||||
$equipment->status = (int) ($request->getDataInt('status') ?? EquipmentStatus::INACTIVE);
|
$equipment->status = $request->getDataInt('status') ?? EquipmentStatus::INACTIVE;
|
||||||
$equipment->unit = $request->getDataInt('unit') ?? $this->app->unitId;
|
$equipment->unit = $request->getDataInt('unit') ?? $this->app->unitId;
|
||||||
|
|
||||||
return $equipment;
|
return $equipment;
|
||||||
|
|
@ -267,7 +268,7 @@ final class ApiEquipmentController extends Controller
|
||||||
virtualPath: $path,
|
virtualPath: $path,
|
||||||
pathSettings: PathSettings::FILE_PATH,
|
pathSettings: PathSettings::FILE_PATH,
|
||||||
hasAccountRelation: false,
|
hasAccountRelation: false,
|
||||||
readContent: (bool) ($request->getData('parse_content') ?? false)
|
readContent: $request->getDataBool('parse_content') ?? false
|
||||||
);
|
);
|
||||||
|
|
||||||
$collection = null;
|
$collection = null;
|
||||||
|
|
@ -435,7 +436,7 @@ final class ApiEquipmentController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Api method to update note
|
* Api method to update Equipment
|
||||||
*
|
*
|
||||||
* @param RequestAbstract $request Request
|
* @param RequestAbstract $request Request
|
||||||
* @param ResponseAbstract $response Response
|
* @param ResponseAbstract $response Response
|
||||||
|
|
@ -447,17 +448,151 @@ final class ApiEquipmentController extends Controller
|
||||||
*
|
*
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
*/
|
*/
|
||||||
public function apiNoteEdit(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void
|
public function apiEquipmentUpdate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void
|
||||||
{
|
{
|
||||||
$this->app->moduleManager->get('Editor', 'Api')->apiEditorUpdate($request, $response, $data);
|
if (!empty($val = $this->validateEquipmentUpdate($request))) {
|
||||||
|
$response->header->status = RequestStatusCode::R_400;
|
||||||
|
$this->createInvalidUpdateResponse($request, $response, $val);
|
||||||
|
|
||||||
if ($response->header->status !== RequestStatusCode::R_200) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$responseData = $response->get($request->uri->__toString());
|
/** @var \Modules\EquipmentManagement\Models\Equipment $old */
|
||||||
if (!\is_array($responseData)) {
|
$old = EquipmentMapper::get()->where('id', (int) $request->getData('id'))->execute();
|
||||||
|
$new = $this->updateEquipmentFromRequest($request, clone $old);
|
||||||
|
|
||||||
|
$this->updateModel($request->header->account, $old, $new, EquipmentMapper::class, 'equipment', $request->getOrigin());
|
||||||
|
$this->createStandardUpdateResponse($request, $response, $new);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to update Equipment from request.
|
||||||
|
*
|
||||||
|
* @param RequestAbstract $request Request
|
||||||
|
* @param Equipment $new Model to modify
|
||||||
|
*
|
||||||
|
* @return Equipment
|
||||||
|
*
|
||||||
|
* @todo: implement
|
||||||
|
*
|
||||||
|
* @since 1.0.0
|
||||||
|
*/
|
||||||
|
public function updateEquipmentFromRequest(RequestAbstract $request, Equipment $new) : Equipment
|
||||||
|
{
|
||||||
|
$new->name = $request->getDataString('name') ?? $new->name;
|
||||||
|
$new->info = $request->getDataString('info') ?? $new->info;
|
||||||
|
$new->type = $request->hasData('type') ? new NullBaseStringL11nType((int) ($request->getDataInt('type') ?? 0)) : $new->type;
|
||||||
|
$new->status = $request->getDataInt('status') ?? $new->status;
|
||||||
|
$new->unit = $request->getDataInt('unit') ?? $this->app->unitId;
|
||||||
|
|
||||||
|
return $new;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validate Equipment update request
|
||||||
|
*
|
||||||
|
* @param RequestAbstract $request Request
|
||||||
|
*
|
||||||
|
* @return array<string, bool>
|
||||||
|
*
|
||||||
|
* @todo: implement
|
||||||
|
*
|
||||||
|
* @since 1.0.0
|
||||||
|
*/
|
||||||
|
private function validateEquipmentUpdate(RequestAbstract $request) : array
|
||||||
|
{
|
||||||
|
$val = [];
|
||||||
|
if (($val['id'] = !$request->hasData('id'))) {
|
||||||
|
return $val;
|
||||||
|
}
|
||||||
|
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api method to delete Equipment
|
||||||
|
*
|
||||||
|
* @param RequestAbstract $request Request
|
||||||
|
* @param ResponseAbstract $response Response
|
||||||
|
* @param mixed $data Generic data
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*
|
||||||
|
* @since 1.0.0
|
||||||
|
*/
|
||||||
|
public function apiEquipmentDelete(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void
|
||||||
|
{
|
||||||
|
if (!empty($val = $this->validateEquipmentDelete($request))) {
|
||||||
|
$response->header->status = RequestStatusCode::R_400;
|
||||||
|
$this->createInvalidDeleteResponse($request, $response, $val);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** @var \Modules\EquipmentManagement\Models\Equipment $equipment */
|
||||||
|
$equipment = EquipmentMapper::get()->where('id', (int) $request->getData('id'))->execute();
|
||||||
|
$this->deleteModel($request->header->account, $equipment, EquipmentMapper::class, 'equipment', $request->getOrigin());
|
||||||
|
$this->createStandardDeleteResponse($request, $response, $equipment);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validate Equipment delete request
|
||||||
|
*
|
||||||
|
* @param RequestAbstract $request Request
|
||||||
|
*
|
||||||
|
* @return array<string, bool>
|
||||||
|
*
|
||||||
|
* @todo: implement
|
||||||
|
*
|
||||||
|
* @since 1.0.0
|
||||||
|
*/
|
||||||
|
private function validateEquipmentDelete(RequestAbstract $request) : array
|
||||||
|
{
|
||||||
|
$val = [];
|
||||||
|
if (($val['id'] = !$request->hasData('id'))) {
|
||||||
|
return $val;
|
||||||
|
}
|
||||||
|
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api method to update Note
|
||||||
|
*
|
||||||
|
* @param RequestAbstract $request Request
|
||||||
|
* @param ResponseAbstract $response Response
|
||||||
|
* @param mixed $data Generic data
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*
|
||||||
|
* @since 1.0.0
|
||||||
|
*/
|
||||||
|
public function apiNoteUpdate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void
|
||||||
|
{
|
||||||
|
// @todo: check permissions
|
||||||
|
$this->app->moduleManager->get('Editor', 'Api')->apiEditorDocUpdate($request, $response, $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api method to delete Note
|
||||||
|
*
|
||||||
|
* @param RequestAbstract $request Request
|
||||||
|
* @param ResponseAbstract $response Response
|
||||||
|
* @param mixed $data Generic data
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*
|
||||||
|
* @since 1.0.0
|
||||||
|
*/
|
||||||
|
public function apiNoteDelete(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void
|
||||||
|
{
|
||||||
|
// @todo: check permissions
|
||||||
|
$this->app->moduleManager->get('Editor', 'Api')->apiEditorDocDelete($request, $response, $data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,8 +16,8 @@ namespace Modules\EquipmentManagement\Controller;
|
||||||
|
|
||||||
use Modules\Admin\Models\LocalizationMapper;
|
use Modules\Admin\Models\LocalizationMapper;
|
||||||
use Modules\Admin\Models\SettingsEnum;
|
use Modules\Admin\Models\SettingsEnum;
|
||||||
use Modules\EquipmentManagement\Models\EquipmentAttributeTypeL11nMapper;
|
use Modules\EquipmentManagement\Models\Attribute\EquipmentAttributeTypeL11nMapper;
|
||||||
use Modules\EquipmentManagement\Models\EquipmentAttributeTypeMapper;
|
use Modules\EquipmentManagement\Models\Attribute\EquipmentAttributeTypeMapper;
|
||||||
use Modules\EquipmentManagement\Models\EquipmentMapper;
|
use Modules\EquipmentManagement\Models\EquipmentMapper;
|
||||||
use Modules\EquipmentManagement\Models\EquipmentTypeMapper;
|
use Modules\EquipmentManagement\Models\EquipmentTypeMapper;
|
||||||
use Modules\Media\Models\MediaMapper;
|
use Modules\Media\Models\MediaMapper;
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ declare(strict_types=1);
|
||||||
|
|
||||||
namespace Modules\EquipmentManagement\Models;
|
namespace Modules\EquipmentManagement\Models;
|
||||||
|
|
||||||
|
use Modules\Admin\Models\Account;
|
||||||
use phpOMS\Localization\BaseStringL11nType;
|
use phpOMS\Localization\BaseStringL11nType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -38,14 +39,25 @@ class Inspection implements \JsonSerializable
|
||||||
// Alternatively define default interval from inspection type?
|
// Alternatively define default interval from inspection type?
|
||||||
public ?\DateTime $next = null;
|
public ?\DateTime $next = null;
|
||||||
|
|
||||||
|
public ?\DateTime $date = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Inspectio interval in months
|
* Inspection duration in hours
|
||||||
|
*/
|
||||||
|
public int $duration = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Inspection interval in months
|
||||||
*
|
*
|
||||||
* @var int
|
* @var int
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
*/
|
*/
|
||||||
public int $interval = 0;
|
public int $interval = 0;
|
||||||
|
|
||||||
|
public int $reference = 0;
|
||||||
|
|
||||||
|
public ?Account $responsible = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,6 @@ declare(strict_types=1);
|
||||||
namespace Modules\EquipmentManagement\Models;
|
namespace Modules\EquipmentManagement\Models;
|
||||||
|
|
||||||
use phpOMS\DataStorage\Database\Mapper\DataMapperFactory;
|
use phpOMS\DataStorage\Database\Mapper\DataMapperFactory;
|
||||||
use phpOMS\Localization\BaseStringL11n;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* mapper class.
|
* mapper class.
|
||||||
|
|
@ -25,7 +24,7 @@ use phpOMS\Localization\BaseStringL11n;
|
||||||
* @link https://jingga.app
|
* @link https://jingga.app
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
*
|
*
|
||||||
* @template T of BaseStringL11n
|
* @template T of Inspection
|
||||||
* @extends DataMapperFactory<T>
|
* @extends DataMapperFactory<T>
|
||||||
*/
|
*/
|
||||||
final class InspectionMapper extends DataMapperFactory
|
final class InspectionMapper extends DataMapperFactory
|
||||||
|
|
@ -38,10 +37,12 @@ final class InspectionMapper extends DataMapperFactory
|
||||||
*/
|
*/
|
||||||
public const COLUMNS = [
|
public const COLUMNS = [
|
||||||
'equipmgmt_equipment_inspection_id' => ['name' => 'equipmgmt_equipment_inspection_id', 'type' => 'int', 'internal' => 'id'],
|
'equipmgmt_equipment_inspection_id' => ['name' => 'equipmgmt_equipment_inspection_id', 'type' => 'int', 'internal' => 'id'],
|
||||||
|
'equipmgmt_equipment_inspection_vehicle' => ['name' => 'equipmgmt_equipment_inspection_vehicle', 'type' => 'int', 'internal' => 'reference'],
|
||||||
'equipmgmt_equipment_inspection_description' => ['name' => 'equipmgmt_equipment_inspection_description', 'type' => 'string', 'internal' => 'description'],
|
'equipmgmt_equipment_inspection_description' => ['name' => 'equipmgmt_equipment_inspection_description', 'type' => 'string', 'internal' => 'description'],
|
||||||
'equipmgmt_equipment_inspection_status' => ['name' => 'equipmgmt_equipment_inspection_status', 'type' => 'int', 'internal' => 'status'],
|
'equipmgmt_equipment_inspection_status' => ['name' => 'equipmgmt_equipment_inspection_status', 'type' => 'int', 'internal' => 'status'],
|
||||||
'equipmgmt_equipment_inspection_interval' => ['name' => 'equipmgmt_equipment_inspection_interval', 'type' => 'int', 'internal' => 'interval'],
|
'equipmgmt_equipment_inspection_interval' => ['name' => 'equipmgmt_equipment_inspection_interval', 'type' => 'int', 'internal' => 'interval'],
|
||||||
'equipmgmt_equipment_inspection_next' => ['name' => 'equipmgmt_equipment_inspection_next', 'type' => 'DateTime', 'internal' => 'next'],
|
'equipmgmt_equipment_inspection_next' => ['name' => 'equipmgmt_equipment_inspection_next', 'type' => 'DateTime', 'internal' => 'next'],
|
||||||
|
'equipmgmt_equipment_inspection_date' => ['name' => 'equipmgmt_equipment_inspection_date', 'type' => 'DateTime', 'internal' => 'date'],
|
||||||
'equipmgmt_equipment_inspection_type' => ['name' => 'equipmgmt_equipment_inspection_type', 'type' => 'int', 'internal' => 'type'],
|
'equipmgmt_equipment_inspection_type' => ['name' => 'equipmgmt_equipment_inspection_type', 'type' => 'int', 'internal' => 'type'],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
@ -54,7 +55,7 @@ final class InspectionMapper extends DataMapperFactory
|
||||||
public const OWNS_ONE = [
|
public const OWNS_ONE = [
|
||||||
'type' => [
|
'type' => [
|
||||||
'mapper' => InspectionTypeMapper::class,
|
'mapper' => InspectionTypeMapper::class,
|
||||||
'external' => 'equipmgmt_equipment_inspection_type',
|
'external' => 'equipmgmt_equipment_type',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -71,14 +71,12 @@ final class Autoloader
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*
|
*
|
||||||
* @throws AutoloadException Throws this exception if the class to autoload doesn't exist. This could also be related to a wrong namespace/file path correlation.
|
|
||||||
*
|
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
*/
|
*/
|
||||||
public static function defaultAutoloader(string $class) : void
|
public static function defaultAutoloader(string $class) : void
|
||||||
{
|
{
|
||||||
$class = \ltrim($class, '\\');
|
$class = \ltrim($class, '\\');
|
||||||
$class = \str_replace(['_', '\\'], '/', $class);
|
$class = \strtr($class, '_\\', '//');
|
||||||
|
|
||||||
foreach (self::$paths as $path) {
|
foreach (self::$paths as $path) {
|
||||||
$file = $path . $class . '.php';
|
$file = $path . $class . '.php';
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user