ข้อมูลทะเบียนประวัติ => fix bug

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2024-06-28 14:59:47 +07:00
parent b3a4db71ea
commit 201062289f
9 changed files with 259 additions and 43 deletions

View file

@ -251,7 +251,9 @@ function getData() {
messageError($q, e);
})
.finally(() => {
hideLoader();
setTimeout(() => {
hideLoader();
}, 2000);
});
}

View file

@ -170,7 +170,9 @@ function getData() {
messageError($q, e);
})
.finally(() => {
hideLoader();
setTimeout(() => {
hideLoader();
}, 2000);
});
}

View file

@ -2,12 +2,19 @@
import { useCounterMixin } from "@/stores/mixin";
import { useQuasar, type QTableProps } from "quasar";
import { ref, reactive, onMounted } from "vue";
import http from "@/plugins/http";
import config from "@/app.config";
import type {
Address,
Provinces,
Districts,
SubDistricts,
} from "@/modules/10_registry/interface/response/01_Information";
//history dialog
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
import http from "@/plugins/http";
import config from "@/app.config";
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
const store = useRegistryInFormationStore();
@ -19,7 +26,7 @@ const { showLoader, hideLoader, messageError, date2Thai } = mixin;
const modalHistory = ref<boolean>(false);
/** ตัวแปรข้อมูล */
const formData = reactive<any>({
const formData = reactive({
registrationAddress: "", //
registrationProvince: "", //
registrationDistrict: "", // /
@ -33,6 +40,12 @@ const formData = reactive<any>({
currentZipCode: "", //
});
const provinceData = ref<Provinces[]>([]);
const districtRegistration = ref<Districts[]>([]);
const districtCurrent = ref<Districts[]>([]);
const subDistrictRegistration = ref<SubDistricts[]>([]);
const subDistrictCurrent = ref<SubDistricts[]>([]);
const visibleColumnsHistory = ref<string[]>([
"currentAddress",
"currentDistrict",
@ -216,23 +229,31 @@ function getData() {
http
.get(config.API.dataUserAddress)
.then((res) => {
const data = res.data.result;
const data: Address = res.data.result;
fetchDistrict(data.registrationProvinceId, "1");
fetchDistrict(data.currentProvinceId, "2");
fetchSubDistrict(data.registrationDistrictId, "1");
fetchSubDistrict(data.currentDistrictId, "2");
formData.registrationAddress = data.registrationAddress;
formData.registrationProvince = data.registrationProvince;
formData.registrationDistrict = data.registrationDistrict;
formData.registrationSubDistrict = data.registrationSubDistrict;
formData.registrationProvince = data.registrationProvinceId;
formData.registrationDistrict = data.registrationDistrictId;
formData.registrationSubDistrict = data.registrationSubDistrictId;
formData.registrationZipCode = data.registrationZipCode;
formData.currentAddress = data.currentAddress;
formData.currentProvince = data.currentProvince;
formData.currentDistrict = data.currentDistrict;
formData.currentSubDistrict = data.currentSubDistrict;
formData.currentProvince = data.currentProvinceId;
formData.currentDistrict = data.currentDistrictId;
formData.currentSubDistrict = data.currentSubDistrictId;
formData.currentZipCode = data.currentZipCode;
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
setTimeout(() => {
hideLoader();
}, 2000);
});
}
@ -257,8 +278,101 @@ function getHistory() {
});
}
onMounted(() => {
getData();
/**
*function fetch อมลจงหว
*/
function fetchProvince() {
http
.get(config.API.profileNewProvince)
.then((res) => {
const data = res.data.result;
provinceData.value = data;
})
.catch((e) => {
messageError($q, e);
});
}
/**
* function fetch อมลอำเภอ
* @param id งหว
* @param position อยตามทะเบยนบาน,อยจจ
*/
function fetchDistrict(id: string | null, position: string) {
if (!id) return;
http
.get(config.API.profileNewDistrictByPId(id))
.then((res) => {
const data = res.data.result.districts;
if (position === "1") {
districtRegistration.value = data;
} else {
districtCurrent.value = data;
}
})
.catch((e) => {
messageError($q, e);
});
}
/**
* function fetch อมลตำบล
* @param id อำเภอ
* @param position อยตามทะเบยนบาน,อยจจ
*/
function fetchSubDistrict(id: string | null, position: string) {
if (!id) return;
http
.get(config.API.profileNewSubDistrictByDId(id))
.then((res) => {
const data = res.data.result.subDistricts;
if (position === "1") {
subDistrictRegistration.value = data;
} else {
subDistrictCurrent.value = data;
}
})
.catch((e) => {
messageError($q, e);
});
}
/**
* function แปลงชอจงหว
* @param id งหว
*/
function convertProvinceName(id: string) {
const province = provinceData.value.find((e: Provinces) => e.id === id);
return province?.name;
}
/**
* function แปลงชออำเภอ
* @param id อำเภอ
* @param type อยตามทะเบยนบาน,อยจจ
*/
function convertDistrictName(id: string, type: string) {
const data =
type === "1" ? districtRegistration.value : districtCurrent.value;
const district = data.find((e: Districts) => e.id === id);
return district?.name;
}
/**
* function แปลงชอตำบล
* @param id ตำบล
* @param type อยตามทะเบยนบาน,อยจจ
*/
function convertSubDistrictName(id: string, type: string) {
const data =
type === "1" ? subDistrictRegistration.value : subDistrictCurrent.value;
const district = data.find((e: SubDistricts) => e.id === id);
return district?.name;
}
onMounted(async () => {
await fetchProvince();
await getData();
});
</script>
<template>
@ -300,7 +414,7 @@ onMounted(() => {
<div class="col-7">
{{
formData.registrationProvince
? formData.registrationProvince
? convertProvinceName(formData.registrationProvince)
: "-"
}}
</div>
@ -311,7 +425,7 @@ onMounted(() => {
<div class="col-7">
{{
formData.registrationDistrict
? formData.registrationDistrict
? convertDistrictName(formData.registrationDistrict, "1")
: "-"
}}
</div>
@ -322,7 +436,10 @@ onMounted(() => {
<div class="col-7">
{{
formData.registrationSubDistrict
? formData.registrationSubDistrict
? convertSubDistrictName(
formData.registrationSubDistrict,
"1"
)
: "-"
}}
</div>
@ -352,20 +469,30 @@ onMounted(() => {
<div class="row">
<div class="col-5 text-grey-6 text-weight-medium">งหว</div>
<div class="col-7">
{{ formData.currentProvince ? formData.currentProvince : "-" }}
{{
formData.currentProvince
? convertProvinceName(formData.currentProvince)
: "-"
}}
</div>
</div>
<div class="row">
<div class="col-5 text-grey-6 text-weight-medium">เขต / อำเภอ</div>
<div class="col-7">
{{ formData.currentDistrict ? formData.currentDistrict : "-" }}
{{
formData.currentDistrict
? convertDistrictName(formData.currentDistrict, "2")
: "-"
}}
</div>
</div>
<div class="row">
<div class="col-5 text-grey-6 text-weight-medium">แขวง / ตำบล</div>
<div class="col-7">
{{
formData.currentSubDistrict ? formData.currentSubDistrict : "-"
formData.currentSubDistrict
? convertSubDistrictName(formData.currentSubDistrict, "2")
: "-"
}}
</div>
</div>

View file

@ -149,12 +149,13 @@ function onHistory(type: string, id: string) {
idFamily.value = id ? id : "user";
}
const checkFatherData = ref<boolean>(false);
const checkMotherData = ref<boolean>(false);
const checkCoupleData = ref<boolean>(false);
const checkChildData = ref<boolean>(false);
/** get data */
function getData(type: string) {
// father
// mother
// couple
// children
showLoader();
http
.get(config.API.dataUserFamily(type))
@ -162,6 +163,7 @@ function getData(type: string) {
const data = res.data.result;
if (data) {
if (type == "father") {
checkFatherData.value = data ? true : false;
fatherData.isLive = data.fatherLive;
fatherData.citizenId = data.fatherCitizenId;
fatherData.prefix = data.fatherPrefix;
@ -170,6 +172,7 @@ function getData(type: string) {
fatherData.job = data.fatherCareer;
fatherData.profileId = data.profileId;
} else if (type == "mother") {
checkMotherData.value = data ? true : false;
motherData.isLive = data.motherLive;
motherData.citizenId = data.motherCitizenId;
motherData.prefix = data.motherPrefix;
@ -178,6 +181,7 @@ function getData(type: string) {
motherData.job = data.motherCareer;
motherData.profileId = data.profileId;
} else if (type == "couple") {
checkCoupleData.value = data ? true : false;
coupleData.isLive = data.coupleLive;
coupleData.citizenId = data.coupleCitizenId;
coupleData.prefix = data.couplePrefix;
@ -188,6 +192,7 @@ function getData(type: string) {
coupleData.statusMarital = data.relationship;
coupleData.profileId = data.profileId;
} else {
checkChildData.value = data.length !== 0 ? true : false;
childData.value = data;
}
}
@ -196,7 +201,9 @@ function getData(type: string) {
messageError($q, e);
})
.finally(() => {
hideLoader();
setTimeout(() => {
hideLoader();
}, 2000);
});
}
@ -235,18 +242,30 @@ function getHistory() {
});
}
onMounted(async () => {
await getData("father");
await getData("mother");
await getData("couple");
await getData("children");
onMounted(() => {
getData("father");
getData("mother");
getData("couple");
getData("children");
});
</script>
<template>
<div class="col-12">
<q-toolbar class="q-px-none">
<span class="text-blue-6 text-weight-bold text-body1"
>อมลครอบคร</span
>อมลครอบคร
</span>
<span
class="text-blue-6 text-subtitle2 q-ml-sm"
v-if="
!checkFatherData &&
!checkMotherData &&
!checkCoupleData &&
!checkChildData
"
>
(ไมอม)</span
>
</q-toolbar>
<div class="row q-col-gutter-sm">

View file

@ -446,7 +446,9 @@ function getData() {
messageError($q, e);
})
.finally(() => {
hideLoader();
setTimeout(() => {
hideLoader();
}, 2000);
});
}

View file

@ -171,7 +171,9 @@ function getData() {
messageError($q, e);
})
.finally(() => {
hideLoader();
setTimeout(() => {
hideLoader();
}, 2000);
});
}