From e98ed56c3be040059e243f376ba6cc2675441aea Mon Sep 17 00:00:00 2001
From: Muhammad Nizami <nizami_muhammad@yahoo.co.id>
Date: Thu, 7 Apr 2016 05:24:16 +0700
Subject: [PATCH] implementasi fungsionalitas menandai

---
 .../Admin/PermohonanController.php            | 21 ++++++++++++++++++-
 app/Http/Controllers/PermohonanController.php |  2 +-
 app/Http/routes.php                           |  6 +++++-
 app/Services/PermohonanService.php            | 17 ++++++++++++++-
 .../views/admin/permohonan/view.blade.php     | 10 ++++++++-
 resources/views/permohonan/index.blade.php    | 11 +++++++++-
 6 files changed, 61 insertions(+), 6 deletions(-)

diff --git a/app/Http/Controllers/Admin/PermohonanController.php b/app/Http/Controllers/Admin/PermohonanController.php
index 1fd39cc..8217fb3 100644
--- a/app/Http/Controllers/Admin/PermohonanController.php
+++ b/app/Http/Controllers/Admin/PermohonanController.php
@@ -6,12 +6,17 @@ use App\Http\Controllers\Controller;
 use App\Models\Permohonan;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Auth;
+use App\Services\PermohonanService;
+use Illuminate\Support\Facades\Redirect;
+
 
 class PermohonanController extends Controller
 {
+    private $permohonanService;
+
     public function __construct()
     {
-        
+        $this->permohonanService = new PermohonanService();
     }
     
     public function index()
@@ -34,4 +39,18 @@ class PermohonanController extends Controller
             'permohonan' => $permohonan
         ]);
     }
+    
+    public function markApproved(Request $request, $id)
+    {
+		//todo kasih otorisasi user khusus petugas
+		$this->permohonanService->setStatus($id, Permohonan::STATUS_APPROVED);
+		return Redirect::to('/admin');
+	}
+	
+	public function markNotCompleted(Request $request, $id)
+	{
+		//todo kasih otorisasi user khusus petugas
+		$this->permohonanService->setStatus($id, Permohonan::STATUS_NOT_COMPLETED);
+		return Redirect::to('/admin');
+	}
 }
diff --git a/app/Http/Controllers/PermohonanController.php b/app/Http/Controllers/PermohonanController.php
index ff84b8e..b6aca7c 100644
--- a/app/Http/Controllers/PermohonanController.php
+++ b/app/Http/Controllers/PermohonanController.php
@@ -118,4 +118,4 @@ class PermohonanController extends Controller
     {
         
     }
-}
\ No newline at end of file
+}
diff --git a/app/Http/routes.php b/app/Http/routes.php
index b7425fa..585aa96 100644
--- a/app/Http/routes.php
+++ b/app/Http/routes.php
@@ -48,5 +48,9 @@ Route::group(['middleware' => ['web']], function () {
         Route::get('/admin', 'Admin\PermohonanController@index');
         
         Route::get('/admin/permohonan/{id}', 'Admin\PermohonanController@view');
+        
+        Route::post('/admin/permohonan/{id}/approved', 'Admin\PermohonanController@markApproved');
+        
+        Route::post('/admin/permohonan/{id}/notCompleted', 'Admin\PermohonanController@markNotCompleted');
     });
-});
\ No newline at end of file
+});
diff --git a/app/Services/PermohonanService.php b/app/Services/PermohonanService.php
index a6eb737..a532eff 100644
--- a/app/Services/PermohonanService.php
+++ b/app/Services/PermohonanService.php
@@ -55,4 +55,19 @@ class PermohonanService
             return $permohonan->save();
         }
     }
-}
\ No newline at end of file
+    
+    public function setStatus($id, $status){
+        $permohonan = Permohonan::where('id', '=', $id)->first();
+        
+        if ($permohonan == NULL){
+			return false;
+		} else {
+			$permohonan->status = $status;
+			return $permohonan->save();
+		}
+	}
+    
+    public function getPermohonan(int $id){
+		
+	}
+}
diff --git a/resources/views/admin/permohonan/view.blade.php b/resources/views/admin/permohonan/view.blade.php
index e03fc7a..10a2213 100644
--- a/resources/views/admin/permohonan/view.blade.php
+++ b/resources/views/admin/permohonan/view.blade.php
@@ -68,8 +68,16 @@
                   </div>
                 </div>
               </div>
+              <div>
+				  <button type="submit" class="btn btn-success" method="POST" formaction="/admin/permohonan/{{ $permohonan->id }}/approved" onclick="return confirm('Anda yakin hendak menandai permohonan ini disetujui?')">Setujui</button>
+              </div>
+              <div>
+				  <button type="submit" class="btn btn-dark" method="POST" formaction="/admin/permohonan/{{ $permohonan->id }}/notCompleted" onclick="return confirm('Anda yakin hendak menandai permohonan ini belum lengkap?')">Belum Lengkap</button>
+              </div>
+              <div>
+              </div>
             </form>
       </div>
     </div>
   </div>
-@endsection
\ No newline at end of file
+@endsection
diff --git a/resources/views/permohonan/index.blade.php b/resources/views/permohonan/index.blade.php
index 8b0be34..ab9a334 100644
--- a/resources/views/permohonan/index.blade.php
+++ b/resources/views/permohonan/index.blade.php
@@ -41,6 +41,15 @@
               Menunggu Verifikasi
             </span>
           </div>
+        @elseif($permohonan->status == \App\Models\Permohonan::STATUS_APPROVED)
+          <div class="col-md-8">
+            <p>Anda sudah mengisi data dan telah disetujui. Silakan lanjutkan kepada pelangsungan lalu laporan dan interview kepada petugas pencatatan</p>
+          </div>
+          <div class="col-md-4">
+            <span class="label label-warning pull-right">
+              Disetujui
+            </span>
+          </div>
         @endif
       </div>
     </div>
@@ -83,4 +92,4 @@
       </div>
     @endif
   </div>
-@endsection
\ No newline at end of file
+@endsection
-- 
GitLab