ReportException.php 695 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. declare(strict_types=1);
  3. namespace app\miniapi\service\driver;
  4. use app\miniapi\http\Fields;
  5. use app\miniapi\model\MiniTaskRecord;
  6. use plugin\saiadmin\app\model\water\WaterDelivery;
  7. final class ReportException extends InTransitAction
  8. {
  9. public function fields(): array
  10. {
  11. return ['request_key', 'reason'];
  12. }
  13. protected function handle(WaterDelivery $task, array $input, int $user): array
  14. {
  15. MiniTaskRecord::recordEvent((int) $task->id, $user, 'exception', ['reason' => Fields::text($input, 'reason', 255)]);
  16. return [
  17. 'id' => (int) $task->id,
  18. 'reported' => true,
  19. 'status' => $task->status,
  20. ];
  21. }
  22. }