change response json
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace Modules\Linksehat\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Person;
|
||||
use App\Models\User;
|
||||
@@ -10,6 +11,7 @@ use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Laravel\Socialite\Facades\Socialite;
|
||||
use Modules\Linksehat\Transformers\UserProfileResource;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Validator;
|
||||
|
||||
class AuthController extends Controller
|
||||
@@ -60,11 +62,9 @@ class AuthController extends Controller
|
||||
}
|
||||
|
||||
if (!$user) {
|
||||
return response()->json([
|
||||
'message' => filter_var($request->phone_or_email, FILTER_VALIDATE_EMAIL) ?
|
||||
"User dengan alamat email " . $request->phone_or_email . " tidak ditemukan" :
|
||||
"User dengan nomor telepon " . $request->phone_or_email . " tidak ditemukan"
|
||||
], 404);
|
||||
$message = filter_var($request->phone_or_email, FILTER_VALIDATE_EMAIL) ? "User dengan alamat email " . $request->phone_or_email . " tidak ditemukan" : "User dengan nomor telepon " . $request->phone_or_email . " tidak ditemukan";
|
||||
|
||||
return Helper::responseJson(statusCode: Response::HTTP_NOT_FOUND, message: $message);
|
||||
}
|
||||
|
||||
// TODO Send the OTP
|
||||
@@ -74,13 +74,10 @@ class AuthController extends Controller
|
||||
// Send Whatsapp
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'message' => 'OTP Terkirim',
|
||||
'data' => [
|
||||
'otp' => $user->otp,
|
||||
'otp_valid_until' => $user->otp_created_at->addMinutes(config('linksehat.otp_valid_minutes'))
|
||||
]
|
||||
]);
|
||||
return Helper::responseJson(data: [
|
||||
'otp' => $user->otp,
|
||||
'otp_valid_until' => $user->otp_created_at->addMinutes(config('linksehat.otp_valid_minutes'))
|
||||
], message: 'OTP Terkirim');
|
||||
}
|
||||
|
||||
public function login(Request $request)
|
||||
@@ -124,11 +121,7 @@ class AuthController extends Controller
|
||||
return response(['message' => 'Mode Login Tidak Dikenal'], 403);
|
||||
}
|
||||
|
||||
return response([
|
||||
'message' => 'Selamat Datang',
|
||||
'user' => UserProfileResource::make($user),
|
||||
'token' => $user->createToken('app')->plainTextToken
|
||||
]);
|
||||
return Helper::responseJson(data: ['token' => $user->createToken('app')->plainTextToken], message: 'Selamat Datang');
|
||||
}
|
||||
|
||||
public function register(Request $request)
|
||||
@@ -148,19 +141,14 @@ class AuthController extends Controller
|
||||
])->validate();
|
||||
|
||||
try {
|
||||
$user = User::create([
|
||||
User::create([
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
]);
|
||||
|
||||
return response()->json([
|
||||
'message' => 'Akun berhasil dibuat, silahkan cek E-mail untuk konfirmasi'
|
||||
], 201);
|
||||
return Helper::responseJson(statusCode: Response::HTTP_CREATED, message: 'Akun berhasil dibuat, silahkan cek E-mail untuk konfirmasi');
|
||||
} catch (\Exception $e) {
|
||||
return response()->json([
|
||||
'message' => 'Terjadi masalah ketika mendaftar',
|
||||
'error_message' => $e->getMessage()
|
||||
], 403);
|
||||
return Helper::responseJson(['error_message' => $e->getMessage()], Response::HTTP_FORBIDDEN, 'Terjadi masalah ketika mendaftar');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -169,7 +157,7 @@ class AuthController extends Controller
|
||||
$token = $request->bearerToken();
|
||||
Auth::user()->tokens()->where('id', $token)->delete();
|
||||
|
||||
return response(['message' => 'Berhasil Logout.']);
|
||||
return Helper::responseJson(message: 'Behasil Logout.');
|
||||
}
|
||||
|
||||
public function mockOtp(Request $request)
|
||||
@@ -178,23 +166,12 @@ class AuthController extends Controller
|
||||
'phone_or_email' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where((filter_var($request->phone_or_email, FILTER_VALIDATE_EMAIL) ? 'email' : 'phone'), $request->phone_or_email)->first();
|
||||
$user = User::query()->where((filter_var($request->phone_or_email, FILTER_VALIDATE_EMAIL) ? 'email' : 'phone'), $request->phone_or_email)->firstOrFail();
|
||||
|
||||
if ($user) {
|
||||
return response()->json([
|
||||
'message' => 'OTP Anda',
|
||||
'data' => [
|
||||
'otp' => $user->otp,
|
||||
'otp_valid_until' => $user->otp_created_at ? $user->otp_created_at->addMinutes(config('linksehat.otp_valid_minutes')) : null
|
||||
]
|
||||
]);
|
||||
}
|
||||
|
||||
if (!$user) {
|
||||
return response()->json([
|
||||
'message' => 'User Tidak Ditemukan'
|
||||
], 404);
|
||||
}
|
||||
return Helper::responseJson(data: [
|
||||
'otp' => $user->otp,
|
||||
'otp_valid_until' => $user->otp_created_at ? $user->otp_created_at->addMinutes(config('linksehat.otp_valid_minutes')) : null
|
||||
], message: 'OTP Anda');
|
||||
}
|
||||
|
||||
public function redirectSocialLogin($provider)
|
||||
@@ -224,10 +201,9 @@ class AuthController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
return response([
|
||||
'message' => 'Selamat Datang',
|
||||
return Helper::responseJson(data: [
|
||||
'user' => UserProfileResource::make($user),
|
||||
'token' => $user->createToken('app')->plainTextToken
|
||||
]);
|
||||
], message: 'Selamat Datang');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace Modules\Linksehat\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Models\Organization;
|
||||
use App\Models\PractitionerRole;
|
||||
use Illuminate\Routing\Controller;
|
||||
@@ -58,11 +59,6 @@ class DashboardController extends Controller
|
||||
$data = ArticleResource::collection(json_decode(Http::get('https://linksehat.com/api/medical-assistance-articles')));
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_OK,
|
||||
'message' => 'Data berhasil di ambil',
|
||||
'data' => $data,
|
||||
]);
|
||||
return Helper::responseJson($data);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,8 +10,7 @@ use DB;
|
||||
use Illuminate\Contracts\Support\Renderable;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Routing\Controller;
|
||||
use Modules\Linksehat\Transformers\DoctorResource;
|
||||
use Modules\Linksehat\Transformers\Doctors\DoctorResourceDetail;
|
||||
use Modules\Linksehat\Transformers\Doctor\DoctorResourceDetail;
|
||||
use Modules\Linksehat\Transformers\PractitionerRoleToDoctorResource;
|
||||
|
||||
class DoctorController extends Controller
|
||||
@@ -61,7 +60,7 @@ class DoctorController extends Controller
|
||||
|
||||
$doctors = $doctors->paginate($limit);
|
||||
|
||||
return Helper::makeJsonResponse(Helper::paginateResources(PractitionerRoleToDoctorResource::collection($doctors)));
|
||||
return Helper::responseJson(Helper::paginateResources(PractitionerRoleToDoctorResource::collection($doctors)));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -105,6 +104,7 @@ class DoctorController extends Controller
|
||||
$doctor = DoctorResourceDetail::make($queryDoctor);
|
||||
$doctor['day_available'] = Helper::dailyAvailabilities($queryAvailables);
|
||||
|
||||
// return Helper::responseJson();
|
||||
return response()->json(compact('doctor'));
|
||||
}
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace Modules\Linksehat\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Models\Organization;
|
||||
use Illuminate\Contracts\Support\Renderable;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
@@ -115,7 +116,7 @@ class HospitalController extends Controller
|
||||
});
|
||||
$queryHospitals = $queryHospitals->orderBy('organizations.name', 'asc')->findOrFail($id);
|
||||
|
||||
return HospitalResource::make($queryHospitals);
|
||||
return Helper::responseJson(new HospitalResource($queryHospitals));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace Modules\Linksehat\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Models\File;
|
||||
use App\Models\Person;
|
||||
use Auth;
|
||||
@@ -28,7 +29,7 @@ class PersonController extends Controller
|
||||
unset($currentUserPerson->families);
|
||||
$families->prepend($currentUserPerson);
|
||||
|
||||
return PersonResource::collection($families);
|
||||
return Helper::responseJson(PersonResource::collection($families));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -68,14 +69,7 @@ class PersonController extends Controller
|
||||
|
||||
$personModel = Person::query()->create($personData);
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_CREATED,
|
||||
'message' => 'Data Berhasil di buat',
|
||||
'data' => [
|
||||
'person' => $personModel,
|
||||
],
|
||||
], Response::HTTP_CREATED);
|
||||
return Helper::responseJson(['person' => $personModel], Response::HTTP_CREATED, 'Data berhasil di buat');
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -85,14 +79,7 @@ class PersonController extends Controller
|
||||
*/
|
||||
public function show(Person $person)
|
||||
{
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_OK,
|
||||
'message' => 'Data Person dengan nama ' . $person->name . ' berhasil di ambil',
|
||||
'data' => [
|
||||
'person' => new PersonResource($person),
|
||||
],
|
||||
]);
|
||||
return Helper::responseJson(data: new PersonResource($person), message: 'Data Person dengan nama ' . $person->name . ' berhasil di ambil');
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -126,8 +113,6 @@ class PersonController extends Controller
|
||||
'domicile_address_id',
|
||||
]);
|
||||
|
||||
return Person::query()->with('families')->find(auth()->user()->person_id);
|
||||
|
||||
$person->update($personData);
|
||||
|
||||
if ($request->hasFile('user_avatar')) {
|
||||
@@ -167,14 +152,7 @@ class PersonController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_OK,
|
||||
'message' => 'Data Berhasil di update',
|
||||
'data' => [
|
||||
'person' => $person,
|
||||
],
|
||||
]);
|
||||
return Helper::responseJson(data: $person, message: 'Data Berhasil di update');
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,10 +2,12 @@
|
||||
|
||||
namespace Modules\Linksehat\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Models\User;
|
||||
use Illuminate\Contracts\Support\Renderable;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Routing\Controller;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Modules\Linksehat\Transformers\UserProfileResource;
|
||||
|
||||
class ProfileController extends Controller
|
||||
@@ -16,12 +18,9 @@ class ProfileController extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$user = auth()->user();
|
||||
$user->load('person');
|
||||
$user = Auth::user()->load('person');
|
||||
|
||||
return response()->json([
|
||||
'user' => UserProfileResource::make($user)
|
||||
]);
|
||||
return Helper::responseJson(new UserProfileResource($user));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -84,7 +83,7 @@ class ProfileController extends Controller
|
||||
'preferred_lang' => 'in:id,en'
|
||||
]);
|
||||
|
||||
$user = auth()->user();
|
||||
$user = Auth::user();
|
||||
if ($user->person) { // Update Profile
|
||||
$user->person->fill($request->only([
|
||||
'nik', 'name_prefix', 'name', 'name_suffix', 'gender', 'birth_date', 'deceased_at', 'marital_status'
|
||||
@@ -109,7 +108,7 @@ class ProfileController extends Controller
|
||||
$newPerson = $user->person()->create($newPerson);
|
||||
$user->person_id = $newPerson->id;
|
||||
$user->save();
|
||||
|
||||
|
||||
if ($request->has('preferred_lang')) {
|
||||
$user->metas()->updateOrCreate([
|
||||
'type' => 'preferred_lang'
|
||||
@@ -122,7 +121,7 @@ class ProfileController extends Controller
|
||||
}
|
||||
|
||||
$user = User::find($user->id); // ReLoad User Data
|
||||
return response()->json(UserProfileResource::make($user));
|
||||
return Helper::responseJson(new UserProfileResource($user));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace Modules\Linksehat\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Models\Organization;
|
||||
use App\Models\Practice;
|
||||
use App\Models\PractitionerRole;
|
||||
@@ -32,14 +33,7 @@ class SearchController extends Controller
|
||||
->where('organization_id', $request->organization_id)
|
||||
->get(['persons.name AS person_name', 'specialities.name AS speciality_name', 'practitioner_id', 'practitioner_roles.id']);
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_OK,
|
||||
'message' => 'Data Berhasil di ambil',
|
||||
'data' => [
|
||||
'doctors' => SpecialityResource::collection($doctors)
|
||||
]
|
||||
]);
|
||||
return Helper::responseJson(SpecialityResource::collection($doctors));
|
||||
}
|
||||
|
||||
public function searchHospital(Request $request)
|
||||
@@ -74,11 +68,6 @@ class SearchController extends Controller
|
||||
->groupBy(['practitioner_roles.organization_id', 'practitioner_roles.speciality_id'])
|
||||
->get();
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_OK,
|
||||
'message' => 'Data rumah sakit berhasil di ambil',
|
||||
'data' => HospitalResource::collection($queryHospitals)
|
||||
]);
|
||||
return Helper::responseJson(data: HospitalResource::collection($queryHospitals), message: 'Data rumah sakit berhasil di ambil');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace Modules\Linksehat\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Models\Practice;
|
||||
use App\Models\PractitionerRole;
|
||||
use App\Models\Speciality;
|
||||
@@ -42,26 +43,16 @@ class SpecialityController extends Controller
|
||||
$specialisName = $doctor->speciality->name;
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_OK,
|
||||
'message' => 'Data Berhasil di ambil',
|
||||
'data' => [
|
||||
'title' => 'Spesialis ' . $specialisName,
|
||||
'doctors' => SpecialityResource::collection($doctors)
|
||||
]
|
||||
return Helper::responseJson([
|
||||
'title' => 'Spesialis ' . $specialisName,
|
||||
'doctors' => SpecialityResource::collection($doctors)
|
||||
]);
|
||||
}
|
||||
|
||||
public function listSpeciality()
|
||||
{
|
||||
$specialities = Speciality::query()->get(['name']);
|
||||
$querySpecialities = Speciality::query()->get(['name']);
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'statusCode' => Response::HTTP_OK,
|
||||
'message' => 'Data Berhasil di ambil',
|
||||
'data' => SpecialityResource::collection($specialities)
|
||||
]);
|
||||
return Helper::responseJson(SpecialityResource::collection($querySpecialities));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Linksehat\Transformers\Doctors;
|
||||
namespace Modules\Linksehat\Transformers\Doctor;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Models\Organization;
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
use Modules\Linksehat\Transformers\Dashboard\HospitalResource;
|
||||
use Modules\Linksehat\Transformers\Hospital\HospitalResource;
|
||||
|
||||
class DoctorResourceDetail extends JsonResource
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@ namespace App\Helpers;
|
||||
|
||||
use Carbon\Carbon;
|
||||
use Carbon\CarbonPeriod;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
|
||||
class Helper
|
||||
@@ -144,12 +145,20 @@ class Helper
|
||||
return (object) $schedules;
|
||||
}
|
||||
|
||||
public static function currencyIdrFormat($price)
|
||||
public static function currencyIdrFormat(int $price)
|
||||
{
|
||||
return "Rp. " . number_format($price, 0, ',', '.');
|
||||
}
|
||||
|
||||
public static function responseJson($data = [], $statusCode = Response::HTTP_OK, $message = 'Data berhasil di ambil')
|
||||
/**
|
||||
* Helper Response Json.
|
||||
*
|
||||
* @param array|object $data
|
||||
* @param int $statusCode
|
||||
* @param string $message
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public static function responseJson(array|object $data = [], int $statusCode = Response::HTTP_OK, string $message = 'Data berhasil di ambil'): JsonResponse
|
||||
{
|
||||
return response()->json([
|
||||
'status' => $statusCode != 200 ? 'error' : 'success',
|
||||
|
||||
Reference in New Issue
Block a user