MIF_E31210385/Modules/User/Http/Controllers/PpdbController.php

102 lines
3.4 KiB
PHP

<?php
namespace Modules\User\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Contracts\Support\Renderable;
use Illuminate\Http\Request;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Str;
use DataTables;
use App\Models\Jadwal;
use App\Models\Kelas;
use App\Models\Guru;
use App\Models\Ppdb;
use App\Models\Siswa;
use Carbon\Carbon;
class PpdbController extends Controller
{
public function index(Request $request)
{
$checkPendaftaran = app_info('status_ppdb');
if($checkPendaftaran == 2) {
$data = [
'subtitle' => 'Pendaftaran PPDB',
];
$getStatusPPDB = Ppdb::where('status', 2)->get();
return view('user::ppdb.index', compact('data'));
} else {
return redirect()->to(site_url('user', '/'))->with('error', 'Maaf. Pendaftaran PPDB sedang ditutup.');
}
}
public function store(Request $request)
{
$validator = Validator::make($request->all(), [
'name' => 'required',
'agama' => 'required',
'agama_ayah' => 'required',
'kota_siswa' => 'required',
'alamat' => 'required',
'nama_ibu' => 'required',
'telepon' => 'required',
'pekerjaan_ibu' => 'required',
'pekerjaan_ayah' => 'required',
'tempat_lahir' => 'required',
'nama_ayah' => 'required',
'tanggal_lahir' => 'required|date',
'telepon_ortu' => 'required',
'agama_ibu' => 'required',
]);
if ($validator->fails()) {
return redirect()->back()->with('error', 'Gagal. '. $validator->errors()->first());
}
$check = Siswa::where('nama', $request->name)->count();
if($check < 1) {
$siswa = new Siswa([
'id' => Str::uuid(),
'id_wali' => user()->id,
'nama' => $request->name,
'gender' => $request->gender,
'agama' => $request->agama,
'kota_siswa' => $request->kota_siswa,
'alamat' => $request->alamat,
'nama_ibu' => $request->nama_ibu,
'telepon' => $request->telepon,
'pekerjaan_ibu' => $request->pekerjaan_ibu,
'pekerjaan_ayah' => $request->pekerjaan_ayah,
'tempat_lahir' => $request->tempat_lahir,
'nama_ayah' => $request->nama_ayah,
'tanggal_lahir' => $request->tanggal_lahir,
'telepon_ortu' => $request->telepon_ortu,
'agama_ibu' => $request->agama_ibu,
'agama_ayah' => $request->agama_ayah,
'status' => 2,
]);
$pendaftaran = new Ppdb([
'id_user' => $siswa->id,
'status' => 0,
]);
if($siswa->save()){
$pendaftaran->save();
return redirect()->back()->with('success', 'Berhasil. Data siswa anda telah berhasil ditambahkan. Harap menunggu pengumuman dari admin di laman ini. Terima kasih.');
} else {
return redirect()->back()->with('error', 'Gagal. Data siswa gagal ditambahkan.');
}
} else {
return redirect()->back()->with('error', 'Gagal. Data calon siswa sudah ada.');
}
}
}