Saturday, December 15, 2018

Membuat Multi Level User Login Laravel



Membuat Multi Level User Login Laravel

Pada postingan kali ini saya akan membahas mengenai multi auth user, dimana kita bisa melakukan login dan masuk pada halaman berdasarkan role user kita. Sehingga halaman yang diperoleh oleh user susuai dengan role user itu sendiri. Multi auth disini artinya authentication yang lebih dari atau sama dengan 2. Membuat multi level user login pada laravel sebenarnya sangatlah mudah, kita hanya perlu memanfaatkan fungsi dari middleware dan tinggal atur saja role user nya.

Kenapa saya katakan mudah untuk membuat multi level user login di laravel ini, karena pada default laravel ini sudah menyediakan yang namanya sistem authentikasi sehingga kita tinggal jalankan satu perintah dan user akan dibuatkan secara otomatis.

php aritisan make:auth

Cukup dengan perintah diatas kita telah membuat user yang dibuat oleh laravel sehingga kita tinggal melakukan pengeditan saja pada user nya dengan menambahkan colom role atau level pada migration laravel.

Jika sudah melakukan diatas, selanjutnya untuk membuat multi level user login di laravel kita membutuhkan yang nama nya middleware. Apa itu middleware ?


Setelah membuat middlware kita akan mengatur pada model user nya dengan menambahkan function baru nya seperti berikut.

Model User
Untuk membuat multi level user login di laravel, tambahkan 2 function berikut ini untuk melakukan proses penyeleksian user nya nanti. Apakah dia login dengan role admin atau user, atau lainnya.

Selanjutnya kita akan mengatur pada middleware nya, 

Middleware

Untuk role user biasa diarahkan pada $next($request) dimana sudah saya arahkan secara default ketika login atau register.

Untuk role admin akan diarahkan pada route /progja , dimana admin dapat melihat data dan melakukan CRUD pada data tersebut.

Atau tidak keduanya, artinya user adalah superadmin yang akan diarahkan ke route /chart dimana  superadmin bisa melihat grafik data dan melakukan export data.

Kernel
Selanjutnya kita lakukan pendaftaran middleware pada kernel.php, dimana kita akan memanggil user untuk menggunakan middleware yang sudah kita buat tadi.

Langkah terkahir untuk membuat multi level user login di laravel adalah deklarasinya pada route.

Route
Kita akan melakukan autentikasi ketika user akan memasukan route tersebut.

Itulah tadi cara membuat multi level user login di laravel....


#SyntaxError
#1000JurusAkanKalahDengan1JurusyangDilatih1000Kali

Sunday, December 2, 2018

Cara Cepat Membuat PDF di Laravel


Cara Eksport ke PDF di Laravel -

Pada postingan kali ini saya akan membahas bagaimana caranya untuk membuat pdf di laravel, atau kita mengekspor data ke dalam bentuk PDF. Ada banyak cara untuk mengekpor data di PDF, salah satunya yang akan kita gunakan kali ini adalah dengan menggunakan package TCPDF. Sama seperti package lainnya, TCpdf ini berfungsi untuk mengekspor data yang ada pada web kita yang kemudian dapat kita jadikan sebuah tulisan berbentuk PDF.
TCPDF adalah kelas php untuk menghasilkan dokumen PDF tanpa memerlukan pustaka ekternal tambahan. TCPDF mendukung semua format halaman ISO dan format halaman kustom, margin dan satuan pengukuran, UTF-8 Unicode, bahasa RTL, HTML, barcode dan lainnya.

Adapun untuk membuat nya  terlebih dahulu kita memerlukan yang namanya package tcpdf.

composer.json

Berikut package yang digunakan. Letakkan package seperti biasa pada composer.json setelah itu ketikkan perintah pada cmd composer update dan tunggu proses nya hingga selesai.

Setelah selesai mendownload, kita akan mendaftarkan package tadi agar dapat digunakan pada config/app.


Providers
Aliases
Setelah mendaftarakan, kita akan menggunakan package tadi sesuai dengan nama aliases yang kita daftarkan. Untuk menggunakannya cukup ketikkan Use PDF pada controller.

controller
Setelah itu, pada controller nya akan kita buatkan syntax seperti dibawah ini.

view

Data yang akan kita keluarkan kita ambil dari table incomes, yang kemudian akan menjadi Rekap_income.pdf. Sebenarnya untuk syntax ini akan melihat terlbih dahulu preview pdf yang akan tampil. Entah kenapa saya coba pdf nya langsung terdownload.

Dan terakhir, kita tinggal buat view pada pdf nya. Pada pdf nya tinggal memasukkan table data seperti biasa saja kemudian nanti di keluarkan datanya dari controller yang dibawa.


<html>
    <head>
        <meta charset="utf-8">
        <title>Judul</title>
            <link href="{{asset('css_pdf/bootstrap.css')}}" rel="stylesheet">

    </head>
<body>
<h1> Rekapan Pemasukan </h1>
<table border="1px solid black" cellpadding="7">
    <thead>
        <tr style="text-align: center;">   
            <th style='width:"10%";margin: 10px;'><b>ID</b></th>
           <th style='width:"10%";margin: 10px;'><b> Nama</b> </th>
            <th style='width:"10%";margin: 10px;'> <b>Jumlah</b> </th>
            <th style='width:"10%";margin: 10px;'> <b>Tanggal</b> </th>
            <th style='width:"10%";margin: 10px;'> <b>Program </b></th>
            <th style='width:"10%";margin: 10px;'> <b>Keterangan </b></th>
        
        </tr>
        <!-- <td>Password</td> -->
    </thead>
    @foreach($incomes as $income)
    <tr style="text-align: center;">  
        <td style='width:"10%";margin: 10px;'>{{$income->id}}</td>
        <td style='width:"10%";margin: 10px;'>{{$income->nama}}</td>
        <td style='width:"10%";margin:10px;'>{{number_format($income->jumlah)}}</td>
        <td style='width:"10%";margin: 10px;'>{{$income->tanggal}}</td>
        <td style='width:"10%";margin: 10px;'>{{$income->progja->nama}}</td>   
           <td style='width:"10%";margin:10px;'>{{$income->ket}}</td>
    </tr>
    @endforeach
</table>
<p> <b> Total Pemasukan </b> : {{number_format($total)}}</p>
</body>
</html>

Itulah tadi cara membuat cepat membuat pdf di laravel..