diff --git a/app/Http/Controllers/.fuse_hidden00000c9a00000002 b/app/Http/Controllers/.fuse_hidden00000c9a00000002
new file mode 100644
index 0000000000000000000000000000000000000000..b734658a9be61223d06d25cf7cf02a4f25e20991
--- /dev/null
+++ b/app/Http/Controllers/.fuse_hidden00000c9a00000002
@@ -0,0 +1,146 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+use App\Http\Controllers\APIBaseController as APIBaseController;
+use Illuminate\Support\Facades\Auth;
+use App\User;
+use App\Pegawai;
+use App\PMO;
+use App\Admin;
+use App\Kinerja;
+use App\UnitKerja;
+use App\Posisi;
+use App\KelompokKompetensi;
+use App\RekomendasiPosisi;
+use App\RekomendasiTraining;
+use App\Training;
+
+class PagesController extends APIBaseController
+{
+    public function index() {
+        if(!$this->authenticate(6)){return redirect('/');}
+        return view('welcome');
+    }
+
+    public function landing() {
+        if(!$this->authenticate(6)){return redirect('/');}
+        if(!$this->authenticate(3) and !$this->authenticate(2) and $this->authenticate(1)){return redirect('/pages/profile');}
+        return view('pages');
+    }
+
+    public function pegawai(){
+        if(!$this->authenticate(1)){return redirect('/');}
+
+        $id = Auth::user()->id;
+
+        $data_kinerja = Kinerja::where('id_pegawai', $id)
+                                ->orderBy('tahun', 'ASC')
+                                ->orderBy('semester', 'ASC')
+                                ->get();
+        $unit_kerja = UnitKerja::all();
+        $posisi = Posisi::all();
+        $kelompok_kompetensi = KelompokKompetensi::all();
+        $rekomendasi_training = RekomendasiTraining::where('id_pegawai', $id)->get();
+        $training_list = Training::all();
+        $rekomendasi_posisi = RekomendasiPosisi::where('id_pegawai', $id)->get();
+        $id_pengubah = Pegawai::where('id_user', $id)->first()->id_pengubah;
+        if ($id_pengubah === $id) {
+            $nama_pengubah = "Anda";
+        } else {
+            $nama_pengubah = User::where('id', $id_pengubah)->first()->name;
+        }
+        $last_edited = Pegawai::where('id_user', $id)->first()->updated_at;
+
+        return view("profile.index", compact('last_edited', 'nama_pengubah','data_kinerja', 'unit_kerja', 'posisi', 'kelompok_kompetensi', 'rekomendasi_training', 'training_list', 'rekomendasi_posisi'));
+    }
+
+    public function pegawaiSpecific($id){
+        if(!$this->authenticate(2)){return redirect('/');}
+
+        $id_pmo = Auth::user()->id;
+
+        $data_kinerja = Kinerja::where('id_pegawai', $id)
+                                ->orderBy('tahun', 'ASC')
+                                ->orderBy('semester', 'ASC')
+                                ->get();
+        $unit_kerja = UnitKerja::all();
+        $posisi = Posisi::all();
+        $kelompok_kompetensi = KelompokKompetensi::all();
+        $rekomendasi_training = RekomendasiTraining::where('id_pegawai', $id)->get();
+        $training_list = Training::all();
+        $rekomendasi_posisi = RekomendasiPosisi::where('id_pegawai', $id)->get();
+        $id_pengubah = Pegawai::where('id_user', $id)->first()->id_pengubah;
+        if ($id_pengubah === $id_pmo) {
+            $nama_pengubah = "Anda";
+        } else {
+            $nama_pengubah = User::where('id', $id_pengubah)->first()->name;
+        }
+        $last_edited = Pegawai::where('id_user', $id)->first()->updated_at;
+
+        return view("profile.pmo", compact('id', 'last_edited', 'nama_pengubah','data_kinerja', 'unit_kerja', 'posisi', 'kelompok_kompetensi', 'rekomendasi_training', 'training_list', 'rekomendasi_posisi'));
+    }
+
+    public function pmo() {
+        if(!$this->authenticate(2)){return redirect('/');}
+        return view('pages.pmo')->with('page', 'pmo');
+    }
+
+    public function admin() {
+        if(!$this->authenticate(3)){return redirect('/');}
+        return view('pages.admin')->with('page', 'admin');
+    }
+
+    public function addUser() {
+        if(!$this->authenticate(3)){return redirect('/');}
+        return view('pages.admin.adduser')->with('page', 'addUser');
+    }
+
+    private function authenticate($role){
+        if (Auth::check()) {
+            $session_id = Auth::user()->id;
+        }else{
+            return false;
+        }
+
+        $auth = NULL;
+        switch ($role) {
+            case 1:
+                $auth = Pegawai::find($session_id);
+                break;
+            
+            case 2:
+                $auth = PMO::find($session_id);
+                break;
+
+            case 3:
+                $auth = Admin::find($session_id);
+                break;
+
+            case 4:
+                $auth = PMO::find($session_id);
+                if (is_null($auth)) {
+                    $auth = Pegawai::find($session_id);
+                }
+                break;
+
+            case 5:
+                $auth = PMO::find($session_id);
+                if (is_null($auth)) {
+                    $auth = Admin::find($session_id);
+                }
+                break;
+
+            case 6:
+                $auth = User::find($session_id);
+                break;
+        }
+
+        if (is_null($auth)) {
+            return false;
+        }
+
+        return true;
+    }
+}
diff --git a/app/Http/Controllers/PagesController.php b/app/Http/Controllers/PagesController.php
index b734658a9be61223d06d25cf7cf02a4f25e20991..80fe96e3963b5c75fcfedd9535fdfda133cd3718 100644
--- a/app/Http/Controllers/PagesController.php
+++ b/app/Http/Controllers/PagesController.php
@@ -79,7 +79,9 @@ class PagesController extends APIBaseController
         }
         $last_edited = Pegawai::where('id_user', $id)->first()->updated_at;
 
