From 6fc8eafce7b1c0e92f4c59e1d7b60ea8f1fdf8f5 Mon Sep 17 00:00:00 2001
From: Saladin21 <13519187@std.stei.itb.ac.id>
Date: Sat, 2 Apr 2022 23:06:24 +0700
Subject: [PATCH] manager kpi index finished, edit table-2

---
 src/components/table-2.vue    |   3 +-
 src/router/index.js           |   6 ++
 src/views/ManagerKpiIndex.vue | 137 ++++++++++++++++++++++++++++++++++
 3 files changed, 144 insertions(+), 2 deletions(-)
 create mode 100644 src/views/ManagerKpiIndex.vue

diff --git a/src/components/table-2.vue b/src/components/table-2.vue
index 11a2c6b..7f2524d 100644
--- a/src/components/table-2.vue
+++ b/src/components/table-2.vue
@@ -102,7 +102,6 @@ export default {
   },
   watch: {
     filter() {
-      console.log(this.filter)
       this.page = 1
       this.getData()
     }
@@ -113,7 +112,7 @@ export default {
       if (!this.sorted.asc){
         sortCol = `-${sortCol}`
       }
-        HTTP.get(`${this.endpoint}?page=${this.page}?sort=${sortCol}?filter[${this.filter_column}]=${this.filter}`).then((res)=>{
+        HTTP.get(`${this.endpoint}?page=${this.page}&sort=${sortCol}&filter[${this.filter_column}]=${this.filter}`).then((res)=>{
             if (res.status == 200){
               console.log(res.data)
                 this.entries = res.data.data.data
diff --git a/src/router/index.js b/src/router/index.js
index aac63d1..862b265 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -12,6 +12,7 @@ import AdminInsert from "../views/AdminInsert.vue";
 import AdminEdit from "../views/AdminEdit.vue";
 import KpiIndex from "../views/KpiIndex.vue";
 import Test from "../views/Test.vue";
+import ManagerKpiIndex from "../views/ManagerKpiIndex.vue";
 
 const routes = [
   {
@@ -74,6 +75,11 @@ const routes = [
     name: "kpiIndex",
     component: KpiIndex,
   },
+  {
+    path: "/manager/kpi",
+    name: "ManagerkpiIndex",
+    component: ManagerKpiIndex,
+  },
   {
     path: "/test",
     name: "test",
diff --git a/src/views/ManagerKpiIndex.vue b/src/views/ManagerKpiIndex.vue
new file mode 100644
index 0000000..327e09d
--- /dev/null
+++ b/src/views/ManagerKpiIndex.vue
@@ -0,0 +1,137 @@
+<template>
+    <div class="container-fluid">
+            <div class="row flex-nowrap">
+                <Sidebar current_page = "About"></Sidebar>
+                <div class="col ps-md-2 pt-2">
+                    <Header></Header>
+                    <div class="row p-2">
+                        <div class="col">
+                        <h1 class="text-blue">Daftar KPI</h1>
+                        </div>
+                        <div class="col">
+                            <!-- Ganti Path -->
+                        <router-link :to="{ path: '/user/insert' }" style="text-decoration: none">
+                        <button class="btn float-end">Buat KPI</button>
+                        </router-link>
+                        </div>
+                    </div>
+                    <div class="row p-2">
+                        <div class="col-6 p-2">
+                        <select
+                            v-model="filter"
+                            class="form-select"
+                            aria-label="Default select example"
+                        >
+                            <option selected value="">Semua</option>
+                            <option v-for="p in periods" :key="p" :value="p.data">{{p.name}}</option>
+                        </select>
+                        </div>
+                    </div>
+                        <Table2
+                            :endpoint="'kpis'"
+                            :columns="columns"
+                            :filter="filter"
+                            :filter_column="'period_type'"
+                            @edit-entry="editKpi"
+                            @delete-entry="deleteKpi"
+                            @detail-entry="detailKpi"
+                        ></Table2>
+                </div>
+            </div>
+    </div>
+</template>
+
+<script>
+
+import Table2 from "../components/table-2";
+import Header from "../components/header";
+import Sidebar from "../components/sidebar";
+import { HTTP } from "../http-common";
+
+
+export default {
+    name: "ManagerKpiIndex",
+    components: {
+        Header,
+        Sidebar,
+        Table2
+    },
+    data(){
+        return{
+            filter: "",
+            columns: {
+                Id: {
+                name : "Id",
+                data : "id",
+                hidden : true,
+                clickable : false
+                },
+                Nama: {
+                name : "Nama",
+                data : "name",
+                hidden : false,
+                clickable : true
+                },
+                Periode: {
+                name : "Periode",
+                data : "period_type",
+                hidden : false,
+                clickable : false
+                },
+            },
+            periods: [
+                {name: "Harian",
+                data: "daily"},
+                {name: "Mingguan",
+                data: "weekly"},
+                {name: "Bulanan",
+                data: "monthly"},
+                {name: "Tahunan",
+                data: "yearly"},
+                {name: "Custom",
+                data: "custom"},
+            ]
+        }
+    },
+    methods: {
+        deleteKpi(id){
+            if (confirm("Yakin akan menghapus KPI?")){
+                HTTP.delete(`kpis/${id}`).catch(()=>{
+                alert("Gagal Menghapus KPI")
+                })
+            }
+        },
+        editKpi(id){
+            //routing page edit
+            console.log(id)
+        },
+        detailKpi(id){
+            //routing page detail
+            console.log(id)
+        }
+    }
+    
+}
+</script>
+
+<style scoped>
+* {
+    margin: 0;
+    padding: 0;
+    box-sizing: border-box;
+}
+
+body {
+    min-height: 100vh;
+    background-color: #fff;
+}
+
+.btn {
+  background-color: #6992b4;
+  color: #f1f7fc;
+  border-radius: 15px;
+  padding: 7px;
+}
+
+
+</style>
\ No newline at end of file
-- 
GitLab