set permission menu master data of evaluation

This commit is contained in:
Warunee Tamkoo 2024-08-05 10:20:48 +07:00
parent a0ebb23f1f
commit d1be4b077b
17 changed files with 322 additions and 508 deletions

View file

@ -1,7 +1,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted } from "vue";
import { useQuasar, type QTableProps } from "quasar";
import { useRouter } from "vue-router";
import { useRouter, useRoute } from "vue-router";
import http from "@/plugins/http";
import config from "@/app.config";
@ -18,6 +18,7 @@ const modalHistory = ref<boolean>(false);
const isAll = ref<boolean>(false);
const $q = useQuasar();
const router = useRouter();
const route = useRoute();
const { showLoader, hideLoader, dialogRemove, success, messageError } =
useCounterMixin();
@ -100,6 +101,10 @@ function onClickAddOrView(status: boolean = false, id: string = "") {
: router.push("/masterdata/indicator-plan/add");
}
function onClickView(id: string = "") {
router.push(`/masterdata/indicator-plan/view/${id}`);
}
function fetchActive() {
showLoader();
http
@ -191,7 +196,7 @@ function onClickHistory(id: string) {
}
onMounted(() => {
fetchActive();
if (checkPermission(route)?.attrIsList) fetchActive();
});
</script>
@ -337,7 +342,7 @@ onMounted(() => {
color="primary"
@click="onClickAddOrView()"
>
<q-tooltip>เพ</q-tooltip>
<q-tooltip>เพอม</q-tooltip>
</q-btn>
<q-space />
@ -412,73 +417,104 @@ onMounted(() => {
</q-tr>
</template>
<template v-slot:body="props">
<q-tr :props="props" class="cursor-pointer">
<q-tr :props="props">
<q-td auto-width>
<q-btn
v-if="
checkPermission($route)?.attrIsGet ||
checkPermission($route)?.attrIsUpdate ||
checkPermission($route)?.attrIsDelete
"
flat
dense
color="secondary"
icon="mdi-dots-horizontal-circle-outline"
round
color="grey"
@click.stop
size="14px"
icon="more_vert"
>
<q-menu>
<q-list style="min-width: 180px">
<q-list dense style="min-width: 180px">
<q-item
v-if="checkPermission($route)?.attrIsUpdate"
v-if="checkPermission($route)?.attrIsGet"
clickable
v-close-popup
@click="onClickHistory(props.row.id)"
>
<q-item-section style="min-width: 0px" avatar>
<q-tooltip>ประวการแกไข</q-tooltip>
<q-icon
color="deep-purple"
flat
dense
round
name="mdi-history"
size="xs"
/>
</q-item-section>
<q-item-section>ประวการแกไข</q-item-section>
</q-item>
<q-item
v-if="checkPermission($route)?.attrIsGet"
clickable
v-close-popup
@click="onClickView(props.row.id)"
>
<q-item-section style="min-width: 0px" avatar>
<q-tooltip>รายละเอยด</q-tooltip>
<q-icon
flat
dense
round
color="info"
name="mdi-eye"
size="xs"
/>
</q-item-section>
<q-item-section>รายละเอยด</q-item-section>
</q-item>
<q-item
v-if="
checkPermission($route)?.attrIsGet &&
checkPermission($route)?.attrIsUpdate
"
clickable
v-close-popup
@click="onClickAddOrView(true, props.row.id)"
>
<q-item-section
style="min-width: 0px"
avatar
class="q-py-sm"
>
<q-item-section style="min-width: 0px" avatar>
<q-tooltip>แกไขขอม</q-tooltip>
<q-icon
flat
dense
round
color="primary"
name="edit"
size="xs"
name="mdi-pencil-outline"
/>
</q-item-section>
<q-item-section>แกไขขอม</q-item-section>
</q-item>
<q-item
v-if="checkPermission($route)?.attrIsUpdate"
clickable
v-close-popup
@click="onClickHistory(props.row.id)"
>
<q-item-section
style="min-width: 0px"
avatar
class="q-py-sm"
>
<q-tooltip>ประวการแกไข</q-tooltip>
<q-icon color="info" size="xs" name="mdi-history" />
</q-item-section>
<q-item-section>ประวการแกไข</q-item-section>
</q-item>
<q-item
v-if="checkPermission($route)?.attrIsDelete"
v-if="checkPermission($route)?.attrIsDelete"
clickable
v-close-popup
@click.stop.pervent="deleteData(props.row.id)"
>
<q-item-section
style="min-width: 0px"
avatar
class="q-py-sm"
>
<q-item-section style="min-width: 0px" avatar>
<q-tooltip>ลบขอม</q-tooltip>
<q-icon color="red" size="xs" name="mdi-delete" />
<q-icon
color="red"
flat
round
name="mdi-delete"
size="xs"
/>
</q-item-section>
<q-item-section>ลบขอม</q-item-section>
</q-item>
</q-list>
</q-menu>
</q-btn>
<!-- </q-btn> -->
</q-td>
<q-td v-for="col in props.cols" :key="col.name" :props="props">
<div class="table_ellipsis">