diff --git a/Modules/Linksehat/Http/Controllers/Api/AuthController.php b/Modules/Linksehat/Http/Controllers/Api/AuthController.php index 8aff0150..338fa5bc 100644 --- a/Modules/Linksehat/Http/Controllers/Api/AuthController.php +++ b/Modules/Linksehat/Http/Controllers/Api/AuthController.php @@ -158,8 +158,6 @@ class AuthController extends Controller public function logout(Request $request) { $token = $request->bearerToken(); - Auth::user()->tokens()->where('id', $token)->delete(); - return Helper::responseJson(message: 'Behasil Logout.'); } diff --git a/Modules/Linksehat/Http/Controllers/Api/AutocompleteController.php b/Modules/Linksehat/Http/Controllers/Api/AutocompleteController.php index d8ad5514..7161e3bd 100644 --- a/Modules/Linksehat/Http/Controllers/Api/AutocompleteController.php +++ b/Modules/Linksehat/Http/Controllers/Api/AutocompleteController.php @@ -50,13 +50,13 @@ class AutocompleteController extends Controller { } public function relationship() { - $bloodType = DB::connection('oldlms')->table('tm_hubungan_keluarga')->get()->toArray(); + $relation = DB::connection('oldlms')->table('tm_hubungan_keluarga')->get()->toArray(); $data = []; - if ($bloodType){ + if ($relation){ $temp = []; - foreach($bloodType as $d){ + foreach($relation as $d){ $temp['id'] = $d->nID; $temp['value'] = $d->sHubunganKeluarga; @@ -66,5 +66,31 @@ class AutocompleteController extends Controller { } return Helper::responseJson($data); } + + public function corporate(Request $request) { + $search = $request->search; + $corporate = DB::table('corporates') + ->where(function ($query) use ($search) { + $query->where('name', 'like', "%$search%") + ->orWhere('code', 'like', "%$search%"); + }) + ->get() + ->toArray(); + + $data['company'] = []; + + if ($corporate){ + $temp = []; + foreach($corporate as $d){ + $temp['id'] = $d->id; + $temp['name'] = $d->name; + $temp['linking_rule'] = json_decode($d->linking_rules); + + array_push($data['company'], $temp); + } + + } + return Helper::responseJson($data); + } } diff --git a/Modules/Linksehat/Http/Controllers/Api/ProfileController.php b/Modules/Linksehat/Http/Controllers/Api/ProfileController.php index 5a13f57e..e7134448 100644 --- a/Modules/Linksehat/Http/Controllers/Api/ProfileController.php +++ b/Modules/Linksehat/Http/Controllers/Api/ProfileController.php @@ -79,6 +79,7 @@ class ProfileController extends Controller 'first_name' => 'required', 'last_name' => 'required', 'date_of_birth' => 'required', + 'email' => 'required', ]); @@ -88,24 +89,36 @@ class ProfileController extends Controller $user = User::find($request->id); $userDetail = UserDetail::where('nIDUser', $request->id)->first(); + // Array asosiatif yang menghubungkan field dengan nama kolom di tabel + $userFields = [ + 'first_name' => 'sFirstName', + 'last_name' => 'sLastName', + 'phone' => 'sPhone', + 'email' => 'sEmail', + 'relationship' => 'nIDHubunganKeluarga', + ]; + + $userDetailFields = [ + 'date_of_birth' => 'dTanggalLahir', + 'gender' => 'nIDJenisKelamin', + 'blood_type' => 'nIDGolonganDarah', + 'marital_status' => 'sMartialStatus', + ]; // Update user data - $user->update([ - 'sFirstName' => $request->first_name, - 'sLastName' => $request->last_name, - 'sPhone' => $request->phone, - 'sEmail' => $request->email, - 'nIDHubunganKeluarga' => $request->relationship, - ]); + foreach ($userFields as $requestField => $column) { + if ($request->filled($requestField)) { + $user->update([$column => $request->$requestField]); + } + } // Update user detail - $userDetail->update([ - 'dTanggalLahir' => $request->date_of_birth, - 'nIDJenisKelamin' => $request->gender, - 'nIDGolonganDarah' => $request->blood_type, - 'sMartialStatus' => $request->marital_status, + foreach ($userDetailFields as $requestField => $column) { + if ($request->filled($requestField)) { + $userDetail->update([$column => $request->$requestField]); + } + } - ]); // poto profile // if ($request->hasFile('avatar')) { diff --git a/Modules/Linksehat/Routes/api.php b/Modules/Linksehat/Routes/api.php index 2bcf07dc..763ecab6 100644 --- a/Modules/Linksehat/Routes/api.php +++ b/Modules/Linksehat/Routes/api.php @@ -73,5 +73,7 @@ Route::prefix('linksehat')->group(function () { Route::get('autocomplete/marital_status', [AutocompleteController::class, 'maritalStatus']); Route::get('autocomplete/blood_type', [AutocompleteController::class, 'bloodType']); Route::get('autocomplete/relationship', [AutocompleteController::class, 'relationship']); + Route::get('autocomplete/corporate', [AutocompleteController::class, 'corporate']); + }); });