- ปรับรับข้อมูลหน่วยงานในสังกัด

- เพิ่มประเภททุน
This commit is contained in:
Warunee Tamkoo 2024-04-18 11:23:19 +07:00
parent e6a2d99fb2
commit 22c8091dce
4 changed files with 90 additions and 81 deletions

View file

@ -180,6 +180,7 @@ function getDataEdit() {
formMain.type = data.posTypeName ? data.posTypeName : null; formMain.type = data.posTypeName ? data.posTypeName : null;
formMain.level = data.posLevelName ? data.posLevelName : null; formMain.level = data.posLevelName ? data.posLevelName : null;
formMain.positionSide = data.posExecutive ? data.posExecutive : null; formMain.positionSide = data.posExecutive ? data.posExecutive : null;
formMain.oc = data.org ? data.org : null;
formMainProject.id = data.developmentId; formMainProject.id = data.developmentId;
formMainProject.project = data.projectName; formMainProject.project = data.projectName;
@ -210,6 +211,7 @@ onMounted(() => {
} }
}); });
</script> </script>
<template> <template>
<div class="toptitle text-dark"> <div class="toptitle text-dark">
<q-btn <q-btn

View file

@ -168,6 +168,7 @@ function getDataEdit() {
formMain.type = data.posTypeName ? data.posTypeName : null; formMain.type = data.posTypeName ? data.posTypeName : null;
formMain.level = data.posLevelName ? data.posLevelName : null; formMain.level = data.posLevelName ? data.posLevelName : null;
formMain.positionSide = data.positionSide ? data.positionSide : null; formMain.positionSide = data.positionSide ? data.positionSide : null;
formMain.oc = data.org ? data.org : null;
formMainProject.id = data.developmentId; formMainProject.id = data.developmentId;
formMainProject.project = data.projectName; formMainProject.project = data.projectName;
@ -198,6 +199,7 @@ onMounted(() => {
} }
}); });
</script> </script>
<template> <template>
<div class="toptitle text-dark"> <div class="toptitle text-dark">
<q-btn <q-btn

View file

