fadlyshafa

Untitled

Apr 2nd, 2020
158
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2.  
  3. namespace App\Http\Controllers\Dashboard;
  4.  
  5. use Illuminate\Http\Request;
  6. use App\Http\Controllers\Controller;
  7.  
  8. use App\User;
  9. use App\Models\Users_nilai;
  10.  
  11. class Peserta_controller extends Controller
  12. {
  13.     public function index(){
  14.         $title = 'Data peserta';
  15.         $data = User::withCount('biodata_r')->whereNull('role')->orderBy('name','asc')->get();
  16.  
  17.         return view('dashboard.peserta.index',compact('title','data'));
  18.     }
  19.  
  20.     public function export($id){
  21.         $dt = User::find($id);
  22.         $title = 'Data Peserta '.$dt->name;
  23.         // dd($dt);
  24.         \Excel::create($title, function($excel) use($dt,$title) {
  25.             $excel->sheet('Sheetname', function($sheet) use($dt,$title) {
  26.  
  27.                 $sheet->loadView('dashboard.peserta.excel')->with('dt',$dt)->with('title',$title);
  28.  
  29.             });
  30.         })->export('xls');
  31.     }
  32.  
  33.     public function excel(Request $request){
  34.         if($request->hasFile('sample_file')){
  35.             $path = $request->file('sample_file')->getRealPath();
  36.             $data = \Excel::load($path)->get();
  37.             // dd($data);
  38.             if($data->count()){
  39.                 // $uuid = \Uuid::generate(4);
  40.                 // $gr = $this->create_header_gr();
  41.                 // dd($gr);
  42.                 foreach ($data as $key => $vl) {
  43.                     $nisn = (String)$vl->nisn;
  44.                     $nilai_baca_quran = (Int)$vl->nilai_baca_quran;
  45.                     $nilai_test_akademik = (Int)$vl->nilai_test_akademik;
  46.  
  47.                     Users_nilai::insert([
  48.                         'nisn'=>$nisn,
  49.                         'nilai_baca_quran'=>$nilai_baca_quran,
  50.                         'nilai_test_akademik'=>$nilai_test_akademik,
  51.                         'created_at'=>date('Y-m-d H:i:s'),
  52.                         'updated_at'=>date('Y-m-d H:i:s')
  53.                     ]);
  54.                 }
  55.             }
  56.         }
  57.         \Session::flash('sukses','Nilai berhasil di import');
  58.         return redirect()->back();
  59.     }
  60.  
  61.     public function diverifikasi(){
  62.         $title = 'Data peserta yang sudah di verifikasi';
  63.         $data = User::withCount('biodata_r')->where('is_verifikasi',1)->orderBy('name','asc')->get();
  64.  
  65.         return view('dashboard.peserta.index',compact('title','data'));
  66.     }
  67.  
  68.     public function belum_verifikasi(){
  69.         $title = 'Data peserta yang belum di verifikasi';
  70.         $data = User::withCount('biodata_r')->whereNull('is_verifikasi')->orderBy('name','asc')->get();
  71.  
  72.         return view('dashboard.peserta.index',compact('title','data'));
  73.     }
  74.  
  75.     public function edit($id){
  76.         $title = 'Edit Data peserta';
  77.         $dt = User::with('biodata_r')->find($id);
  78.  
  79.         return view('dashboard.peserta.edit',compact('title','dt'));
  80.     }
  81.  
  82.     public function delete($id){
  83.         try {
  84.             User::where('id',$id)->delete();
  85.             \Session::flash('sukses','Data berhasil dihapus');
  86.         } catch (\Exception $e) {
  87.             \Session::flash('gagal',$e->getMessage());
  88.         }
  89.  
  90.         return redirect()->back();
  91.     }
  92.  
  93.     public function lulus($id){
  94.         try {
  95.             User::where('id',$id)->update([
  96.                 'is_lulus'=>1
  97.             ]);
  98.  
  99.             \Session::flash('sukses','Peserta Diterima');
  100.         } catch (\Exception $e) {
  101.             \Session::flash('gagal',$e->getMessage());
  102.         }
  103.  
  104.         return redirect('peserta');
  105.     }
  106. }
RAW Paste Data