ต่อ API ประวัติการฝึกอบรม

This commit is contained in:
STW_TTTY\stwtt 2024-04-04 17:42:27 +07:00
parent 76a2468365
commit 3128755671
7 changed files with 136 additions and 69 deletions

View file

@ -1,5 +1,5 @@
<script setup lang="ts">
import { ref, reactive,onMounted} from "vue";
import { ref, reactive, onMounted } from "vue";
import { useRoute, useRouter } from "vue-router";
import type {
FormAddHistory,
@ -17,12 +17,13 @@ import http from "@/plugins/http";
import config from "@/app.config";
const router = useRouter();
const route = useRoute()
const route = useRoute();
const id = ref<string>(route.params.id as string);
const $q = useQuasar();
const mixin = useCounterMixin();
const { dialogConfirm, showLoader, hideLoader, messageError,date2Thai } = mixin;
const { dialogConfirm, showLoader, hideLoader, messageError, date2Thai } =
mixin;
const store = useDevelopmentDataStore();
const modalDialogGov = ref<boolean>(false);
const modalDialogProject = ref<boolean>(false);
@ -94,38 +95,39 @@ function getClass() {
}
/** save */
function onSubmit() {
const url = store.statusEdit
? config.API.developmentHistoryList('officer')+`${id.value}`
: config.API.developmentHistoryAdd('officer')
const url = id.value
? config.API.developmentHistoryList("officer") + `${id.value}`
: config.API.developmentHistoryAdd("officer");
const body = {
rank:null,
prefix:formMain.prefix,
firstName:formMain.firstName,
lastName:formMain.lastName,
citizenId:formMain.citizenId,
position:formMain.position,
posExecutive:formMain.positionSide,
posLevelId:formMain.posLevelId,
posTypeId:formMain.posTypeId,
rank: null,
prefix: formMain.prefix,
firstName: formMain.firstName,
lastName: formMain.lastName,
citizenId: formMain.citizenId,
position: formMain.position,
posExecutive: formMain.positionSide,
posLevelId: formMain.posLevelId,
posTypeId: formMain.posTypeId,
developmentId:formMainProject.id,
order:order.value,
dateOrder:dateOrder.value
}
dialogConfirm($q,()=>{
showLoader()
http[store.statusEdit ? 'put':'post'](url,body)
.then((res)=>{
console.log(res)
router.push(`/development/history`)
}).catch((e)=>{
messageError($q,e)
}).finally(()=>{
hideLoader()
developmentId: formMainProject.id,
order: order.value,
dateOrder: dateOrder.value,
};
dialogConfirm($q, () => {
showLoader();
http[id.value ? "put" : "post"](url, body)
.then((res) => {
console.log(res);
router.push(`/development/history`);
})
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
});
});
}
function upDate(data: FormAddHistory) {
@ -149,25 +151,55 @@ function upDateProject(data: any) {
formMainProject.year = data.year;
}
function getDataEdit(){
showLoader()
function getDataEdit() {
showLoader();
http
.get(config.API.developmentHistoryList('officer')+`${id.value}`)
.then((res)=>{
console.log(res)
}).catch((e)=>{
messageError($q,e)
}).finally(()=>{
hideLoader()
})
.get(config.API.developmentHistoryList("officer") + `${id.value}`)
.then((res) => {
const data = res.data.result;
formMain.id = id.value;
formMain.citizenId = data.citizenId ? data.citizenId : null;
formMain.name = data.firstName
? `${data.prefix}${data.firstName} ${data.lastName}`
: null;
formMain.prefix = data.prefix ? data.prefix : null;
formMain.firstName = data.firstName ? data.firstName : null;
formMain.lastName = data.lastName ? data.lastName : null;
formMain.position = data.position ? data.position : null;
formMain.posLevelId = data.posLevelId ? data.posLevelId : null;
formMain.posTypeId = data.posTypeId ? data.posTypeId : null;
formMain.type = data.posTypeName ? data.posTypeName : null;
formMain.level = data.posLevelName ? data.posLevelName : null;
formMain.positionSide = data.posExecutive ? data.posExecutive : null;
formMainProject.project = data.projectName;
formMainProject.year = data.year;
formMainProject.trainingStartdateStart = data.dateStart;
formMainProject.trainingEnddateEnd = data.dateEnd;
formMainProject.totalTrainingtotalDate = data.totalDate;
formMainProject.location = data.addressAcademic;
formMainProject.topic = data.topicAcademic;
formMainProject.studyStart = data.dateStudyStart;
formMainProject.studyEnd = data.dateStudyEnd;
formMainProject.organizingTraining = data.org;
dateOrder.value = data.dateOrder;
order.value = data.order;
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
});
}
onMounted(()=>{
if(store.statusEdit == true){
console.log(1)
// getDataEdit()
onMounted(() => {
if(id.value){
getDataEdit();
}
})
});
</script>
<template>
<div class="toptitle text-dark">
@ -181,8 +213,11 @@ onMounted(()=>{
class="q-mr-sm"
@click="router.go(-1)"
/>
<span>{{ store.statusEdit ? `แก้ไขประวัติการฝึกอบรม/ดูงานของข้าราชการกรุงเทพมหานครสามัญ`:`เพิ่มประวัติการฝึกอบรม/ดูงานของข้าราชการกรุงเทพมหานครสามัญ`}}</span
>
<span>{{
id
? `แก้ไขประวัติการฝึกอบรม/ดูงานของข้าราชการกรุงเทพมหานครสามัญ`
: `เพิ่มประวัติการฝึกอบรม/ดูงานของข้าราชการกรุงเทพมหานครสามัญ`
}}</span>
</div>
<q-card flat bordered>
<q-form greedy @submit.prevent @validation-success="onSubmit">
@ -247,7 +282,7 @@ onMounted(()=>{
color="teal"
label="เลือกโครงการ"
icon="add"
@click="modalDialogProject = true;"
@click="modalDialogProject = true"
/>
</div>
<div class="col-12"><q-separator /></div>
@ -267,8 +302,12 @@ onMounted(()=>{
}}</span>
</div>
<div class="col-12 col-sm-12 col-md-8">
<span v-if='index == 1 '>{{ formMainProject[field] ? formMainProject[field] + 543 : "-" }}</span>
<span v-else>{{ formMainProject[field] ? formMainProject[field] : "-" }}</span>
<span v-if="index == 1">{{
formMainProject[field] ? formMainProject[field] + 543 : "-"
}}</span>
<span v-else>{{
formMainProject[field] ? formMainProject[field] : "-"
}}</span>
</div>
</div>
</div>

View file

@ -138,7 +138,7 @@ function onSubmit() {
if (selected.value?.length == 0) {
dialogMessageNotify($q, `กรุณาเลือก 1 รายการ`);
} else {
dialogConfirm($q, () => {
const data = selected.value[0];
const body = {
id:data.id,
@ -158,7 +158,7 @@ function onSubmit() {
};
props.upDate?.(body)
closeDialog();
});
}
}

View file

@ -116,7 +116,7 @@ function onSubmit() {
if (selected.value?.length == 0) {
dialogMessageNotify($q, `กรุณาเลือก 1 รายการ`);
} else {
dialogConfirm($q, () => {
const data = selected.value[0];
const body = {
id:data.id,
@ -130,7 +130,7 @@ function onSubmit() {
};
props.upDate?.(body)
closeDialog();
});
}
}

View file

@ -93,7 +93,7 @@ function getClass() {
}
/** save */
function onSubmit() {
const url = store.statusEdit
const url = id.value
? config.API.developmentHistoryList("employee") + `${id.value}`
: config.API.developmentHistoryAdd("employee");
@ -114,7 +114,7 @@ function onSubmit() {
};
dialogConfirm($q, () => {
showLoader();
http[store.statusEdit ? "put" : "post"](url, body)
http[id.value ? "put" : "post"](url, body)
.then((res) => {
console.log(res);
router.push(`/development/employee-history`);
@ -151,9 +151,38 @@ function upDateProject(data: any) {
function getDataEdit() {
showLoader();
http
.get(config.API.developmentHistoryList("officer") + `${id.value}`)
.get(config.API.developmentHistoryList("employee") + `${id.value}`)
.then((res) => {
console.log(res);
const data = res.data.result;
formMain.id = id.value;
formMain.citizenId = data.citizenId ? data.citizenId : null;
formMain.name = data.firstName
? `${data.prefix}${data.firstName} ${data.lastName}`
: null;
formMain.prefix = data.prefix ? data.prefix : null;
formMain.firstName = data.firstName ? data.firstName : null;
formMain.lastName = data.lastName ? data.lastName : null;
formMain.position = data.position ? data.position : null;
formMain.posLevelId = data.posLevelId ? data.posLevelId : null;
formMain.posTypeId = data.posTypeId ? data.posTypeId : null;
formMain.type = data.posTypeName ? data.posTypeName : null;
formMain.level = data.posLevelName ? data.posLevelName : null;
formMain.positionSide = data.positionSide ? data.positionSide : null;
formMainProject.project = data.projectName;
formMainProject.year = data.year;
formMainProject.trainingStartdateStart = data.dateStart;
formMainProject.trainingEnddateEnd = data.dateEnd;
formMainProject.totalTrainingtotalDate = data.totalDate;
formMainProject.location = data.addressAcademic;
formMainProject.topic = data.topicAcademic;
formMainProject.studyStart = data.dateStudyStart;
formMainProject.studyEnd = data.dateStudyEnd;
formMainProject.organizingTraining = data.org;
dateOrder.value = data.dateOrder;
order.value = data.order;
})
.catch((e) => {
messageError($q, e);
@ -164,9 +193,8 @@ function getDataEdit() {
}
onMounted(() => {
if (store.statusEdit == true) {
console.log(1);
// getDataEdit()
if (id.value) {
getDataEdit()
}
});
</script>
@ -183,7 +211,7 @@ onMounted(() => {
@click="router.go(-1)"
/>
<span>{{
store.statusEdit
id
? `แก้ไขประวัติฝึกอบรม/ดูงานลูกจ้าง`
: `เพิ่มประวัติฝึกอบรม/ดูงานลูกจ้าง`
}}</span>

View file

@ -129,7 +129,7 @@ function onSubmit() {
if (selected.value?.length == 0) {
dialogMessageNotify($q, `กรุณาเลือก 1 รายการ`);
} else {
dialogConfirm($q, () => {
const data = selected.value[0];
const body = {
id:data.id,
@ -149,7 +149,7 @@ function onSubmit() {
};
props.upDate?.(body)
closeDialog();
});
}
}

View file

@ -109,7 +109,7 @@ function onSubmit() {
if (selected.value?.length == 0) {
dialogMessageNotify($q, `กรุณาเลือก 1 รายการ`);
} else {
dialogConfirm($q, () => {
const data = selected.value[0];
const body = {
id: data.id,
@ -123,7 +123,7 @@ function onSubmit() {
};
props.upDate?.(body);
closeDialog();
});
}
}

View file

@ -63,7 +63,7 @@ interface FormFollowOther {
interface FormAddHistory {
id: string;
name: string;
name: string|null;
prefix: string;
rank: string;
firstName: string;
@ -82,7 +82,7 @@ interface FormAddHistory {
interface FormAddHistoryEmployee {
id: string;
name: string;
name: string|null;
prefix: string;
rank: string;
firstName: string;