@ -48,15 +48,19 @@ const scholarshipTypeOp = ref<DataOption[]>([
{ id: "DOMESTICE", name: "การศึกษาในประเทศ" }, { id: "DOMESTICE", name: "การศึกษาในประเทศ" },
{ {
id: "NOABROAD", id: "NOABROAD",
name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่ไม่มีการไปต่างประเทศ)", name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่ไม่มีการไปต่างประเทศ)",
}, },
{ {
id: "ABROAD", id: "ABROAD",
name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่มีการไปต่างประเทศ)", name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่มีการไปต่างประเทศ)",
}, },
{ {
id: "EXECUTIVE", id: "EXECUTIVE",
name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยวงานภายนอก (หลักสูตรประเภทนักบริหาร)", name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรประเภทนักบริหาร)",
},
{
id: "RESEARCH",
name: "ศึกษา ฝึกอบรม ประชุม ดูงาน และปฏิบัติการวิจัย ณ ต่างประเทศ",
}, },
]); ]);
const fundTypeOp = ref<DataOption[]>([ const fundTypeOp = ref<DataOption[]>([
@ -188,7 +192,7 @@ function fetchDataDetail(id: string) {
formBody.reportBackNo = data.reportBackNo; formBody.reportBackNo = data.reportBackNo;
formBody.reportBackNoDate = data.reportBackNoDate; formBody.reportBackNoDate = data.reportBackNoDate;
formBody.reportBackDate = data.reportBackDate; formBody.reportBackDate = data.reportBackDate;
formBody.degreeLevel = data.degreeLevel; formBody.degreeLevel = data.degreeLevel;
formBody.course = data.course; formBody.course = data.course;
formBody.field = data.field; formBody.field = data.field;
@ -418,7 +422,7 @@ async function checkFileBackReceived(id: string) {
}); });
} }
function downloadFileBackReceived() { function downloadFileBackReceived(id: string) {
showLoader(); showLoader();
http http
.get( .get(
@ -465,13 +469,13 @@ onMounted(() => {
</div> </div>
<q-space /> <q-space />
<q-btn <q-btn
v-if="fileBackReceived != ''" v-if="scholarshipId != null && fileBackReceived != ''"
flat flat
round round
dense dense
icon="download" icon="download"
color="blue" color="blue"
@click="downloadFileBackReceived()" @click="downloadFileBackReceived(scholarshipId)"
> >
<q-tooltip>ดาวนโหลด</q-tooltip> <q-tooltip>ดาวนโหลด</q-tooltip>
</q-btn> </q-btn>
@ -557,7 +561,55 @@ onMounted(() => {
</div> </div>
</q-card> </q-card>
</div> </div>
<div class="row q-col-gutter-md q-pa-md" v-if="isGov"> <div class="row q-col-gutter-md q-pa-md" v-if="isGov">
<div class="col-9">
<q-select
dense
outlined
hide-bottom-space
lazy-rules
v-model="formBody.scholarshipType"
:options="scholarshipTypeOp"
option-label="name"
option-value="id"
emit-value
map-options
class="inputgreen"
label="เลือกประเภททุน"
:rules="[
(val: string) =>
!!val || `${'กรุณาเลือกประเภททุน'}`,
]"
/>
</div>
<div
class="col-3"
v-if="
formBody.scholarshipType !== '' &&
formBody.scholarshipType !== 'EXECUTIVE'
"
>
<q-select
dense
outlined
hide-bottom-space
lazy-rules
class="inputgreen"
v-model="formBody.fundType"
:options="fundTypeOp"
option-label="name"
option-value="id"
emit-value
map-options
label="ประเภททุน"
:rules="[
(val: string) =>
!!val || `${'กรุณาเลือกประเภททุน'}`,
]"
/>
</div>
<div class="col-12"> <div class="col-12">
<q-radio <q-radio
v-model="formBody.planType" v-model="formBody.planType"
@ -779,52 +831,7 @@ onMounted(() => {
]" ]"
/> />
</div> </div>
<div class="col-9">
<q-select
dense
outlined
hide-bottom-space
lazy-rules
v-model="formBody.scholarshipType"
:options="scholarshipTypeOp"
option-label="name"
option-value="id"
emit-value
map-options
class="inputgreen"
label="เลือกประเภททุน"
:rules="[
(val: string) =>
!!val || `${'กรุณาเลือกประเภททุน'}`,
]"
/>
</div>
<div
class="col-3"
v-if="
formBody.scholarshipType !== '' &&
formBody.scholarshipType !== 'EXECUTIVE'
"
>
<q-select
dense
outlined
hide-bottom-space
lazy-rules
class="inputgreen"
v-model="formBody.fundType"
:options="fundTypeOp"
option-label="name"
option-value="id"
emit-value
map-options
label="ประเภททุน"
:rules="[
(val: string) =>
!!val || `${'กรุณาเลือกประเภททุน'}`,
]"
/>
</div>
<div <div
class="col-12" class="col-12"
v-if=" v-if="

View file

@ -90,21 +90,22 @@ const visibleColumns = ref<string[]>([
]); ]);
const scholarshipTypeOp = ref<DataOption[]>([ const scholarshipTypeOp = ref<DataOption[]>([
{ { id: "DOMESTICE", name: "การศึกษาในประเทศ" },
id: "DOMESTICE",
name: "การศึกษาในประเทศ",
},
{ {
id: "NOABROAD", id: "NOABROAD",
name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่ไม่มีการไปต่างประเทศ)", name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่ไม่มีการไปต่างประเทศ)",
}, },
{ {
id: "ABROAD", id: "ABROAD",
name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่มีการไปต่างประเทศ)", name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรที่มีการไปต่างประเทศ)",
}, },
{ {
id: "EXECUTIVE", id: "EXECUTIVE",
name: "ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยวงานภายนอก (หลักสูตรประเภทนักบริหาร)", name: " ฝึกอบรมในประเทศที่ส่งไปพัฒนากับหน่วยงานภายนอก (หลักสูตรประเภทนักบริหาร)",
},
{
id: "RESEARCH",
name: "ศึกษา ฝึกอบรม ประชุม ดูงาน และปฏิบัติการวิจัย ณ ต่างประเทศ",
}, },
]); ]);
const itemDownload = ref<ItemsDownload[]>([ const itemDownload = ref<ItemsDownload[]>([
@ -186,21 +187,18 @@ watch(
function onDownload() { function onDownload() {
showLoader(); showLoader();
http http
.get(config.API.developmentReportScholarship()) .get(config.API.developmentReportScholarship())
.then((res) => { .then((res) => {
const dataList = res.data.result; const dataList = res.data.result;
genReportXLSX( genReportXLSX(dataList, "รายการข้าราชการฯที่ได้รับทุนการศึกษา/ฝึกอบรม");
dataList, })
"รายการข้าราชการฯที่ได้รับทุนการศึกษา/ฝึกอบรม" .catch((e) => {
); messageError($q, e);
}) })
.catch((e) => { .finally(() => {
messageError($q, e); hideLoader();
}) });
.finally(() => {
hideLoader();
});
} }
onMounted(() => { onMounted(() => {
@ -217,7 +215,7 @@ onMounted(() => {
<div class="row q-gutter-sm"> <div class="row q-gutter-sm">
<div> <div>
<datepicker <datepicker
style="width: 150px;" style="width: 150px"
menu-class-name="modalfix" menu-class-name="modalfix"
v-model="formQuery.year" v-model="formQuery.year"
:locale="'th'" :locale="'th'"
@ -236,16 +234,16 @@ onMounted(() => {
lazy-rules lazy-rules
outlined outlined
:model-value=" :model-value="
formQuery.year === 0 ? 'ทั้งหมด' : Number(formQuery.year) + 543 formQuery.year === 0
? 'ทั้งหมด'
: Number(formQuery.year) + 543
" "
:label="`${'ปีงบประมาณ'}`" :label="`${'ปีงบประมาณ'}`"
> >
<template v-if="formQuery.year" v-slot:append> <template v-if="formQuery.year" v-slot:append>
<q-icon <q-icon
name="cancel" name="cancel"
@click.stop.prevent=" @click.stop.prevent="(formQuery.year = 0), fetchNewList()"
(formQuery.year = 0), fetchNewList()
"
class="cursor-pointer" class="cursor-pointer"
/> />
</template> </template>
@ -273,7 +271,7 @@ onMounted(() => {
option-label="name" option-label="name"
label="เลือกประเภททุน" label="เลือกประเภททุน"
@update:model-value="fetchNewList" @update:model-value="fetchNewList"
style="width: 350px;" style="width: 350px"
/> />
</div> </div>
</div> </div>