เงินเดือน => permission รอบการขึ้นเงินเดือน

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2024-08-13 10:10:21 +07:00
parent 1333e53c63
commit dcdc8c5d4b
2 changed files with 40 additions and 16 deletions

View file

@ -96,10 +96,18 @@ function onSubmit() {
function inputEdit(val: boolean) {
return {
"full-width cursor-pointer inputgreen ": val,
"full-width cursor-pointer inputgreen": !val,
"full-width cursor-pointer ": !val,
};
}
function onUpdatePeriod(val: string) {
if (val === "SPECIAL") {
isActive.value = true;
} else {
isActive.value = false;
}
}
/** callbackFunction ทำการ fetch ข้อมูลไฟล์เมื่อเปิด Dialog*/
watch(
() => modal.value,
@ -137,6 +145,7 @@ watch(
<div class="q-gutter-y-sm">
<datepicker
:readonly="isRead"
:class="inputEdit(!isRead)"
menu-class-name="modalfix"
v-model="year"
class="col-2"
@ -152,9 +161,9 @@ watch(
<template #trigger>
<q-input
:readonly="isRead"
:class="inputEdit(!isRead)"
ref="yearRef"
dense
:class="inputEdit(isReadonly)"
hide-bottom-space
outlined
:model-value="year === 0 ? null : Number(year) + 543"
@ -176,7 +185,7 @@ watch(
<q-select
:readonly="isRead"
ref="periodRef"
:class="inputEdit(isReadonly)"
:class="inputEdit(!isRead)"
v-model="period"
label="รอบการขึ้นเงินเดือน"
dense
@ -189,6 +198,7 @@ watch(
lazy-rules
:rules="[(val) => !!val || `${'กรุณาเลือกรอบการขึ้นเงินเดือน'}`]"
hide-bottom-space
@update:model-value="onUpdatePeriod"
/>
<datepicker
:readonly="isRead"
@ -212,7 +222,7 @@ watch(
ref="effectiveDateRef"
outlined
dense
:class="inputEdit(isReadonly)"
:class="inputEdit(!isRead)"
:readonly="isRead"
hide-bottom-space
:model-value="
@ -246,6 +256,7 @@ watch(
type="checkbox"
v-model="isActive"
:readonly="isRead"
:disabled="period === 'SPECIAL'"
/>
<span class="control"></span>
</label>

View file

@ -1,6 +1,7 @@
<script setup lang="ts">
import { ref, watch, onMounted } from "vue";
import { useSalaryDataStore } from "@/modules/13_salary/store/SalaryStore";
import { checkPermission } from "@/utils/permissions";
import { useCounterMixin } from "@/stores/mixin";
import config from "@/app.config";
import http from "@/plugins/http";
@ -294,11 +295,10 @@ onMounted(async () => {
</template>
</datepicker>
</div>
<div>
<div v-if="checkPermission($route)?.attrIsCreate">
<q-btn
id="addComplaints"
for="addComplaints"
size="12px"
flat
round
color="primary"
@ -370,19 +370,28 @@ onMounted(async () => {
</q-tr>
</template>
<template v-slot:body="props">
<q-tr :props="props" class="cursor-pointer">
<q-td>
<q-tr :props="props">
<q-td auto-width>
<q-btn
v-if="
checkPermission($route)?.attrIsGet ||
(checkPermission($route)?.attrIsUpdate &&
props.row.isClose !== true) ||
(checkPermission($route)?.attrIsDelete &&
props.row.revisionId == null) ||
(checkPermission($route)?.attrIsGet &&
checkPermission($route)?.attrIsUpdate)
"
flat
dense
icon="mdi-dots-vertical"
class="q-pa-none q-ml-xs"
color="grey-13"
size="12px"
color="secondary"
icon="mdi-dots-horizontal-circle-outline"
round
>
<q-menu>
<q-list dense style="min-width: 200px">
<q-item
v-if="checkPermission($route)?.attrIsGet"
clickable
v-close-popup
@click.stop="
@ -397,14 +406,14 @@ onMounted(async () => {
color="edit"
size="17px"
:name="
props.row.revisionId !== null
props.row.revisionId !== null || !checkPermission($route)?.attrIsUpdate
? 'mdi-eye-outline'
: 'edit'
"
/>
<div class="q-pl-md">
{{
props.row.revisionId !== null
props.row.revisionId !== null || !checkPermission($route)?.attrIsUpdate
? "ดูข้อมูล"
: "แก้ไขข้อมูล"
}}
@ -417,7 +426,8 @@ onMounted(async () => {
v-if="
props.row.isClose === false &&
props.row.isActive === true &&
props.row.revisionId !== null
props.row.revisionId !== null &&
checkPermission($route)?.attrIsUpdate
"
clickable
v-close-popup
@ -435,7 +445,10 @@ onMounted(async () => {
</q-item-section>
</q-item>
<q-item
v-if="props.row.revisionId == null"
v-if="
props.row.revisionId == null &&
checkPermission($route)?.attrIsDelete
"
clickable
v-close-popup
@click.stop="deleteData(props.row.id)"