ทะเบียนประวัติ
This commit is contained in:
parent
c05701c8ea
commit
1c645bc42e
8 changed files with 1694 additions and 18 deletions
|
|
@ -44,8 +44,7 @@ export default {
|
||||||
profileNewInsignByProfileId: (profileId: string, type: string) =>
|
profileNewInsignByProfileId: (profileId: string, type: string) =>
|
||||||
`${registryNew}${type}/insignia/${profileId}`,
|
`${registryNew}${type}/insignia/${profileId}`,
|
||||||
|
|
||||||
orgInsigniaActive: () =>
|
orgInsigniaActive: () => `${org}/insignia/insignia-type/active`,
|
||||||
`${org}/insignia/insignia-type/active`,
|
|
||||||
|
|
||||||
profileNewInsignById: (dataId: string, type: string) =>
|
profileNewInsignById: (dataId: string, type: string) =>
|
||||||
`${registryNew}${type}/insignia/${dataId}`,
|
`${registryNew}${type}/insignia/${dataId}`,
|
||||||
|
|
@ -169,6 +168,17 @@ export default {
|
||||||
leaveListCard: (id: string, type: string) =>
|
leaveListCard: (id: string, type: string) =>
|
||||||
`${registryNew}${type}/leave/admin/${id}`, //noPermission
|
`${registryNew}${type}/leave/admin/${id}`, //noPermission
|
||||||
|
|
||||||
|
/** ตำแหน่ง*/
|
||||||
|
profileSalaryPositionNew: (type: string) => `${registryNew}${type}/salary/position`,
|
||||||
|
profileListSalaryPositionNew: (id: string, type: string) =>
|
||||||
|
`${registryNew}${type}/salary/position/${id}`,
|
||||||
|
profileListSalaryPositionHistoryNew: (profileId: string, type: string) =>
|
||||||
|
`${registryNew}${type}/salary/position/admin/history/${profileId}`,
|
||||||
|
profileSalaryPositionSwapNew: (type: string, id: string, type2: string) =>
|
||||||
|
`${registryNew}${type2}/salary/position/swap/${type}/${id}`,
|
||||||
|
salaryListCardPosition: (id: string, type: string) =>
|
||||||
|
`${registryNew}${type}/salary/position/admin/${id}`, //noPermission
|
||||||
|
|
||||||
/** ตำแหน่งเงินเดือน*/
|
/** ตำแหน่งเงินเดือน*/
|
||||||
profileSalaryNew: (type: string) => `${registryNew}${type}/salary`,
|
profileSalaryNew: (type: string) => `${registryNew}${type}/salary`,
|
||||||
profileListSalaryNew: (id: string, type: string) =>
|
profileListSalaryNew: (id: string, type: string) =>
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
format(val, row) {
|
format(val, row) {
|
||||||
return row.status ? "Active" : "-";
|
return row.status ? "ใช้งาน" : "-";
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
@ -444,7 +444,7 @@ onMounted(() => {
|
||||||
<div class="col-3" v-else>-</div>
|
<div class="col-3" v-else>-</div>
|
||||||
<div class="col-3 text-grey-6 text-weight-medium">สถานะ</div>
|
<div class="col-3 text-grey-6 text-weight-medium">สถานะ</div>
|
||||||
<div class="col-3">
|
<div class="col-3">
|
||||||
{{ props.row.status ? "Active" : "-" }}
|
{{ props.row.status ? "ใช้งาน" : "-" }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<q-separator />
|
<q-separator />
|
||||||
|
|
@ -572,7 +572,7 @@ onMounted(() => {
|
||||||
<q-checkbox
|
<q-checkbox
|
||||||
disable
|
disable
|
||||||
v-model="formData.status"
|
v-model="formData.status"
|
||||||
label="Active"
|
label="ใช้งาน"
|
||||||
keep-color="primary"
|
keep-color="primary"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,7 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "status",
|
field: "status",
|
||||||
format(val, row) {
|
format(val, row) {
|
||||||
return row.status ? "Active" : "-";
|
return row.status ? "ใช้งาน" : "-";
|
||||||
},
|
},
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,387 @@
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref, watch, computed } from "vue";
|
||||||
|
import { useQuasar } from "quasar";
|
||||||
|
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
|
||||||
|
import type { QTableProps } from "quasar";
|
||||||
|
import type { ResListSalary } from "@/modules/04_registryPerson/interface/response/Salary";
|
||||||
|
|
||||||
|
import DialogHeader from "@/components/DialogHeader.vue";
|
||||||
|
|
||||||
|
const $q = useQuasar();
|
||||||
|
const route = useRoute();
|
||||||
|
const {
|
||||||
|
date2Thai,
|
||||||
|
showLoader,
|
||||||
|
hideLoader,
|
||||||
|
messageError,
|
||||||
|
pathRegistryEmp,
|
||||||
|
onSearchDataTable,
|
||||||
|
} = useCounterMixin();
|
||||||
|
|
||||||
|
/** props*/
|
||||||
|
const modal = defineModel<boolean>("modal", { required: true });
|
||||||
|
const salaryId = defineModel<string>("salaryId", { required: true });
|
||||||
|
|
||||||
|
const empType = ref<string>(pathRegistryEmp(route.name?.toString() ?? ""));
|
||||||
|
|
||||||
|
const rows = ref<ResListSalary[]>([]); //รายการข้อมูลประวัติการแก้ไข
|
||||||
|
const rowsMain = ref<ResListSalary[]>([]); //รายการข้อมูลประวัติการแก้ไข
|
||||||
|
const keyword = ref<string>(""); //คำค้นหา
|
||||||
|
const baseColumns = ref<QTableProps["columns"]>([
|
||||||
|
{
|
||||||
|
name: "commandDateAffect",
|
||||||
|
align: "left",
|
||||||
|
label: "วัน เดือน ปี",
|
||||||
|
sortable: true,
|
||||||
|
field: "commandDateAffect",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
format: (v) => date2Thai(v),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "amount",
|
||||||
|
align: "left",
|
||||||
|
label: empType.value === "-employee" ? "ค่าตอบแทนรายเดือน" : "เงินเดือน",
|
||||||
|
sortable: true,
|
||||||
|
field: "amount",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
format: (v) => Number(v).toLocaleString(),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionSalaryAmount",
|
||||||
|
align: "left",
|
||||||
|
label: "เงินประจำตำแหน่ง",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionSalaryAmount",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
format: (v) => Number(v).toLocaleString(),
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "mouthSalaryAmount",
|
||||||
|
align: "left",
|
||||||
|
label: "เงินค่าตอบแทนรายเดือน",
|
||||||
|
sortable: true,
|
||||||
|
field: "mouthSalaryAmount",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
format: (v) => Number(v).toLocaleString(),
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "oc",
|
||||||
|
align: "left",
|
||||||
|
label: "สังกัด",
|
||||||
|
sortable: true,
|
||||||
|
field: "oc",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionName",
|
||||||
|
align: "left",
|
||||||
|
label: "ตำแหน่ง",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionName",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "posNo",
|
||||||
|
align: "left",
|
||||||
|
label: "ตำแหน่งเลขที่",
|
||||||
|
sortable: true,
|
||||||
|
field: "posNo",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionLine",
|
||||||
|
align: "left",
|
||||||
|
label: "สายงาน",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionLine",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionPathSide",
|
||||||
|
align: "left",
|
||||||
|
label: "ด้าน/สาขา",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionPathSide",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionType",
|
||||||
|
align: "left",
|
||||||
|
label: "ตำแหน่งประเภท",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionType",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionLevel",
|
||||||
|
align: "left",
|
||||||
|
label: "ระดับ",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionLevel",
|
||||||
|
format(val, row) {
|
||||||
|
return `${
|
||||||
|
row.positionLevel
|
||||||
|
? row.positionLevel
|
||||||
|
: row.positionCee
|
||||||
|
? row.positionCee
|
||||||
|
: "-"
|
||||||
|
}`;
|
||||||
|
},
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionExecutive",
|
||||||
|
align: "left",
|
||||||
|
label: "ตำแหน่งทางการบริหาร",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionExecutive",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "positionExecutiveSide",
|
||||||
|
align: "left",
|
||||||
|
label: "ด้านทางการบริหาร",
|
||||||
|
sortable: true,
|
||||||
|
field: "positionExecutiveSide",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "salaryClass",
|
||||||
|
align: "left",
|
||||||
|
label: "ตำแหน่ง (รายละเอียด)",
|
||||||
|
sortable: true,
|
||||||
|
field: "salaryClass",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "commandName",
|
||||||
|
align: "left",
|
||||||
|
label: "เอกสารอ้างอิง",
|
||||||
|
sortable: true,
|
||||||
|
field: "commandName",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "refCommandNo",
|
||||||
|
align: "left",
|
||||||
|
label: "เลขที่คำสั่ง",
|
||||||
|
sortable: true,
|
||||||
|
field: "refCommandNo",
|
||||||
|
format(val, row) {
|
||||||
|
return row.commandNo && row.commandYear
|
||||||
|
? `${row.commandNo}/${row.commandYear}`
|
||||||
|
: "";
|
||||||
|
},
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "remark",
|
||||||
|
align: "left",
|
||||||
|
label: "หมายเหตุ",
|
||||||
|
sortable: true,
|
||||||
|
field: "remark",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "lastUpdateFullName",
|
||||||
|
align: "left",
|
||||||
|
label: "ผู้ดำเนินการ",
|
||||||
|
sortable: true,
|
||||||
|
field: "lastUpdateFullName",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "lastUpdatedAt",
|
||||||
|
align: "left",
|
||||||
|
label: "วันที่แก้ไข",
|
||||||
|
sortable: true,
|
||||||
|
field: "lastUpdatedAt",
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
format: (v) => date2Thai(v, false, true),
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
const visibleColumns = ref<string[]>([
|
||||||
|
"commandDateAffect",
|
||||||
|
"amount",
|
||||||
|
"positionSalaryAmount",
|
||||||
|
"mouthSalaryAmount",
|
||||||
|
"oc",
|
||||||
|
"positionName",
|
||||||
|
"posNo",
|
||||||
|
"positionLine",
|
||||||
|
"positionPathSide",
|
||||||
|
"positionType",
|
||||||
|
"positionLevel",
|
||||||
|
"positionExecutive",
|
||||||
|
"positionExecutiveSide",
|
||||||
|
"salaryClass",
|
||||||
|
"commandName",
|
||||||
|
"refCommandNo",
|
||||||
|
"remark",
|
||||||
|
"lastUpdateFullName",
|
||||||
|
"lastUpdatedAt",
|
||||||
|
]);
|
||||||
|
const columns = computed(() => {
|
||||||
|
if (empType.value === "-employee") {
|
||||||
|
if (baseColumns.value) {
|
||||||
|
return baseColumns.value.filter(
|
||||||
|
(column) =>
|
||||||
|
column.name !== "positionSalaryAmount" &&
|
||||||
|
column.name !== "mouthSalaryAmount"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return baseColumns.value;
|
||||||
|
});
|
||||||
|
const pagination = ref({
|
||||||
|
page: 1,
|
||||||
|
rowsPerPage: 10,
|
||||||
|
});
|
||||||
|
|
||||||
|
/** function fetch ข้อมูลประวัติการแก้ไข*/
|
||||||
|
function fetchListHistory() {
|
||||||
|
showLoader();
|
||||||
|
http
|
||||||
|
.get(
|
||||||
|
config.API.profileListSalaryPositionHistoryNew(
|
||||||
|
salaryId.value,
|
||||||
|
empType.value
|
||||||
|
)
|
||||||
|
)
|
||||||
|
.then((res) => {
|
||||||
|
rows.value = res.data.result;
|
||||||
|
rowsMain.value = res.data.result;
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
messageError($q, err);
|
||||||
|
})
|
||||||
|
.finally(() => {
|
||||||
|
hideLoader();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/** ฟังก์ชันปิด Popup*/
|
||||||
|
function closeDialog() {
|
||||||
|
modal.value = false;
|
||||||
|
keyword.value = "";
|
||||||
|
rows.value = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
/** ฟังก์ค้นหาข้อมูลรายการวินัย */
|
||||||
|
function serchDataTable() {
|
||||||
|
rows.value = onSearchDataTable(
|
||||||
|
keyword.value,
|
||||||
|
rowsMain.value,
|
||||||
|
columns.value ? columns.value : []
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ดูการเปลี่ยนแปลงของ modal
|
||||||
|
* ถ้า modal เป็น true เรียก getHistory เพิ่อดึงข้อมูลประวัติการแก้ไข
|
||||||
|
*/
|
||||||
|
watch(
|
||||||
|
() => modal.value,
|
||||||
|
() => {
|
||||||
|
modal.value && fetchListHistory();
|
||||||
|
}
|
||||||
|
);
|
||||||
|
</script>
|
||||||
|
<template>
|
||||||
|
<q-dialog v-model="modal" persistent>
|
||||||
|
<q-card style="min-width: 80%">
|
||||||
|
<DialogHeader
|
||||||
|
:tittle="'ประวัติแก้ไขตำแหน่ง/เงินเดือน'"
|
||||||
|
:close="closeDialog"
|
||||||
|
/>
|
||||||
|
<q-separator color="grey-4" />
|
||||||
|
<q-card-section style="max-height: 60vh" class="scroll">
|
||||||
|
<div class="row q-gutter-sm q-mb-sm">
|
||||||
|
<q-space />
|
||||||
|
<q-input
|
||||||
|
dense
|
||||||
|
outlined
|
||||||
|
v-model="keyword"
|
||||||
|
label="ค้นหา"
|
||||||
|
class="q-mr-sm"
|
||||||
|
@keydown.enter.pervent="serchDataTable"
|
||||||
|
>
|
||||||
|
<template v-slot:append>
|
||||||
|
<q-icon name="search" />
|
||||||
|
</template>
|
||||||
|
</q-input>
|
||||||
|
|
||||||
|
<q-select
|
||||||
|
v-model="visibleColumns"
|
||||||
|
multiple
|
||||||
|
outlined
|
||||||
|
dense
|
||||||
|
options-dense
|
||||||
|
:display-value="$q.lang.table.columns"
|
||||||
|
emit-value
|
||||||
|
map-options
|
||||||
|
:options="columns"
|
||||||
|
option-value="name"
|
||||||
|
style="min-width: 140px"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<d-table
|
||||||
|
ref="table"
|
||||||
|
row-key="id"
|
||||||
|
flat
|
||||||
|
bordered
|
||||||
|
dense
|
||||||
|
:columns="columns"
|
||||||
|
:rows="rows"
|
||||||
|
:paging="true"
|
||||||
|
v-model:pagination="pagination"
|
||||||
|
:rows-per-page-options="[10, 20, 50, 100]"
|
||||||
|
:visible-columns="visibleColumns"
|
||||||
|
>
|
||||||
|
<template v-slot:header="props">
|
||||||
|
<q-tr :props="props">
|
||||||
|
<q-th v-for="col in props.cols" :key="col.name" :props="props">
|
||||||
|
<span class="text-weight-medium">{{ col.label }}</span>
|
||||||
|
</q-th>
|
||||||
|
</q-tr>
|
||||||
|
</template>
|
||||||
|
<template v-slot:body="props">
|
||||||
|
<q-tr :props="props">
|
||||||
|
<q-td v-for="col in props.cols">
|
||||||
|
<div class="table_ellipsis">
|
||||||
|
{{ col.value ? col.value : "-" }}
|
||||||
|
</div>
|
||||||
|
</q-td>
|
||||||
|
</q-tr>
|
||||||
|
</template>
|
||||||
|
</d-table>
|
||||||
|
</q-card-section>
|
||||||
|
</q-card>
|
||||||
|
</q-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<style scoped></style>
|
||||||
|
|
@ -35,10 +35,10 @@ const storeRegistry = useRegistryNewDataStore();
|
||||||
>
|
>
|
||||||
<q-tab name="1" label="ข้อมูลราชการ" />
|
<q-tab name="1" label="ข้อมูลราชการ" />
|
||||||
<q-tab name="7" label="ตำแหน่ง" />
|
<q-tab name="7" label="ตำแหน่ง" />
|
||||||
|
<q-tab name="5" label="รักษาการในตำแหน่ง" />
|
||||||
<q-tab name="2" label="วินัย" />
|
<q-tab name="2" label="วินัย" />
|
||||||
<q-tab name="3" label="การลา" />
|
<q-tab name="3" label="การลา" />
|
||||||
<q-tab name="4" label="ปฏิบัติราชการพิเศษ" />
|
<q-tab name="4" label="ปฏิบัติราชการพิเศษ" />
|
||||||
<q-tab name="5" label="รักษาการในตำแหน่ง" />
|
|
||||||
<q-tab name="6" label="ช่วยราชการ" />
|
<q-tab name="6" label="ช่วยราชการ" />
|
||||||
</q-tabs>
|
</q-tabs>
|
||||||
<q-separator />
|
<q-separator />
|
||||||
|
|
|
||||||
|
|
@ -34,11 +34,11 @@ const rowsMain = ref<ResListSalary[]>([]); //รายการข้อมู
|
||||||
const keyword = ref<string>(""); //คำค้นหา
|
const keyword = ref<string>(""); //คำค้นหา
|
||||||
const baseColumns = ref<QTableProps["columns"]>([
|
const baseColumns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "date",
|
name: "commandDateAffect",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "วัน เดือน ปี",
|
label: "วัน เดือน ปี",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "date",
|
field: "commandDateAffect",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
format: (v) => date2Thai(v),
|
format: (v) => date2Thai(v),
|
||||||
|
|
@ -83,11 +83,11 @@ const baseColumns = ref<QTableProps["columns"]>([
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "position",
|
name: "positionName",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "ตำแหน่ง",
|
label: "ตำแหน่ง",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "position",
|
field: "positionName",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
|
|
@ -133,6 +133,15 @@ const baseColumns = ref<QTableProps["columns"]>([
|
||||||
label: "ระดับ",
|
label: "ระดับ",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "positionLevel",
|
field: "positionLevel",
|
||||||
|
format(val, row) {
|
||||||
|
return `${
|
||||||
|
row.positionLevel
|
||||||
|
? row.positionLevel
|
||||||
|
: row.positionCee
|
||||||
|
? row.positionCee
|
||||||
|
: "-"
|
||||||
|
}`;
|
||||||
|
},
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
|
|
@ -164,11 +173,11 @@ const baseColumns = ref<QTableProps["columns"]>([
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "templateDoc",
|
name: "commandName",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "เอกสารอ้างอิง",
|
label: "เอกสารอ้างอิง",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "templateDoc",
|
field: "commandName",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
|
|
@ -178,6 +187,20 @@ const baseColumns = ref<QTableProps["columns"]>([
|
||||||
label: "เลขที่คำสั่ง",
|
label: "เลขที่คำสั่ง",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "refCommandNo",
|
field: "refCommandNo",
|
||||||
|
format(val, row) {
|
||||||
|
return row.commandNo && row.commandYear
|
||||||
|
? `${row.commandNo}/${row.commandYear}`
|
||||||
|
: "";
|
||||||
|
},
|
||||||
|
headerStyle: "font-size: 14px",
|
||||||
|
style: "font-size: 14px",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "remark",
|
||||||
|
align: "left",
|
||||||
|
label: "หมายเหตุ",
|
||||||
|
sortable: true,
|
||||||
|
field: "remark",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
|
|
@ -202,12 +225,12 @@ const baseColumns = ref<QTableProps["columns"]>([
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
const visibleColumns = ref<string[]>([
|
const visibleColumns = ref<string[]>([
|
||||||
"date",
|
"commandDateAffect",
|
||||||
"amount",
|
"amount",
|
||||||
"positionSalaryAmount",
|
"positionSalaryAmount",
|
||||||
"mouthSalaryAmount",
|
"mouthSalaryAmount",
|
||||||
"oc",
|
"oc",
|
||||||
"position",
|
"positionName",
|
||||||
"posNo",
|
"posNo",
|
||||||
"positionLine",
|
"positionLine",
|
||||||
"positionPathSide",
|
"positionPathSide",
|
||||||
|
|
@ -216,8 +239,9 @@ const visibleColumns = ref<string[]>([
|
||||||
"positionExecutive",
|
"positionExecutive",
|
||||||
"positionExecutiveSide",
|
"positionExecutiveSide",
|
||||||
"salaryClass",
|
"salaryClass",
|
||||||
"templateDoc",
|
"commandName",
|
||||||
"refCommandNo",
|
"refCommandNo",
|
||||||
|
"remark",
|
||||||
"lastUpdateFullName",
|
"lastUpdateFullName",
|
||||||
"lastUpdatedAt",
|
"lastUpdatedAt",
|
||||||
]);
|
]);
|
||||||
|
|
|
||||||
|
|
@ -779,6 +779,11 @@ onMounted(async () => {
|
||||||
</q-list>
|
</q-list>
|
||||||
</q-btn-dropdown>
|
</q-btn-dropdown>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row justify-center">
|
||||||
|
<a href="/report/registry" class="text-white" target="_blank">
|
||||||
|
Advanced search
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</q-card-section>
|
</q-card-section>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue