30 lines
861 B
PHP
30 lines
861 B
PHP
<?php
|
|
|
|
namespace App\Action;
|
|
|
|
use App\Entity\Sms;
|
|
use App\Response\JsonCorsResponse;
|
|
use App\Service\SmsStoreService;
|
|
use Interop\Http\ServerMiddleware\DelegateInterface;
|
|
use Psr\Http\Message\ServerRequestInterface;
|
|
|
|
class StoreAction extends AbstractAction
|
|
{
|
|
private $smsStore;
|
|
|
|
public function __construct(SmsStoreService $smsStore)
|
|
{
|
|
$this->smsStore = $smsStore;
|
|
}
|
|
|
|
public function create(ServerRequestInterface $request, DelegateInterface $delegate)
|
|
{
|
|
$hashKey = $request->getAttribute('hashKey');
|
|
$direction = $request->getAttribute('direction');
|
|
$mappedDirection = Sms::MAP_DIRECTIONS[$direction];
|
|
$requestData = $this->getRequestData($request);
|
|
$isStored = $this->smsStore->storeSms($hashKey, $mappedDirection, $requestData);
|
|
return new JsonCorsResponse($isStored);
|
|
}
|
|
}
|