diff --git a/components/Setting/TipePengguna/TableViewPermission copy.vue b/components/Setting/TipePengguna/TableViewPermission copy.vue new file mode 100644 index 0000000..075b4d9 --- /dev/null +++ b/components/Setting/TipePengguna/TableViewPermission copy.vue @@ -0,0 +1,159 @@ + + + + + \ No newline at end of file diff --git a/components/Setting/TipePengguna/TableViewPermission.vue b/components/Setting/TipePengguna/TableViewPermission.vue index 075b4d9..4bd4b9b 100644 --- a/components/Setting/TipePengguna/TableViewPermission.vue +++ b/components/Setting/TipePengguna/TableViewPermission.vue @@ -1,159 +1,216 @@ - - - \ No newline at end of file diff --git a/components/Setting/ViewPermission/CrudCardList.vue b/components/Setting/ViewPermission/CrudCardList.vue index c97d235..035f0d2 100644 --- a/components/Setting/ViewPermission/CrudCardList.vue +++ b/components/Setting/ViewPermission/CrudCardList.vue @@ -10,14 +10,30 @@ import "vue3-toastify/dist/index.css"; import Form from "@/components/Setting/ViewPermission/Form.vue"; import { Icon } from "@iconify/vue"; import { useSettingStore } from "~/store/apps/Setting/setting"; -import { toastAlert } from "@/composable/index"; +import useRole from "@/composable/index"; + +const { + datas: { dialog, dialogDelete,getData}, + method: { + formTitle, + typeForm, + deleteItem, + deleteConfirm, + toastAlert, + openDeleteDialog, + openFormDialog, + findRole, + paginated + }, +} = useRole(); + const store = useSettingStore(); -const dialog = ref(false); -const dialogDelete = ref(false); +// const getData = ref([]); +let page = ref(0); +const limit = ref(5); + const editedIndex = ref(-1); -const editedItem = ref({}); -const defaultItem = ref({}); const permissionCategories = [ { @@ -34,16 +50,6 @@ const permissionCategories = [ }, ]; -const formTitle = computed(() => { - return editedIndex.value === -1 ? "New Item" : "Edit Item"; -}); -const typeForm = computed(() => { - return editedIndex.value === -1 ? "create" : "edit"; -}); - -const getData: any = computed(() => { - return data; -}); const searchValue = ref(""); const filteredCards = computed(() => { @@ -53,44 +59,50 @@ const filteredCards = computed(() => { .includes(searchValue.value.toLowerCase()); }); }); -const findData = (item: string) => { - return permissionCategories.find((data) => data.value === item); -}; function editItem(item: any) { - editedIndex.value = filteredCards.value.indexOf(item); + editedIndex.value = getData.value.indexOf(item); store.getTypeUser(item); - dialog.value = true; - console.log("ini dialog:", dialog.value); + openFormDialog(true); } -function deleteItem(item: any) { - editedIndex.value = filteredCards.value.indexOf(item); - dialogDelete.value = true; +function onDelete(item: any) { + editedIndex.value = getData.value.indexOf(item); + openDeleteDialog(true); } -function deleteItemConfirm() { - filteredCards.value.splice(editedIndex.value, 1); - closeDelete(); - - toastAlert("Berhasil hapus data!", "success"); -} - -function closeDelete() { - dialogDelete.value = false; -} function saveData(data: object) { //proses simpan data edit if (editedIndex.value > -1) { - Object.assign(filteredCards.value[editedIndex.value], data.data); + Object.assign(getData.value[editedIndex.value], data.data); toastAlert("Berhasil ubah data!", "success"); //proses simpan data create } else { - filteredCards.value.push(data.data); + getData.value.push(data.data); toastAlert("Berhasil simpan data!", "success"); } - dialog.value = false; + openFormDialog(false); } + +// function paginated(i:any) { +// let skip = page.value * limit.value; +// const roles = data.filter((i,index:number)=>index >= skip && index < skip + limit.value); +// // const roles = await $fetch(`/api/roles/get?skip=${skip}`); +// console.log("roles:",roles) +// if (roles && roles.length > 0) { +// getData.value.push(...roles); +// console.log("getData.value:",getData.value) +// page.value++; +// } +// console.log("paginated", page.value); +// } + + +onBeforeMount(() => { + paginated(data) + // paginated() + // getData.value = data; +}); @@ -181,12 +193,12 @@ function saveData(data: object) { @@ -196,10 +208,18 @@ function saveData(data: object) { >Are you sure you want to delete this item? diff --git a/components/Setting/ViewPermission/CrudCardListLama.vue b/components/Setting/ViewPermission/CrudCardListLama.vue new file mode 100644 index 0000000..a87e36b --- /dev/null +++ b/components/Setting/ViewPermission/CrudCardListLama.vue @@ -0,0 +1,209 @@ + + + diff --git a/components/Setting/ViewPermission/Form.vue b/components/Setting/ViewPermission/Form.vue index 11014b0..a1d21fe 100644 --- a/components/Setting/ViewPermission/Form.vue +++ b/components/Setting/ViewPermission/Form.vue @@ -67,7 +67,7 @@ onBeforeMount(() => {