เงินเดือน => permission รอบการขึ้นเงินเดือน
This commit is contained in:
parent
1333e53c63
commit
dcdc8c5d4b
2 changed files with 40 additions and 16 deletions
|
|
@ -96,10 +96,18 @@ function onSubmit() {
|
||||||
function inputEdit(val: boolean) {
|
function inputEdit(val: boolean) {
|
||||||
return {
|
return {
|
||||||
"full-width cursor-pointer inputgreen ": val,
|
"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*/
|
/** callbackFunction ทำการ fetch ข้อมูลไฟล์เมื่อเปิด Dialog*/
|
||||||
watch(
|
watch(
|
||||||
() => modal.value,
|
() => modal.value,
|
||||||
|
|
@ -137,6 +145,7 @@ watch(
|
||||||
<div class="q-gutter-y-sm">
|
<div class="q-gutter-y-sm">
|
||||||
<datepicker
|
<datepicker
|
||||||
:readonly="isRead"
|
:readonly="isRead"
|
||||||
|
:class="inputEdit(!isRead)"
|
||||||
menu-class-name="modalfix"
|
menu-class-name="modalfix"
|
||||||
v-model="year"
|
v-model="year"
|
||||||
class="col-2"
|
class="col-2"
|
||||||
|
|
@ -152,9 +161,9 @@ watch(
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<q-input
|
<q-input
|
||||||
:readonly="isRead"
|
:readonly="isRead"
|
||||||
|
:class="inputEdit(!isRead)"
|
||||||
ref="yearRef"
|
ref="yearRef"
|
||||||
dense
|
dense
|
||||||
:class="inputEdit(isReadonly)"
|
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
:model-value="year === 0 ? null : Number(year) + 543"
|
:model-value="year === 0 ? null : Number(year) + 543"
|
||||||
|
|
@ -176,7 +185,7 @@ watch(
|
||||||
<q-select
|
<q-select
|
||||||
:readonly="isRead"
|
:readonly="isRead"
|
||||||
ref="periodRef"
|
ref="periodRef"
|
||||||
:class="inputEdit(isReadonly)"
|
:class="inputEdit(!isRead)"
|
||||||
v-model="period"
|
v-model="period"
|
||||||
label="รอบการขึ้นเงินเดือน"
|
label="รอบการขึ้นเงินเดือน"
|
||||||
dense
|
dense
|
||||||
|
|
@ -189,6 +198,7 @@ watch(
|
||||||
lazy-rules
|
lazy-rules
|
||||||
:rules="[(val) => !!val || `${'กรุณาเลือกรอบการขึ้นเงินเดือน'}`]"
|
:rules="[(val) => !!val || `${'กรุณาเลือกรอบการขึ้นเงินเดือน'}`]"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
|
@update:model-value="onUpdatePeriod"
|
||||||
/>
|
/>
|
||||||
<datepicker
|
<datepicker
|
||||||
:readonly="isRead"
|
:readonly="isRead"
|
||||||
|
|
@ -212,7 +222,7 @@ watch(
|
||||||
ref="effectiveDateRef"
|
ref="effectiveDateRef"
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
:class="inputEdit(isReadonly)"
|
:class="inputEdit(!isRead)"
|
||||||
:readonly="isRead"
|
:readonly="isRead"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
:model-value="
|
:model-value="
|
||||||
|
|
@ -246,6 +256,7 @@ watch(
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
v-model="isActive"
|
v-model="isActive"
|
||||||
:readonly="isRead"
|
:readonly="isRead"
|
||||||
|
:disabled="period === 'SPECIAL'"
|
||||||
/>
|
/>
|
||||||
<span class="control"></span>
|
<span class="control"></span>
|
||||||
</label>
|
</label>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, watch, onMounted } from "vue";
|
import { ref, watch, onMounted } from "vue";
|
||||||
import { useSalaryDataStore } from "@/modules/13_salary/store/SalaryStore";
|
import { useSalaryDataStore } from "@/modules/13_salary/store/SalaryStore";
|
||||||
|
import { checkPermission } from "@/utils/permissions";
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
|
|
@ -294,11 +295,10 @@ onMounted(async () => {
|
||||||
</template>
|
</template>
|
||||||
</datepicker>
|
</datepicker>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div v-if="checkPermission($route)?.attrIsCreate">
|
||||||
<q-btn
|
<q-btn
|
||||||
id="addComplaints"
|
id="addComplaints"
|
||||||
for="addComplaints"
|
for="addComplaints"
|
||||||
size="12px"
|
|
||||||
flat
|
flat
|
||||||
round
|
round
|
||||||
color="primary"
|
color="primary"
|
||||||
|
|
@ -370,19 +370,28 @@ onMounted(async () => {
|
||||||
</q-tr>
|
</q-tr>
|
||||||
</template>
|
</template>
|
||||||
<template v-slot:body="props">
|
<template v-slot:body="props">
|
||||||
<q-tr :props="props" class="cursor-pointer">
|
<q-tr :props="props">
|
||||||
<q-td>
|
<q-td auto-width>
|
||||||
<q-btn
|
<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
|
flat
|
||||||
dense
|
dense
|
||||||
icon="mdi-dots-vertical"
|
color="secondary"
|
||||||
class="q-pa-none q-ml-xs"
|
icon="mdi-dots-horizontal-circle-outline"
|
||||||
color="grey-13"
|
round
|
||||||
size="12px"
|
|
||||||
>
|
>
|
||||||
<q-menu>
|
<q-menu>
|
||||||
<q-list dense style="min-width: 200px">
|
<q-list dense style="min-width: 200px">
|
||||||
<q-item
|
<q-item
|
||||||
|
v-if="checkPermission($route)?.attrIsGet"
|
||||||
clickable
|
clickable
|
||||||
v-close-popup
|
v-close-popup
|
||||||
@click.stop="
|
@click.stop="
|
||||||
|
|
@ -397,14 +406,14 @@ onMounted(async () => {
|
||||||
color="edit"
|
color="edit"
|
||||||
size="17px"
|
size="17px"
|
||||||
:name="
|
:name="
|
||||||
props.row.revisionId !== null
|
props.row.revisionId !== null || !checkPermission($route)?.attrIsUpdate
|
||||||
? 'mdi-eye-outline'
|
? 'mdi-eye-outline'
|
||||||
: 'edit'
|
: 'edit'
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
<div class="q-pl-md">
|
<div class="q-pl-md">
|
||||||
{{
|
{{
|
||||||
props.row.revisionId !== null
|
props.row.revisionId !== null || !checkPermission($route)?.attrIsUpdate
|
||||||
? "ดูข้อมูล"
|
? "ดูข้อมูล"
|
||||||
: "แก้ไขข้อมูล"
|
: "แก้ไขข้อมูล"
|
||||||
}}
|
}}
|
||||||
|
|
@ -417,7 +426,8 @@ onMounted(async () => {
|
||||||
v-if="
|
v-if="
|
||||||
props.row.isClose === false &&
|
props.row.isClose === false &&
|
||||||
props.row.isActive === true &&
|
props.row.isActive === true &&
|
||||||
props.row.revisionId !== null
|
props.row.revisionId !== null &&
|
||||||
|
checkPermission($route)?.attrIsUpdate
|
||||||
"
|
"
|
||||||
clickable
|
clickable
|
||||||
v-close-popup
|
v-close-popup
|
||||||
|
|
@ -435,7 +445,10 @@ onMounted(async () => {
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
<q-item
|
<q-item
|
||||||
v-if="props.row.revisionId == null"
|
v-if="
|
||||||
|
props.row.revisionId == null &&
|
||||||
|
checkPermission($route)?.attrIsDelete
|
||||||
|
"
|
||||||
clickable
|
clickable
|
||||||
v-close-popup
|
v-close-popup
|
||||||
@click.stop="deleteData(props.row.id)"
|
@click.stop="deleteData(props.row.id)"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue