Make api json_encode result use JSON_FORCE_OBJECT
This commit is contained in:
parent
e3a41febc5
commit
fea805e385
3 changed files with 75 additions and 12 deletions
|
|
@ -36,7 +36,7 @@ api_vehicle_mfg_list:
|
||||||
methods: [GET]
|
methods: [GET]
|
||||||
|
|
||||||
api_vehicle_make_list:
|
api_vehicle_make_list:
|
||||||
path: /api/vehicle/mfgs/{id}/makes
|
path: /api/vehicle/mfgs/{mfg_id}/makes
|
||||||
controller: App\Controller\APIController::listVehicleMakes
|
controller: App\Controller\APIController::listVehicleMakes
|
||||||
methods: [GET]
|
methods: [GET]
|
||||||
|
|
||||||
|
|
@ -61,7 +61,7 @@ api_promo_list:
|
||||||
methods: [GET]
|
methods: [GET]
|
||||||
|
|
||||||
api_battery_list:
|
api_battery_list:
|
||||||
path: /api/vehicles/{id}/compatible_batteries
|
path: /api/vehicles/{vid}/compatible_batteries
|
||||||
controller: App\Controller\APIController::getCompatibleBatteries
|
controller: App\Controller\APIController::getCompatibleBatteries
|
||||||
methods: [GET]
|
methods: [GET]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ use Doctrine\DBAL\DBALException;
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
use Symfony\Component\HttpFoundation\Response;
|
use Symfony\Component\HttpFoundation\Response;
|
||||||
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
|
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
|
||||||
|
use Symfony\Component\HttpFoundation\JsonResponse;
|
||||||
|
|
||||||
use App\Ramcar\APIResult;
|
use App\Ramcar\APIResult;
|
||||||
use App\Entity\MobileSession;
|
use App\Entity\MobileSession;
|
||||||
|
|
@ -112,7 +113,7 @@ class APIController extends Controller
|
||||||
$params = implode(', ', $missing);
|
$params = implode(', ', $missing);
|
||||||
$res->setError(true)
|
$res->setError(true)
|
||||||
->setErrorMessage('Missing parameter(s): ' . $params);
|
->setErrorMessage('Missing parameter(s): ' . $params);
|
||||||
return $this->json($res->getReturnResponse());
|
return $res->getReturnResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
$em = $this->getDoctrine()->getManager();
|
$em = $this->getDoctrine()->getManager();
|
||||||
|
|
@ -161,7 +162,7 @@ class APIController extends Controller
|
||||||
|
|
||||||
|
|
||||||
// response
|
// response
|
||||||
return $this->json($res->getReturnResponse());
|
return $res->getReturnResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function confirmNumber(Request $req)
|
public function confirmNumber(Request $req)
|
||||||
|
|
@ -175,7 +176,7 @@ class APIController extends Controller
|
||||||
$em = $this->getDoctrine()->getManager();
|
$em = $this->getDoctrine()->getManager();
|
||||||
$res = $this->checkParamsAndKey($req, $em, $required_params);
|
$res = $this->checkParamsAndKey($req, $em, $required_params);
|
||||||
if ($res->isError())
|
if ($res->isError())
|
||||||
return $this->json($res->getReturnResponse());
|
return $res->getReturnResponse();
|
||||||
|
|
||||||
// phone number
|
// phone number
|
||||||
$phone_number = $req->request->get('phone_number');
|
$phone_number = $req->request->get('phone_number');
|
||||||
|
|
@ -194,13 +195,11 @@ class APIController extends Controller
|
||||||
// TODO: send sms to number
|
// TODO: send sms to number
|
||||||
|
|
||||||
// response
|
// response
|
||||||
return $this->json($res->getReturnResponse());
|
return $res->getReturnResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function validateCode(Request $req)
|
public function validateCode(Request $req)
|
||||||
{
|
{
|
||||||
$res = new APIResult();
|
|
||||||
|
|
||||||
// check parameters
|
// check parameters
|
||||||
$required_params = [
|
$required_params = [
|
||||||
'code',
|
'code',
|
||||||
|
|
@ -210,7 +209,7 @@ class APIController extends Controller
|
||||||
$em = $this->getDoctrine()->getManager();
|
$em = $this->getDoctrine()->getManager();
|
||||||
$res = $this->checkParamsAndKey($req, $em, $required_params);
|
$res = $this->checkParamsAndKey($req, $em, $required_params);
|
||||||
if ($res->isError())
|
if ($res->isError())
|
||||||
return $this->json($res->getReturnResponse());
|
return $res->getReturnResponse();
|
||||||
|
|
||||||
// code is wrong
|
// code is wrong
|
||||||
$code = $req->request->get('code');
|
$code = $req->request->get('code');
|
||||||
|
|
@ -218,7 +217,7 @@ class APIController extends Controller
|
||||||
{
|
{
|
||||||
$res->setError(true)
|
$res->setError(true)
|
||||||
->setErrorMessage('Wrong confirm code');
|
->setErrorMessage('Wrong confirm code');
|
||||||
return $this->json($res->getReturnResponse());
|
return $res->getReturnResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
// set confirm date
|
// set confirm date
|
||||||
|
|
@ -228,6 +227,63 @@ class APIController extends Controller
|
||||||
$em->flush();
|
$em->flush();
|
||||||
|
|
||||||
// response
|
// response
|
||||||
return $this->json($res->getReturnResponse());
|
return $res->getReturnResponse();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getInfo()
|
||||||
|
{
|
||||||
|
// check required parameters and api key
|
||||||
|
$required_params = [];
|
||||||
|
$em = $this->getDoctrine()->getManager();
|
||||||
|
$res = $this->checkParamsAndKey($req, $em, $required_params);
|
||||||
|
if ($res->isError())
|
||||||
|
return $res->getReturnResponse();
|
||||||
|
|
||||||
|
|
||||||
|
return $res->getReturnResponse();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function updateInfo(Request $req)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getStatus()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function listVehicleManufacturers()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function listVehicleMakes($mfg_id)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addVehicle(Request $req)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function updateVehicle(Request $req, $id)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function listVehicles()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function listPromos()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCompatibleBatteries(Request $req, $vid)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function requestJobOrder(Request $req)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getEstimate(Request $req)
|
||||||
|
{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
namespace App\Ramcar;
|
namespace App\Ramcar;
|
||||||
|
|
||||||
|
use Symfony\Component\HttpFoundation\JsonResponse;
|
||||||
|
|
||||||
class APIResult
|
class APIResult
|
||||||
{
|
{
|
||||||
protected $err_flag;
|
protected $err_flag;
|
||||||
|
|
@ -55,12 +57,17 @@ class APIResult
|
||||||
else
|
else
|
||||||
$status = 'success';
|
$status = 'success';
|
||||||
|
|
||||||
return [
|
$return_data = [
|
||||||
'error' => [
|
'error' => [
|
||||||
'status' => $status,
|
'status' => $status,
|
||||||
'message' => $this->err_message
|
'message' => $this->err_message
|
||||||
],
|
],
|
||||||
'data' => $this->data
|
'data' => $this->data
|
||||||
];
|
];
|
||||||
|
|
||||||
|
$json = new JsonResponse($return_data);
|
||||||
|
$json->setEncodingOptions(JsonResponse::DEFAULT_ENCODING_OPTIONS | JSON_FORCE_OBJECT);
|
||||||
|
|
||||||
|
return $json;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue