From 95f771c2523c3f786c38555da2f181a9c8ca117f Mon Sep 17 00:00:00 2001 From: Ramon Gutierrez Date: Thu, 7 Sep 2023 06:54:30 +0800 Subject: [PATCH] Update field requirements for is_public and vehicle_use_type #761 --- .../CustomerAppAPI/InsuranceController.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/Controller/CustomerAppAPI/InsuranceController.php b/src/Controller/CustomerAppAPI/InsuranceController.php index a32e67c0..168f572a 100644 --- a/src/Controller/CustomerAppAPI/InsuranceController.php +++ b/src/Controller/CustomerAppAPI/InsuranceController.php @@ -72,13 +72,28 @@ class InsuranceController extends ApiController //'orcr_file', // this is a file // mv_type_id specific fields - 'vehicle_use_type', // accepted values are: 'commercial', 'private' + //'vehicle_use_type', // not required, only show field if mv_type_id is not in [4, 13]. accepted values are: 'commercial', 'private' ]); if (!$validity['is_valid']) { return new ApiResponse(false, $validity['error']); } + // conditionally require is_public or vehicle_use_type + switch ($req->request->get('mv_type_id')) { + case 4: + case 13: + if (empty($req->request->get('is_public'))) { + return new ApiResponse(false, 'Missing required parameter(s): is_public is required when mv_type_id is in [4, 13]'); + } + break; + default: + if (empty($req->request->get('vehicle_use_type'))) { + return new ApiResponse(false, 'Missing required parameter(s): vehicle_use_type is required when mv_type_id is not in [4, 13]'); + } + break; + } + // require the orcr file if ($req->files->get('orcr_file') === null) { return new ApiResponse(false, 'Missing required file: orcr_file');