diff --git a/app/Http/Controllers/PermohonanController.php b/app/Http/Controllers/PermohonanController.php index 3abfa380cc6e5917dbb46999d0382faae62c952b..f1617cc7e692738d8c7a0e0684e9d47f87f6d575 100644 --- a/app/Http/Controllers/PermohonanController.php +++ b/app/Http/Controllers/PermohonanController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers; use App\Auth; use App\Http\Controllers\Core\CommonUserController; use App\Models\Permohonan; +use App\Models\Penduduk; use App\Services\PermohonanService; use App\UserKependudukan; use Illuminate\Http\Request; @@ -165,6 +166,43 @@ class PermohonanController extends CommonUserController } } + + public $validateIdentitasMessages; + public function validateIdentitas($noKtpPria, $noKtpWanita){ + + $this->validateIdentitasMessages = []; + + $valid = true; + + if ($noKtpPria != NULL){ + $pendudukPria = Penduduk::where('id','=',$noKtpPria)->first(); + if ($pendudukPria == NULL){ + array_push($this->validateIdentitasMessages, "Penduduk pria tidak ditemukan"); + $valid = false; + }else{ + if ($pendudukPria->jenis_kelamin=='P'){ + array_push($this->validateIdentitasMessages, "noKtpPria harus diisi dengan NIK dari yang berjenis kelamin pria"); + $valid=false; + } + } + } + + if ($noKtpWanita != NULL){ + $pendudukWanita = Penduduk::where('id','=',$noKtpWanita)->first(); + if ($pendudukWanita == NULL){ + array_push($this->validateIdentitasMessages, "Penduduk wanita tidak ditemukan"); + $valid = false; + }else{ + if ($pendudukWanita->jenis_kelamin=='L'){ + array_push($this->validateIdentitasMessages, "noKtpWanita harus diisi dengan NIK dari yang berjenis kelamin wanita"); + $valid=false; + } + } + } + + return $valid; + } + public function postUpdate(Request $request) { @@ -202,7 +240,10 @@ class PermohonanController extends CommonUserController $request->session()->set('errorMessages', $validator->errors()->all()); $request->session()->set('permohonanData', $request->input()); return redirect('permohonan/update?token='.$token); - } else { + } else if (!$this->validateIdentitas($request->input()['noKtpPria'],$request->input()['noKtpWanita'])){ + $request->session()->set('errorMessages', $this->validateIdentitasMessages); + $request->session()->set('permohonanData', $request->input()); + } else { if ($nik){ $this->permohonanService->updatePermohonanNIK($nik, $request->input()); }else{