diff --git a/Controller/ApiController.php b/Controller/ApiController.php index 3884a96..c50aeb1 100644 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -14,7 +14,6 @@ declare(strict_types=1); namespace Modules\QualityManagement\Controller; -use Attribute; use Modules\Admin\Models\NullAccount; use Modules\Notification\Models\NotificationType; use Modules\QualityManagement\Models\Report; @@ -23,7 +22,7 @@ use Modules\Tasks\Models\Attribute\TaskAttributeTypeMapper; use Modules\Tasks\Models\TaskElementMapper; use Modules\Tasks\Models\TaskMapper; use Modules\Tasks\Models\TaskStatus; -use Modules\Tasks\Models\TaskType; +use phpOMS\Message\Http\HttpRequest; use phpOMS\Message\Http\RequestStatusCode; use phpOMS\Message\RequestAbstract; use phpOMS\Message\ResponseAbstract; @@ -105,7 +104,7 @@ final class ApiController extends Controller { $request->setData('redirect', 'qualitymanagement/report/view?for={$id}'); /** @var \Modules\Tasks\Models\Task $task */ - $task = $this->app->moduleManager->get('Tasks', 'Api')->createTaskFromRequest($request); + $task = $this->app->moduleManager->get('Tasks', 'Api')->createTaskFromRequest($request); $task->unit ??= $this->app->unitId; $task->for = $request->hasData('account') ? new NullAccount((int) $request->getData('account')) : null; @@ -115,7 +114,7 @@ final class ApiController extends Controller ->execute(); if ($attrType->id !== 0) { - $internalRequest = new RequestAbstract(); + $internalRequest = new HttpRequest(); $internalRequest->setData('value', $value); $attribute = $this->app->moduleManager->get('Attribute', 'Api')->createAttributeFromRequest($internalRequest, $attrType); @@ -129,7 +128,7 @@ final class ApiController extends Controller ->execute(); if ($attrType->id !== 0) { - $internalRequest = new RequestAbstract(); + $internalRequest = new HttpRequest(); $internalRequest->setData('value', $value); $attribute = $this->app->moduleManager->get('Attribute', 'Api')->createAttributeFromRequest($internalRequest, $attrType); @@ -143,7 +142,7 @@ final class ApiController extends Controller ->execute(); if ($attrType->id !== 0) { - $internalRequest = new RequestAbstract(); + $internalRequest = new HttpRequest(); $internalRequest->setData('value', $value); $attribute = $this->app->moduleManager->get('Attribute', 'Api')->createAttributeFromRequest($internalRequest, $attrType); @@ -302,7 +301,14 @@ final class ApiController extends Controller $this->app->moduleManager->get('Tasks')->apiTaskElementSet($request, $response); /** @var \Modules\Tasks\Models\TaskElement $new */ - $new = $response->getDataArray($request->uri->__toString())['response']; + $new = $response->getDataArray($request->uri->__toString())['response'] ?? null; + + if ($new === null) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidUpdateResponse($request, $response, $new); + + return; + } //$this->updateModel($request->header->account, $report, $report, ReportMapper::class, 'report', $request->getOrigin()); $this->createStandardUpdateResponse($request, $response, $new); diff --git a/Controller/BackendController.php b/Controller/BackendController.php index c5746e3..2db0fed 100644 --- a/Controller/BackendController.php +++ b/Controller/BackendController.php @@ -15,6 +15,7 @@ declare(strict_types=1); namespace Modules\QualityManagement\Controller; use Modules\Media\Models\MediaMapper; +use Modules\Profile\Models\SettingsEnum as ProfileSettingsEnum; use Modules\QualityManagement\Models\ReportMapper; use Modules\QualityManagement\Views\ReportView; use Modules\Tasks\Models\AccountRelationMapper; @@ -25,11 +26,10 @@ use Modules\Tasks\Models\TaskType; use phpOMS\Contract\RenderableInterface; use phpOMS\DataStorage\Database\Query\Builder; use phpOMS\DataStorage\Database\Query\OrderType; +use phpOMS\Message\Http\RequestStatusCode; use phpOMS\Message\RequestAbstract; use phpOMS\Message\ResponseAbstract; use phpOMS\Views\View; -use Modules\Profile\Models\SettingsEnum as ProfileSettingsEnum; -use phpOMS\Message\Http\RequestStatusCode; /** * QualityManagement controller class. diff --git a/Theme/Backend/Lang/de.lang.php b/Theme/Backend/Lang/de.lang.php index c61a40b..a8ab216 100644 --- a/Theme/Backend/Lang/de.lang.php +++ b/Theme/Backend/Lang/de.lang.php @@ -32,7 +32,7 @@ return ['QualityManagement' => [ 'Forwarded' => 'Weitergeleitet', 'From' => 'Von', 'Group' => 'Gruppe', - 'Reference' => 'Referenz', + 'Reference' => 'Referenz', 'InTime' => 'Rechtzeitig', 'Interval' => 'Intervall', 'Media' => 'Medien', @@ -60,7 +60,7 @@ return ['QualityManagement' => [ 'To' => 'Zu', 'Item' => 'Artikel', 'Bill' => 'Beleg', - 'LotSN' => 'Charge/SN', + 'LotSN' => 'Charge/SN', 'Today' => 'Heute', 'Topic' => 'Thema', 'Type' => 'Typ', diff --git a/Theme/Backend/Lang/en.lang.php b/Theme/Backend/Lang/en.lang.php index 930a46e..5457801 100644 --- a/Theme/Backend/Lang/en.lang.php +++ b/Theme/Backend/Lang/en.lang.php @@ -29,7 +29,7 @@ return ['QualityManagement' => [ 'Due' => 'Due', 'Files' => 'Files', 'For' => 'For', - 'Reference' => 'Reference', + 'Reference' => 'Reference', 'Forwarded' => 'Forwarded', 'From' => 'From', 'Group' => 'Group', @@ -60,7 +60,7 @@ return ['QualityManagement' => [ 'To' => 'To', 'Item' => 'Item', 'Bill' => 'Bill', - 'LotSN' => 'Lot/SN', + 'LotSN' => 'Lot/SN', 'Today' => 'Today', 'Topic' => 'Topic', 'Type' => 'Type', diff --git a/Theme/Backend/report-view.tpl.php b/Theme/Backend/report-view.tpl.php index ec954ea..48a5348 100644 --- a/Theme/Backend/report-view.tpl.php +++ b/Theme/Backend/report-view.tpl.php @@ -25,7 +25,7 @@ $taskMedia = $task->files; $elements = $report->task->invertTaskElements(); $cElements = \count($elements); $color = 'red'; //$this->getStatus($task->status); -$isNew = $report->id === 0; +$isNew = $report->id === 0; echo $this->data['nav']->render(); ?> diff --git a/info.json b/info.json index 9dffd8d..549896a 100644 --- a/info.json +++ b/info.json @@ -2,7 +2,7 @@ "name": { "id": 1008500000, "internal": "QualityManagement", - "external": "QualityManagement" + "external": "Quality Management" }, "category": "Tools", "version": "1.0.0", @@ -12,7 +12,7 @@ }, "creator": { "name": "Jingga", - "website": "jingga.app" + "website": "https://jingga.app" }, "directory": "QualityManagement", "dependencies": {