-        return view("profile.pmo", compact('id', 'last_edited', 'nama_pengubah','data_kinerja', 'unit_kerja', 'posisi', 'kelompok_kompetensi', 'rekomendasi_training', 'training_list', 'rekomendasi_posisi'));
+        
+
+        return view("profile.pmo", compact('id_pmo','id', 'last_edited', 'nama_pengubah','data_kinerja', 'unit_kerja', 'posisi', 'kelompok_kompetensi', 'rekomendasi_training', 'training_list', 'rekomendasi_posisi'));
     }
 
     public function pmo() {
diff --git a/resources/assets/js/components/PMOMainPage.vue b/resources/assets/js/components/PMOMainPage.vue
index 0be152d139c30b71093e9e9f1470e9600644019b..275cf0a4df6afa38ea1d2a67c1bda43df70cf9be 100644
--- a/resources/assets/js/components/PMOMainPage.vue
+++ b/resources/assets/js/components/PMOMainPage.vue
@@ -380,6 +380,20 @@
             this.getKompetensi();
             this.getKinerja();
             this.getTraining();
+        },
+        mounted: function () {
+            let url = new URL(window.location.href);
+            console.log(window.location.href);
+            let tabParam = url.searchParams.get("tab");
+            let nipParam = url.searchParams.get("nip");
+            console.log(tabParam);
+            console.log(nipParam);
+            if (nipParam != null && tabParam != null) {
+                let payload = {};
+                payload.name = tabParam;
+                payload.label = "Data Kompetensi";
+                this.changeTable(payload);
+            }
         }
     }
 </script>
diff --git a/resources/assets/js/components/ProfilPegawai.vue b/resources/assets/js/components/ProfilPegawai.vue
index c51388c1aa7275817ffee2ef579383ca141630cc..e2e8118ef53e0893c939e00240aa82ab7bf964c2 100644
--- a/resources/assets/js/components/ProfilPegawai.vue
+++ b/resources/assets/js/components/ProfilPegawai.vue
@@ -693,13 +693,15 @@
                 Hasil Kompetensi
                 <!-- <button class="btn btn-primary float-sm-right" v-on:click="editDataKompetensi" v-bind:disabled="disableEdit">
                     Edit <i class="fas fa-edit"></i>
-                 -->    </button>
+                 </button> -->
             </div>
 
             <div class="card-body">
                 <div class="container">
 
