Cara Setting SweetAlert2 untuk Modal Konfirmasi Hapus Data

Berikut cara menggunakan SweetAlert2 untuk Modal Konfirmasi Hapus Data

swal.fire({title: "Konfirmasi", text: "Yakin hapus data?", icon: "warning", showCancelButton: true})
    .then(result => {
         if (result.isConfirmed) {
            alert("deleted");
         }
    });

Semoga Bermanfaat!! Tetap Sehat, Tetap Semangat, agar dapat Tetap dalam Perdjoeangan!!

Cara Return Response 422 (Unprocessable Entity / Content) di Laravel

Berikut contoh custom validasi yang return response 422, untuk mengecek apakah nilai pada array nominal_bayar kosong (null / empty) semua atau tidak.

$nominal_bayar = $request->nominal_bayar;
if (!array_filter($nominal_bayar)) {
    return response()->json(["errors" => ["nominal_bayar" => "Silakan input nominal pembayaran."]], 422);
}

Semoga bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!

Cara Setting Redis untuk menyimpan Laravel Session

1. Install package predis/predis

composer require predis/predis

2. Edit config berikut pada file .env

CACHE_DRIVER=redis
CACHE_PREFIX=cache    # akan digabung dengan REDIS_PREFIX
SESSION_DRIVER=redis
SESSION_LIFETIME=120

REDIS_CLIENT=predis   # default pakai phpredis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
REDIS_PREFIX=simrs_   # akan digabung dengan CACHE_PREFIX

3. Run php artisan optimize

php artisan optimize

4. Hasil dilihat pakai RedisInsight

RedisInsight untuk menampilkan data session Laravel yang disimpan di server Redis

Semoga Bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!

Cara Menggunakan Laravel Pagination dengan Distinct

Masalah: ketika menggunakan distinct pada fungsi paginate, ternyata hasil querynya sudah benar hanya tampil 2 data (fungsi distinct berhasil), namun total data/count-nya masih 12 (tanpa distinct).

$data = InputTindakan::join("tindakan AS t", "input_tindakan.tindakan_id", "t.id")
        ->whereRaw("rawat_jalan_id=?", [$kunjungan_id])
        ->selectRaw("tindakan_id AS id,t.nama as text")
        ->orderByRaw("t.nama")
        ->distinct()
        ->paginate(request('per_page', 10));

Solusi: ganti distinct() dengan groupBy()

$data = InputTindakan::join("tindakan AS t", "input_tindakan.tindakan_id", "t.id")
        ->whereRaw("rawat_jalan_id=?", [$kunjungan_id])
        ->selectRaw("tindakan_id AS id,t.nama as text")
        ->orderByRaw("t.nama")
        ->groupBy("tindakan_id")
        ->paginate(request('per_page', 10));

Semoga bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!