เงินเดือน,รายงาน KPI
This commit is contained in:
parent
45aac3b5a5
commit
4462ee6bee
9 changed files with 1034 additions and 206 deletions
|
|
@ -13,6 +13,7 @@ import DialogFormEdit from "@/modules/13_salary/components/SalaryEmployeeLists/D
|
|||
import DialogMoveGroup from "@/modules/13_salary/components/SalaryEmployeeLists/DialogMoveGroup.vue";
|
||||
import DialogMoveLevel from "@/modules/13_salary/components/SalaryEmployeeLists/DialogMoveLevel.vue";
|
||||
import DialogProperties from "@/modules/13_salary/components/SalaryEmployeeLists/DialogProperties.vue";
|
||||
import DialogInfo from "@/modules/13_salary/components/DialogInfoMain.vue";
|
||||
|
||||
/** importStore*/
|
||||
import { useCounterMixin } from "@/stores/mixin";
|
||||
|
|
@ -137,24 +138,6 @@ const columns = ref<QTableProps["columns"]>([
|
|||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
},
|
||||
{
|
||||
name: "duration",
|
||||
align: "center",
|
||||
label: "ระยะเวลาการปฏิบัติราชการในรอบครึ่งปี",
|
||||
sortable: false,
|
||||
field: "duration",
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
},
|
||||
{
|
||||
name: "isPunish",
|
||||
align: "center",
|
||||
label: "ไม่ถูกลงโทษทางวินัย",
|
||||
sortable: false,
|
||||
field: "isPunish",
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
},
|
||||
{
|
||||
name: "isSuspension",
|
||||
align: "center",
|
||||
|
|
@ -165,20 +148,29 @@ const columns = ref<QTableProps["columns"]>([
|
|||
style: "font-size: 14px",
|
||||
},
|
||||
{
|
||||
name: "isAbsent",
|
||||
name: "posSalary",
|
||||
align: "center",
|
||||
label: "ไม่ขาดราชการ",
|
||||
label: "ประวัติตำแหน่ง/เงินเดือน",
|
||||
sortable: false,
|
||||
field: "isAbsent",
|
||||
field: "posSalary",
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
},
|
||||
{
|
||||
name: "isLeave",
|
||||
name: "discipline",
|
||||
align: "center",
|
||||
label: "วันลาไม่เกิน",
|
||||
label: "วินัย",
|
||||
sortable: false,
|
||||
field: "isLeave",
|
||||
field: "discipline",
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
},
|
||||
{
|
||||
name: "leave",
|
||||
align: "center",
|
||||
label: "การลา",
|
||||
sortable: false,
|
||||
field: "leave",
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
},
|
||||
|
|
@ -192,13 +184,12 @@ const visibleColumns = ref<string[]>([
|
|||
"amount",
|
||||
"organization",
|
||||
"result",
|
||||
"duration",
|
||||
"isPunish",
|
||||
"isSuspension",
|
||||
"isAbsent",
|
||||
"isLeave",
|
||||
"group",
|
||||
"salaryLevel",
|
||||
"posSalary",
|
||||
"discipline",
|
||||
"leave",
|
||||
]);
|
||||
|
||||
/** modalDialog*/
|
||||
|
|
@ -207,6 +198,7 @@ const modalDialogForm = ref<boolean>(false);
|
|||
const modalDialogMoveGroup = ref<boolean>(false);
|
||||
const modalDialogMoveLeve = ref<boolean>(false);
|
||||
const modalDialogProperties = ref<boolean>(false);
|
||||
const modalDialogInfo = ref<boolean>(false);
|
||||
|
||||
/** ตัวแปร*/
|
||||
const profileId = ref<string>("");
|
||||
|
|
@ -311,6 +303,13 @@ watch(
|
|||
updatePagePagination();
|
||||
}
|
||||
);
|
||||
|
||||
const infoType = ref<string>("");
|
||||
function onClickViewInfo(type: string, id: string) {
|
||||
infoType.value = type;
|
||||
profileId.value = id;
|
||||
modalDialogInfo.value = true;
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
|
|
@ -410,58 +409,7 @@ watch(
|
|||
}${props.row.root ? props.row.root : ""}`
|
||||
}}
|
||||
</div>
|
||||
<!-- <div v-else-if="col.name === 'isResult'">
|
||||
<q-checkbox
|
||||
disable
|
||||
keep-color
|
||||
color="primary"
|
||||
v-model="props.row.isResult"
|
||||
/>
|
||||
</div>
|
||||
<div v-else-if="col.name === 'isDuration'">
|
||||
<q-checkbox
|
||||
disable
|
||||
keep-color
|
||||
color="primary"
|
||||
v-model="props.row.isDuration"
|
||||
/>
|
||||
</div>
|
||||
<div v-else-if="col.name === 'isPunish'">
|
||||
<q-checkbox
|
||||
disable
|
||||
keep-color
|
||||
color="primary"
|
||||
v-model="props.row.isPunish"
|
||||
/>
|
||||
</div>
|
||||
<div v-else-if="col.name === 'isRetired'">
|
||||
<q-checkbox
|
||||
disable
|
||||
keep-color
|
||||
color="primary"
|
||||
v-model="props.row.isRetired"
|
||||
/>
|
||||
</div>
|
||||
<div v-else-if="col.name === 'isRetired2'">
|
||||
<q-checkbox
|
||||
disable
|
||||
keep-color
|
||||
color="primary"
|
||||
v-model="props.row.isRetired2"
|
||||
false
|
||||
/>
|
||||
</div> -->
|
||||
<div v-else-if="col.name == 'isPunish'">
|
||||
<q-icon
|
||||
v-if="props.row.isPunish !== null"
|
||||
:name="props.row.isPunish ? 'done' : 'close'"
|
||||
:color="props.row.isPunish ? 'primary' : 'red'"
|
||||
size="24px"
|
||||
/>
|
||||
<div v-else-if="props.row.isPunish == null">
|
||||
{{ props.row.isPunish == null ? "-" : "" }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-else-if="col.name == 'isSuspension'">
|
||||
<q-icon
|
||||
v-if="props.row.isSuspension !== null"
|
||||
|
|
@ -473,31 +421,30 @@ watch(
|
|||
{{ props.row.isSuspension == null ? "-" : "" }}
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="col.name == 'isAbsent'">
|
||||
<q-icon
|
||||
v-if="props.row.isAbsent !== null"
|
||||
:name="props.row.isAbsent ? 'done' : 'close'"
|
||||
:color="props.row.isAbsent ? 'primary' : 'red'"
|
||||
size="24px"
|
||||
/>
|
||||
<div v-else-if="props.row.isAbsent == null">
|
||||
{{ props.row.isAbsent == null ? "-" : "" }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-else-if="col.name == 'amount'">
|
||||
{{ Number(props.row.amount).toLocaleString() }}
|
||||
</div>
|
||||
<div v-else-if="col.name == 'isLeave'">
|
||||
<q-icon
|
||||
v-if="props.row.isLeave !== null"
|
||||
:name="props.row.isLeave ? 'done' : 'close'"
|
||||
:color="props.row.isLeave ? 'primary' : 'red'"
|
||||
size="24px"
|
||||
/>
|
||||
<div v-else-if="props.row.isLeave == null">
|
||||
{{ props.row.isLeave == null ? "-" : "" }}
|
||||
</div>
|
||||
|
||||
<div
|
||||
v-else-if="
|
||||
col.name == 'posSalary' ||
|
||||
col.name == 'discipline' ||
|
||||
col.name == 'leave'
|
||||
"
|
||||
>
|
||||
<q-btn
|
||||
flat
|
||||
dense
|
||||
icon="info"
|
||||
class="q-pa-none q-ml-xs"
|
||||
color="info"
|
||||
size="12px"
|
||||
@click.pervent="onClickViewInfo(col.name, props.row.profileId)"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
|
||||
<div v-else>
|
||||
{{ col.value ? col.value : "-" }}
|
||||
</div>
|
||||
|
|
@ -593,6 +540,7 @@ watch(
|
|||
v-model:modal="modalDialogMoveLeve"
|
||||
v-model:profileId="profileId"
|
||||
:fetchData="props.fetchDataTable"
|
||||
:remark="''"
|
||||
/>
|
||||
<DialogProperties
|
||||
v-model:modal="modalDialogProperties"
|
||||
|
|
@ -603,6 +551,13 @@ watch(
|
|||
:is-leave="isLeave"
|
||||
:fetch-data="props.fetchDataTable"
|
||||
/>
|
||||
|
||||
<DialogInfo
|
||||
v-model:modal="modalDialogInfo"
|
||||
v-model:profileId="profileId"
|
||||
:type="infoType"
|
||||
:employeeClass="'-employee'"
|
||||
/>
|
||||
</template>
|
||||
|
||||
<style scoped></style>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue