วินัยรองรับลูกจ้างประจำ กทม.

This commit is contained in:
setthawutttty 2024-12-18 16:39:42 +07:00
parent 77a3e7b57f
commit 9bb81be90d
20 changed files with 370 additions and 106 deletions

View file

@ -46,6 +46,12 @@ const type = ref<string>("citizenId");
const search = ref<string>("");
const selected = ref<any>([]);
const employeeClass = ref<string>("officer");
const employeeClassOption = ref<typeOp[]>([
{ id: "officer", name: "ข้าราชการ กทม. สามัญ" },
{ id: "employee", name: "ลูกจ้างประจำ กทม." },
]);
const typeOps = ref<typeOp[]>([
{ id: "citizenId", name: "เลขประจำตัวประชาชน" },
{ id: "fullName", name: "ชื่อ-นามสกุล" },
@ -97,6 +103,7 @@ const emit = defineEmits(["returnData"]);
async function close() {
props.close();
rows.value = [];
employeeClass.value = "officer";
search.value = "";
}
@ -111,8 +118,9 @@ function savePost() {
/** save data หลังจาก ยืนยัน */
function saveData() {
props.save();
emit("returnData", selected.value);
props.save(selected.value, employeeClass.value);
rows.value = [];
employeeClass.value = "officer";
}
const searchRef = ref<any>(null);
@ -129,11 +137,14 @@ async function getSearch() {
showLoader();
const body = {
fieldName: type.value,
keyword: search.value ? search.value.trim():'',
keyword: search.value ? search.value.trim() : "",
};
await http
.post(
config.API.orgSearchPersonal()+`?page=${pagination.value.page}&pageSize=${pagination.value.rowsPerPage}`,
config.API.orgSearchPersonalByType(
employeeClass.value == "officer" ? "" : "-employee"
) +
`?page=${pagination.value.page}&pageSize=${pagination.value.rowsPerPage}`,
body
)
.then((res) => {
@ -233,7 +244,23 @@ watch(
</q-toolbar>
<q-separator />
<q-card-section class="q-pa-md scroll" style="max-height: 80vh">
<div class="row col-12 q-col-gutter-sm items-start q-mb-sm">
<div class="row q-col-gutter-sm items-start q-mb-sm">
<div class="col-12 col-sm-5 col-md-3">
<q-select
label="สถานภาพ"
v-model="employeeClass"
:options="employeeClassOption"
emit-value
dense
map-options
outlined
option-label="name"
option-value="id"
@update:model-value="rows = []"
/>
</div>
</div>
<div class="row q-col-gutter-sm items-start q-mb-sm">
<div class="col-12 col-sm-5 col-md-3">
<q-select
label="ค้นหาจาก"
@ -275,7 +302,7 @@ watch(
<div class="full-width">
<d-table
ref="table"
:columns="mainStore.columnsRespondent"
:columns="mainStore.columnsRespondent?.filter((item:any)=>item.name !== 'profileType')"
:rows="rows"
row-key="personId"
flat
@ -357,6 +384,7 @@ watch(
props.row.salary ? props.row.salary.toLocaleString() : "-"
}}
</div>
<div v-else>
{{ col.value }}
</div>