แยกจัดทำคำขอ และบันทึกผลของเครื่องราช ของ ขรก. และลูกจ้าง

This commit is contained in:
Warunee Tamkoo 2025-05-29 12:45:43 +07:00
parent 2ae10162ae
commit 2a9c0d44d7
12 changed files with 2176 additions and 167 deletions

View file

@ -144,15 +144,15 @@ const columns = ref<QTableProps["columns"]>([
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
{
name: "employeeType",
align: "left",
label: "ประเภทตำแหน่ง",
sortable: true,
field: "employeeType",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
// {
// name: "employeeType",
// align: "left",
// label: "",
// sortable: true,
// field: "employeeType",
// headerStyle: "font-size: 14px",
// style: "font-size: 14px",
// },
{
name: "position",
align: "left",
@ -375,7 +375,7 @@ async function fecthlistperson() {
http
.get(
config.API.registryNewOtherSystem(
employeeType.value == "officer" ? `` : `-employee`
DataStore.employeeClass == "officer" ? `` : `-employee`
),
{
params: { ...formFilter, nodeId: organization.value },
@ -501,8 +501,7 @@ async function downloadFileexcel() {
.put(
config.API.insigniaDowanload(DataStore.requestId),
{
profileType:
DataStore.employeeClass == "all" ? null : DataStore.employeeClass,
profileType: DataStore.employeeClass,
InsigniaId:
DataStore.typeinsignia == "all"
? null
@ -842,10 +841,11 @@ function clearInsigniaFilters(name: string) {
if (name === "typeinsigniaOptions") {
DataStore.typeinsignia = "all";
typeinsigniaOptions.value = DataStore.typeinsigniaOptions;
} else if (name === "employeeClassOps") {
DataStore.employeeClass = "all";
employeeClassOps.value = DataStore.employeeClassOps;
}
// else if (name === "employeeClassOps") {
// DataStore.employeeClass = "all";
// employeeClassOps.value = DataStore.employeeClassOps;
// }
}
watch(
@ -1026,7 +1026,7 @@ onMounted(async () => {
</q-item>
</template>
</q-select>
<q-select
<!-- <q-select
v-model="DataStore.employeeClass"
dense
outlined
@ -1072,15 +1072,12 @@ onMounted(async () => {
<q-item-section class="text-grey"> ไมอม </q-item-section>
</q-item>
</template>
</q-select>
</q-select> -->
<q-space />
<div>
<q-btn
v-if="checkPermission($route)?.attrIsGet"
:disable="
DataStore.employeeClass === 'all' ||
DataStore.typeinsignia === 'all'
"
:disable="DataStore.typeinsignia === 'all'"
icon="mdi-download"
flat
round
@ -1089,6 +1086,7 @@ onMounted(async () => {
>
<q-tooltip>ดาวนโหลด</q-tooltip>
</q-btn>
<q-btn
flat
round
@ -1096,10 +1094,10 @@ onMounted(async () => {
icon="mdi-plus"
@click="clickmodalAdd"
v-if="
(DataStore.isLock == false &&
DataStore.requestStatus == 'st5' &&
DataStore.isOfficer) ||
(checkStatus == true && checkPermission($route)?.attrIsCreate)
DataStore.isLock == false &&
checkPermission($route)?.attrIsCreate &&
((DataStore.requestStatus == 'st5' && DataStore.isOfficer) ||
checkStatus == true)
"
>
<q-tooltip>เพ</q-tooltip>
@ -1330,11 +1328,14 @@ onMounted(async () => {
</q-td> -->
<q-td key="discipline" class="text-center">
<q-btn
v-if="checkPermission($route)?.attrIsGet"
v-if="
checkPermission($route)?.attrIsGet &&
props.row.markDiscipline
"
flat
dense
icon="info"
color="info"
color="red"
@click.pervent="
onClickViewInfo(
'discipline',
@ -1344,14 +1345,17 @@ onMounted(async () => {
"
>
</q-btn>
<div v-else>-</div>
</q-td>
<q-td key="leave" class="text-center">
<q-btn
v-if="checkPermission($route)?.attrIsGet"
v-if="
checkPermission($route)?.attrIsGet && props.row.markLeave
"
flat
dense
icon="info"
color="info"
color="red"
@click.pervent="
onClickViewInfo(
'leave',
@ -1361,11 +1365,14 @@ onMounted(async () => {
"
>
</q-btn>
<div v-else>-</div>
</q-td>
<q-td key="assessments" class="text-center">
<!-- ผลการประเมนการปฏราชการในรอบ 5 ำกวาระดบด (อยกวารอยละ 70) -->
<q-btn
v-if="checkPermission($route)?.attrIsGet"
v-if="
checkPermission($route)?.attrIsGet && props.row.markRate
"
flat
dense
icon="info"
@ -1379,10 +1386,13 @@ onMounted(async () => {
"
>
</q-btn>
<div v-else>-</div>
</q-td>
<q-td key="insignia" class="text-center">
<q-btn
v-if="checkPermission($route)?.attrIsGet"
v-if="
checkPermission($route)?.attrIsGet && props.row.insignia
"
flat
dense
icon="info"
@ -1396,6 +1406,7 @@ onMounted(async () => {
"
>
</q-btn>
<div v-else>-</div>
</q-td>
</q-tr>
</template>
@ -1415,7 +1426,7 @@ onMounted(async () => {
<div class="col-xs-12 col-sm-7">
<q-card flat bordered class="fit q-pa-sm">
<div class="row q-col-gutter-sm q-mb-sm">
<div class="col-3">
<!-- <div class="col-3">
<q-select
outlined
dense
@ -1429,7 +1440,7 @@ onMounted(async () => {
@update:model-value="clearForm(), fecthlistperson()"
>
</q-select>
</div>
</div> -->
<div class="col-3">
<q-select
dense
@ -1451,7 +1462,9 @@ onMounted(async () => {
dense
placeholder="ค้นหา"
v-model="formFilter.searchKeyword"
@keydown.enter.prevent="(formFilter.page = 1), fecthlistperson()"
@keydown.enter.prevent="
(formFilter.page = 1), fecthlistperson()
"
>
<template v-slot:append>
<q-icon name="search" />