-                    Belum ditambahkan.
+                    <button class="btn btn-primary float-sm-left" v-on:click="downloadKompetensi" v-bind:disabled="disableEdit">
+                    Download <i class="fas fa-download"></i>
+                 </button>
 
                 </div>
             </div>
@@ -710,9 +712,9 @@
         <div class="card" id="rekomendasi">
             <div class="card-header">
                 Rekomendasi
-                <!-- <button class="btn btn-primary float-sm-right" v-on:click="editRekomendasi" v-bind:disabled="disableEdit">
+                 <!-- <button class="btn btn-primary float-sm-right" v-on:click="editRekomendasi" v-bind:disabled="disableEdit">
                     Edit <i class="fas fa-edit"></i>
-                 -->    </button>
+                 </button> -->
             </div>
 
             <div class="card-body">
@@ -987,6 +989,10 @@
         },
 
         methods: {
+            downloadKompetensi() {
+                window.open('/api/kompetensi/report/' + this.id);
+            },
+
             showAllDataKinerja() {
                 this.isShowAllDataKinerja = true;
                 this.dataKinerjaShow = this.dataKinerja;
diff --git a/resources/assets/js/components/ProfilPegawaiSpecific.vue b/resources/assets/js/components/ProfilPegawaiSpecific.vue
index 688bfd7535f86df10290c2e70cff7ec4602512e7..191f24d860795652e1c94aab97239d345929d211 100644
--- a/resources/assets/js/components/ProfilPegawaiSpecific.vue
+++ b/resources/assets/js/components/ProfilPegawaiSpecific.vue
@@ -690,7 +690,7 @@
 
         <div class="card" id="data-kompetensi">
             <div class="card-header">
-                Hasil Kompetensi<button class="btn btn-primary float-sm-right" v-on:click="editDataKompetensi" v-bind:disabled="disableEdit">
+                Hasil Kompetensi<button class="btn btn-primary float-sm-right" v-on:click="editKommpetensi" v-bind:disabled="disableEdit">
                     Edit <i class="fas fa-edit"></i>
                     </button>
             </div>
@@ -698,7 +698,9 @@
             <div class="card-body">
                 <div class="container">
 
-                    Belum ditambahkan.
+                     <button class="btn btn-primary float-sm-left" v-on:click="downloadKompetensi" v-bind:disabled="disableEdit">
+                    Download <i class="fas fa-download"></i>
+                 </button>
 
                 </div>
             </div>
@@ -847,7 +849,7 @@
 
 <script>
     export default {
-        props: ['id', 'unit-kerja', 'posisi', 'kelompok-kompetensi', 'data-kinerja-temp', 'rekomendasi-training-temp', 'training-list', 'rekomendasi-posisi-temp'],
+        props: ['id-pmo','id', 'unit-kerja', 'posisi', 'kelompok-kompetensi', 'data-kinerja-temp', 'rekomendasi-training-temp', 'training-list', 'rekomendasi-posisi-temp'],
 
         data() {
             return {
@@ -985,6 +987,14 @@
         },
 
         methods: {
+            downloadKompetensi() {
+                window.open('/api/kompetensi/report/' + this.id);
+            },
+
+            editKommpetensi() {
+                window.open('/pages/pmo?nip=' + this.pegawai.nopeg + '&tab=dataKompetensi');
+            },
+
             showAllDataKinerja() {
                 this.isShowAllDataKinerja = true;
                 this.dataKinerjaShow = this.dataKinerja;
@@ -1258,7 +1268,7 @@
                 })
                 .then(function (response) {
                     console.log(response);
-                    window.location.href = '/pages/profile';
+                    window.location.href = '/pages/profile/' + this.id;
                 })
                 .catch(function (error) {
                     console.log(error);
@@ -1284,7 +1294,7 @@
                 })
                 .then(function (response) {
                     console.log(response);
-                    window.location.href = "/pages/profile";
+                    window.location.href = "/pages/profile/" + this.id;
                 })
                 .catch(function (error) {
                     console.log(error);
@@ -1328,7 +1338,7 @@
                 })
                 .then(function (response) {
                     console.log(response);
-                    window.location.href = "/pages/profile";
+                    window.location.href = "/pages/profile/" + this.id;
                 })
                 .catch(function (error) {
                     console.log(error);