diff --git a/Modules/HospitalPortal/Http/Controllers/Api/MemberController.php b/Modules/HospitalPortal/Http/Controllers/Api/MemberController.php index 9d3b4c51..e7000526 100755 --- a/Modules/HospitalPortal/Http/Controllers/Api/MemberController.php +++ b/Modules/HospitalPortal/Http/Controllers/Api/MemberController.php @@ -100,7 +100,10 @@ class MemberController extends Controller // Provider $providers = DB::table('organizations') ->where('organizations.type', '=', 'hospital') + ->where('organizations.corporate_id_partner', '!=', 8) + ->orWhere('organizations.corporate_id_partner', NULL) ->where('status', '=', 'active') + ->orderBy('organizations.name','asc') ->select( 'organizations.id', 'organizations.name' diff --git a/Modules/Internal/Http/Controllers/Api/DashboardController.php b/Modules/Internal/Http/Controllers/Api/DashboardController.php index 12ee1610..19534c72 100755 --- a/Modules/Internal/Http/Controllers/Api/DashboardController.php +++ b/Modules/Internal/Http/Controllers/Api/DashboardController.php @@ -167,15 +167,13 @@ class DashboardController extends Controller public function listDokter(Request $request) { $idDokter = [ - '68268', - '75047', - '75046', - '75045', - '75044', - '75043', - '75027', - '75021', - '75020', + '120866', + '107922', + '107921', + '107920', + '101192', + '99232', + '99230', ]; // List dokter $listDokters = Dokter::with([])->whereIn('nIDUser', $idDokter)->get(); @@ -184,8 +182,8 @@ class DashboardController extends Controller return [ 'id' => $dokter->nIDUser, 'code' => $dokter->nIDUser, - 'name' => $dokter->user->fullName, - 'online' => $dokter->sStatus, + 'name' => $dokter->user ? $dokter->user->fullName : '-', + 'online' => $dokter->sIsOnline, ]; }); diff --git a/Modules/Internal/Http/Controllers/Api/LivechatController.php b/Modules/Internal/Http/Controllers/Api/LivechatController.php index 9ebf682e..bd2825a7 100755 --- a/Modules/Internal/Http/Controllers/Api/LivechatController.php +++ b/Modules/Internal/Http/Controllers/Api/LivechatController.php @@ -67,6 +67,7 @@ class LivechatController extends Controller public function export(Request $request) { + ini_set('memory_limit', '1G'); $startDate = $request->has('startDate') ? $request->input('startDate') : ''; $endDate = $request->has('endDate') ? $request->input('endDate') : ''; $type = $request->has('type') ? $request->input('type') : ''; diff --git a/Modules/Internal/Http/Controllers/Api/NavigationController.php b/Modules/Internal/Http/Controllers/Api/NavigationController.php index cec2bb8e..545046c8 100755 --- a/Modules/Internal/Http/Controllers/Api/NavigationController.php +++ b/Modules/Internal/Http/Controllers/Api/NavigationController.php @@ -16,7 +16,8 @@ class NavigationController extends Controller public function index(Request $request) { // Ambil semua navigasi dari tabel dan ubah menjadi array - $navigations = Navigations::all()->toArray(); + // $navigations = Navigations::all()->toArray(); + $navigations = Navigations::orderBy('urutan', 'asc')->get()->toArray(); $navigationMaster = []; if ($navigations) { diff --git a/Modules/Internal/Http/Controllers/Api/UserManagementController.php b/Modules/Internal/Http/Controllers/Api/UserManagementController.php index 9171edec..92bfdcd9 100755 --- a/Modules/Internal/Http/Controllers/Api/UserManagementController.php +++ b/Modules/Internal/Http/Controllers/Api/UserManagementController.php @@ -202,4 +202,34 @@ class UserManagementController extends Controller return response()->json($userAccess); } + + public function delete(Request $request, $id) + { + try { + // Cari user berdasarkan ID + $user = User::findOrFail($id); + + // Hapus user + $user->delete(); + + // Response sukses + return response()->json([ + 'code' => 200, + 'message' => 'User berhasil dihapus', + 'data' => null, + ]); + } catch (\Illuminate\Database\Eloquent\ModelNotFoundException $e) { + return response()->json([ + 'code' => 404, + 'message' => 'User tidak ditemukan', + 'data' => null, + ], 404); + } catch (\Exception $e) { + return response()->json([ + 'code' => 500, + 'message' => 'Terjadi kesalahan saat menghapus user', + 'error' => $e->getMessage(), + ], 500); + } + } } diff --git a/Modules/Internal/Routes/api.php b/Modules/Internal/Routes/api.php index 0445b0d2..fc319d4a 100755 --- a/Modules/Internal/Routes/api.php +++ b/Modules/Internal/Routes/api.php @@ -415,6 +415,7 @@ Route::prefix('internal')->group(function () { Route::post('user/access', [UserManagementController::class, 'store_access']); Route::get('user/access/{id}', [UserManagementController::class, 'edit_access']); Route::put('user/access/{id}', [UserManagementController::class, 'update_access']); + Route::post('user/access/{id}/delete', [UserManagementController::class, 'delete']); Route::get('role-list', [UserManagementController::class, 'list_role']); Route::get('organization-list', [UserManagementController::class, 'list_organization']); diff --git a/Modules/Internal/Services/MemberEnrollmentService.php b/Modules/Internal/Services/MemberEnrollmentService.php index 9fa89777..5d2627d4 100755 --- a/Modules/Internal/Services/MemberEnrollmentService.php +++ b/Modules/Internal/Services/MemberEnrollmentService.php @@ -412,7 +412,7 @@ class MemberEnrollmentService ->first(); if (empty($member)) { - throw new ImportRowException(__('enrollment.MAPING_ID_NOT_SAME_MEMBER_ID'), 0, null, $row); + // throw new ImportRowException(__('enrollment.MAPING_ID_NOT_SAME_MEMBER_ID'), 0, null, $row); } else { // if ($member['record_type'] != 'P'){ // throw new ImportRowException(__('enrollment.PRINCIPAL_ID_NOT_SAME_MEMBER_ID'), 0, null, $row); diff --git a/Modules/Internal/Transformers/RequestLogResource.php b/Modules/Internal/Transformers/RequestLogResource.php index 60a4f0ac..e2e018e8 100755 --- a/Modules/Internal/Transformers/RequestLogResource.php +++ b/Modules/Internal/Transformers/RequestLogResource.php @@ -27,7 +27,7 @@ class RequestLogResource extends JsonResource 'submission_date' => $this->created_at, // submsion_date diambil dari kolom created_at 'admission_date' => $this->submission_date, // admission_date diambil dari kolom submission 'submission_date_fgl' => $this->approved_final_log_at, - 'member_name' => $this->member->name, + 'member_name' => $this->member->name ?? '-', 'status' => $this->status ?? 'unknown', 'provider' => $provider ? $provider->name : '-', 'status_final_log' => $this->status_final_log ?? 'unknown', diff --git a/database/seeders/NoSpjSeeder.php b/database/seeders/NoSpjSeeder.php new file mode 100644 index 00000000..3944efbf --- /dev/null +++ b/database/seeders/NoSpjSeeder.php @@ -0,0 +1,67 @@ +table('api_logs') + ->selectRaw("`sResponse` as sResponse") + ->where('sTarget', 'INHPostSJPdanRujukan') + ->orderByDesc('nID') + ->limit(1000) + ->get(); + + // Proses setiap log untuk mengambil nosjp dan refasalsjp + $berhasil = 0; + foreach ($apiLogs as $log) { + // Decode JSON string + $decodedResponse = json_decode($log->sResponse, true); + + // Cek apakah decode berhasil + if (json_last_error() === JSON_ERROR_NONE) { + // Ambil data dari field 'data' yang berisi JSON string + $data = json_decode($decodedResponse['data'], true); + + // Pastikan data yang diambil ada dan formatnya benar + if (isset($data['data'][0]['nosjp'], $data['data'][0]['refasalsjp'])) { + $nosjp = $data['data'][0]['nosjp']; + $refasalsjp = $data['data'][0]['refasalsjp']; + $nIDLiveChat = substr($refasalsjp, -5); + + // // Tampilkan hasil atau lakukan penyimpanan ke tabel lain + // echo "nosjp: " . $nosjp . ", refasalsjp: " . $refasalsjp . ", 5 karakter terakhir: " . $lastFiveCharacters . "\n"; + + // Contoh penyimpanan ke tabel lain (misal, table `processed_logs`) + DB::connection('oldlms')->table('tx_livechat') + ->where('nID', $nIDLiveChat) // Kondisi where ditempatkan sebelum update + ->update([ + 'sNoSpj' => $nosjp, + ] + ); + + echo "Berhasil data ke: " .$berhasil ++ . "\n";; + + } else { + // Tangani kasus jika data tidak sesuai + echo "Data tidak ditemukan dalam response: " . $log->sResponse . "\n"; + } + } else { + // Tangani kesalahan JSON decode + echo "Error decoding JSON: " . json_last_error_msg() . " in response: " . $log->sResponse . "\n"; + } + } + + } +} diff --git a/database/seeders/TambahDataKecamatanLMS.php b/database/seeders/TambahDataKecamatanLMS.php new file mode 100644 index 00000000..d3143eee --- /dev/null +++ b/database/seeders/TambahDataKecamatanLMS.php @@ -0,0 +1,47 @@ + 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Banyuanyar', 'nKodePos' => 57137], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Gilingan', 'nKodePos' => 57134], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Kadipiro', 'nKodePos' => 57136], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Keprabon', 'nKodePos' => 57131], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Kestalan', 'nKodePos' => 57133], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Ketelan', 'nKodePos' => 57132], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Manahan', 'nKodePos' => 57139], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Mangkubumen', 'nKodePos' => 57139], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Nusukan', 'nKodePos' => 57135], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Punggawan', 'nKodePos' => 57132], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Setabelan', 'nKodePos' => 57133], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Sumber', 'nKodePos' => 57138], + ['nIDKota' => 337205, 'nIDProvinsi' => 33, 'nIDKecamatan' => 337205, 'sKelurahan' => 'Timuran', 'nKodePos' => 57131], + ]; + + + // Insert data ke dalam tabel kelurahan + foreach ($kelurahanData as $data) { + DB::connection('oldlms')->table('tm_kelurahan')->insert([ + 'nIDKota' => $data['nIDKota'], + 'nIDProvinsi' => $data['nIDProvinsi'], + 'nIDKecamatan' => $data['nIDKecamatan'], + 'sKelurahan' => $data['sKelurahan'], + 'nKodePos' => $data['nKodePos'], + ]); + } + } +} diff --git a/frontend/dashboard/src/pages/CustomerService/FinalLog/Model/Types.tsx b/frontend/dashboard/src/pages/CustomerService/FinalLog/Model/Types.tsx index 8d08b7ac..e762385b 100755 --- a/frontend/dashboard/src/pages/CustomerService/FinalLog/Model/Types.tsx +++ b/frontend/dashboard/src/pages/CustomerService/FinalLog/Model/Types.tsx @@ -43,7 +43,6 @@ export type DetailFinalLogType = { marital_status : string, admission_date : string, submission_date : string, - admission_date : string, approved_final_log_at : string, service_type : string, claim_method : string,