fix fetch profilePosition

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2025-07-25 15:08:35 +07:00
parent efcfda8b0e
commit 7d95116c25
3 changed files with 118 additions and 73 deletions

View file

@ -9,8 +9,10 @@ import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import { useEvaluateDetailStore } from "@/modules/06_evaluate/stores/evaluteDetail";
import { useEvaluateStore } from "@/modules/06_evaluate/store";
import { useDataStore } from "@/stores/data";
/** importType*/
import type { DataProfile } from "@/interface/Main";
import type {
EducationForm,
CertificatesForm,
@ -24,6 +26,7 @@ import HeaderDialog from "@/components/DialogHeader.vue";
const mixin = useCounterMixin();
const store = useEvaluateDetailStore();
const storeEva = useEvaluateStore();
const storeData = useDataStore();
const $q = useQuasar();
const route = useRoute();
const { showLoader, hideLoader, messageError, date2Thai, findOrgNameHtml } =
@ -75,34 +78,39 @@ const formDetail = reactive<any>({
/** function เรียกข้อมูลตรวจสอบคุณสมบัติ*/
async function fetchDetail() {
await http
.get(config.API.profilePosition())
.then(async (res) => {
const data = await res.data.result;
formDetail.root = data.root;
formDetail.rootId = data.rootId;
formDetail.userId = data.id;
formDetail.citizenId = data.citizenId;
formDetail.prefix = data.prefix;
formDetail.fullName = `${data.firstName} ${data.lastName}`;
formDetail.firstName = data.firstName;
formDetail.lastName = data.lastName;
formDetail.position = data.position;
formDetail.oc = data.rootShortName;
formDetail.positionLevel = data.posLevelName;
formDetail.posNo = data.posNo ?? "";
formDetail.birthDate = data.birthDate;
// formDetail.govAge = data.govAge; //
formDetail.salary = data.salary;
formDetail.posExecutive = data.posExecutive;
formDetail.positionArea = data.positionArea;
await fetchDataAllDetail();
try {
if (!storeData.dataprofilePosition) {
const res = await http.get(config.API.profilePosition());
await updateFormDetail(res.data.result);
} else {
await updateFormDetail(storeData.dataprofilePosition);
}
} catch (error) {
messageError($q, error);
}
}
emit("update:formDeital", formDetail);
})
.catch((err) => {
messageError($q, err);
});
async function updateFormDetail(data: DataProfile) {
formDetail.root = data.root;
formDetail.rootId = data.rootId;
formDetail.userId = data.profileId;
formDetail.citizenId = data.citizenId;
formDetail.prefix = data.prefix;
formDetail.fullName = `${data.firstName} ${data.lastName}`;
formDetail.firstName = data.firstName;
formDetail.lastName = data.lastName;
formDetail.position = data.position;
formDetail.oc = data.rootShortName;
formDetail.positionLevel = data.posLevelName;
formDetail.posNo = data.posNo ?? "";
formDetail.birthDate = data.birthDate;
// formDetail.govAge = data.govAge; //
formDetail.salary = data.salary;
formDetail.posExecutive = data.posExecutiveName;
formDetail.positionArea = data.positionArea;
await fetchDataAllDetail();
emit("update:formDeital", formDetail);
}
async function fetchDataAllDetail() {