ต่อ API

This commit is contained in:
setthawutttty 2024-11-01 17:25:19 +07:00
parent daa78078a2
commit c776d4e7f1
10 changed files with 105 additions and 103 deletions

View file

@ -2,10 +2,10 @@
import { ref, onMounted, watch } from "vue";
import { useDataLinkCenter } from "@/modules/04_registryPerson/stores/LinkCenter";
import type { RequestAddressObject } from "@/modules/04_registryPerson/interface/request/Address";
import type { RequestregistrationAddressObject } from "@/modules/04_registryPerson/interface/request/Address";
const storeLinkCenter = useDataLinkCenter();
const formDataAddress = defineModel<RequestAddressObject>("formDataAddress", {
const formDataAddress = defineModel<RequestregistrationAddressObject>("formDataAddress", {
required: true,
});
const presentAddress = defineModel<string>("presentAddress", {
@ -18,12 +18,6 @@ const dataLabel = {
registrationDistrict: "เขต/อำเภอ",
registrationSubDistrict: "แขวง / ตำบล",
registrationZipCode: "รหัสไปรษณีย์",
currentAddress: "ที่อยู่ปัจจุบัน",
currentProvince: "จังหวัด",
currentDistrict: "เขต/อำเภอ",
currentSubDistrict: "แขวง / ตำบล",
currentZipCode: "รหัสไปรษณีย์",
registrationSame: "ที่อยู่ปัจจุบันตรงกับที่อยู่ตามทะเบียนบ้าน",
};
/**
@ -37,10 +31,6 @@ async function selectProvince(e: string | null, name: string) {
formDataAddress.value.registrationSubDistrictId = "";
formDataAddress.value.registrationZipCode = "";
formDataAddress.value.registrationDistrictId = "";
} else {
formDataAddress.value.currentSubDistrictId = "";
formDataAddress.value.currentZipCode = "";
formDataAddress.value.currentDistrictId = "";
}
await storeLinkCenter.fetchDistrict(e, name, true);
}
@ -56,9 +46,6 @@ async function selectDistrict(e: string | null, name: string) {
if (name == "1") {
formDataAddress.value.registrationSubDistrictId = "";
formDataAddress.value.registrationZipCode = "";
} else {
formDataAddress.value.currentSubDistrictId = "";
formDataAddress.value.currentZipCode = "";
}
await storeLinkCenter.fetchSubDistrict(e, name, true);
}
@ -81,7 +68,6 @@ function selectSubDistrict(e: string | null, name: string) {
(r) => r.id == e
);
const namecode = findcode.length > 0 ? findcode[0].zipCode : "";
formDataAddress.value.currentZipCode = namecode;
}
}
@ -92,11 +78,6 @@ watch(
() => presentAddress.value,
(v) => {
if (v === "0") {
formDataAddress.value.currentAddress = "";
formDataAddress.value.currentProvinceId = "";
formDataAddress.value.currentDistrictId = "";
formDataAddress.value.currentSubDistrictId = "";
formDataAddress.value.currentZipCode = "";
storeLinkCenter.OpsAddress.districtCOps = [];
storeLinkCenter.OpsAddress.subdistrictCOps = [];
}

View file

@ -7,7 +7,7 @@ import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import { useDataLinkCenter } from "@/modules/04_registryPerson/stores/LinkCenter";
import { useProfileDataStore } from "@/modules/04_registryPerson/stores/profile";
import { useRequestEditStore } from "@/modules/04_registryPerson/stores/RequestEdit";
import type { FormPerson } from "@/modules/04_registryPerson/interface/index/family";
import Header from "@/components/DialogHeader.vue"; // popup
@ -15,6 +15,7 @@ import Header from "@/components/DialogHeader.vue"; //ส่วนหัว popu
const $q = useQuasar();
const mixin = useCounterMixin();
const storeLinkCenter = useDataLinkCenter();
const storeRequestEdit = useRequestEditStore();
const storeProfile = useProfileDataStore();
const {
@ -56,30 +57,30 @@ async function closeDialog() {
fatherData.job = "";
}
async function onSubmit() {
function onSubmit() {
dialogConfirm($q, async () => {
const body = {
profileId: profileId.value,
fatherCitizenId: fatherData.citizenId,
fatherPrefix: fatherData.prefix,
fatherFirstName: fatherData.firstName,
fatherLastName: fatherData.lastName,
fatherCareer: fatherData.job,
fatherLive: fatherData.isLive === 1 ? true : false,
};
showLoader();
http
.post(config.API.profileFamily("", "father"), body)
.patch(
config.API.requestInformationbyType("father", storeRequestEdit.profileId),
body
)
.then(async (res) => {
await upDateStatus();
success($q, "บันทึกข้อมูลสำเร็จ");
closeDialog();
await props.fetchData?.();
})
.catch((e) => {
messageError($q, e);
hideLoader();
})
.finally(() => {});
.finally(() => {
hideLoader();
});
});
}
@ -102,6 +103,7 @@ async function upDateStatus() {
hideLoader();
});
}
watch(
() => modal.value,
() => {

View file

@ -7,7 +7,7 @@ import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import { useDataLinkCenter } from "@/modules/04_registryPerson/stores/LinkCenter";
import { useProfileDataStore } from "@/modules/04_registryPerson/stores/profile";
import { useRequestEditStore } from "@/modules/04_registryPerson/stores/RequestEdit";
import type { FormPerson } from "@/modules/04_registryPerson/interface/index/family";
import Header from "@/components/DialogHeader.vue"; // popup
@ -16,6 +16,8 @@ const $q = useQuasar();
const mixin = useCounterMixin();
const storeLinkCenter = useDataLinkCenter();
const storeProfile = useProfileDataStore();
const storeRequestEdit = useRequestEditStore();
const {
showLoader,
hideLoader,
@ -55,30 +57,30 @@ async function closeDialog() {
motherData.job = "";
}
async function onSubmit() {
function onSubmit() {
dialogConfirm($q, async () => {
const body = {
profileId: profileId.value,
motherCitizenId: motherData.citizenId,
motherPrefix: motherData.prefix,
motherFirstName: motherData.firstName,
motherLastName: motherData.lastName,
motherCareer: motherData.job,
motherLive: motherData.isLive === 1 ? true : false,
};
showLoader();
http
.post(config.API.profileFamily("", "mother"), body)
.patch(
config.API.requestInformationbyType("mother", storeRequestEdit.profileId),
body
)
.then(async (res) => {
await upDateStatus();
success($q, "บันทึกข้อมูลสำเร็จ");
closeDialog();
await props.fetchData?.();
})
.catch((e) => {
messageError($q, e);
hideLoader();
})
.finally(() => {});
.finally(() => {
hideLoader();
});
});
}

View file

@ -7,7 +7,7 @@ import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import { useDataLinkCenter } from "@/modules/04_registryPerson/stores/LinkCenter";
import { useProfileDataStore } from "@/modules/04_registryPerson/stores/profile";
import { useRequestEditStore } from "@/modules/04_registryPerson/stores/RequestEdit";
import type { FormPerson } from "@/modules/04_registryPerson/interface/index/family";
import Header from "@/components/DialogHeader.vue"; // popup
@ -16,6 +16,8 @@ const $q = useQuasar();
const mixin = useCounterMixin();
const storeLinkCenter = useDataLinkCenter();
const storeProfile = useProfileDataStore();
const storeRequestEdit = useRequestEditStore();
const {
showLoader,
hideLoader,
@ -59,11 +61,9 @@ async function closeDialog() {
coupleData.statusMarital = "";
}
async function onSubmit() {
function onSubmit() {
dialogConfirm($q, async () => {
const body = {
profileId: profileId.value,
coupleCitizenId: coupleData.citizenId,
couplePrefix: coupleData.prefix,
coupleFirstName: coupleData.firstName,
coupleLastName: coupleData.lastName,
@ -72,19 +72,24 @@ async function onSubmit() {
relationship: coupleData.statusMarital,
coupleLastNameOld: coupleData.lastNameOld,
};
showLoader();
http
.post(config.API.profileFamily("", "couple"), body)
.patch(
config.API.requestInformationbyType(
"couple",
storeRequestEdit.profileId
),
body
)
.then(async (res) => {
await upDateStatus();
success($q, "บันทึกข้อมูลสำเร็จ");
closeDialog();
await props.fetchData?.();
})
.catch((e) => {
messageError($q, e);
hideLoader();
})
.finally(() => {});
.finally(() => {
hideLoader();
});
});
}

View file

@ -8,8 +8,9 @@ import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import { useLinkageStore } from "@/stores/linkage";
import { useDataLinkCenter } from "@/modules/04_registryPerson/stores/LinkCenter";
import { useRequestEditStore } from "@/modules/04_registryPerson/stores/RequestEdit";
import type { RequestAddressObject } from "@/modules/04_registryPerson/interface/request/Address";
import type { RequestregistrationAddressObject } from "@/modules/04_registryPerson/interface/request/Address";
import type { RequestObject } from "@/modules/04_registryPerson/interface/request/Profile";
import type {
FormPerson,
@ -27,6 +28,7 @@ const profileId = defineModel<string>("profileId", { required: true }); //id บ
const $q = useQuasar();
const mixin = useCounterMixin();
const storeLinkage = useLinkageStore();
const storeRequestEdit = useRequestEditStore();
const storeLinkCenter = useDataLinkCenter();
const {
showLoader,
@ -62,13 +64,7 @@ const formInformations = reactive<RequestObject>({
rank: null,
});
const formDataAddress = reactive<RequestAddressObject>({
currentZipCode: "",
currentSubDistrictId: "",
currentDistrictId: "",
currentProvinceId: "",
currentAddress: "",
const formDataAddress = reactive<RequestregistrationAddressObject>({
registrationZipCode: "",
registrationSubDistrictId: "",
registrationDistrictId: "",
@ -114,12 +110,6 @@ async function upDateInfomation() {
/** อัพเดตข้อมูลที่อยู่ */
async function upDateAddress() {
if (presentAddress.value === "1") {
formDataAddress.currentAddress = formDataAddress.registrationAddress;
formDataAddress.currentProvinceId = formDataAddress.registrationProvinceId;
formDataAddress.currentDistrictId = formDataAddress.registrationDistrictId;
formDataAddress.currentSubDistrictId =
formDataAddress.registrationSubDistrictId;
formDataAddress.currentZipCode = formDataAddress.registrationZipCode;
storeLinkCenter.OpsAddress.districtCOps =
storeLinkCenter.OpsAddress.districtOps;
storeLinkCenter.OpsAddress.subdistrictCOps =
@ -162,16 +152,40 @@ async function upDateStatus() {
/** อัพเดตข้อมูล */
function onSubmit() {
dialogConfirm($q, async () => {
const body = {
registrationZipCode: formDataAddress.registrationZipCode,
registrationSubDistrictId: formDataAddress.registrationSubDistrictId,
registrationDistrictId: formDataAddress.registrationDistrictId,
registrationProvinceId: formDataAddress.registrationProvinceId,
registrationAddress: formDataAddress.registrationAddress,
bloodGroup: formInformations.bloodGroup,
relationship: formInformations.relationship,
gender: formInformations.gender,
religion: formInformations.religion,
nationality: formInformations.nationality,
ethnicity: formInformations.ethnicity,
birthDate: formInformations.birthDate,
lastName: formInformations.lastName,
firstName: formInformations.firstName,
prefix: formInformations.prefix,
rank: formInformations.rank,
};
showLoader();
await upDateInfomation();
await upDateAddress();
if (count.value == 2) {
await upDateStatus();
success($q, "บันทึกข้อมูลสำเร็จ");
closeDialog();
await props.fetchData?.();
}
hideLoader();
http
.patch(
config.API.requestInformationbyType("myprofile", storeRequestEdit.profileId),
body
)
.then(async (res) => {
await upDateStatus();
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
});
});
}
@ -243,11 +257,6 @@ async function amiRequest() {
formDataAddress.registrationSubDistrictId =
data.value.registrationSubDistrictId;
formDataAddress.registrationZipCode = data.value.registrationZipCode;
formDataAddress.currentAddress = data.value.currentAddress;
formDataAddress.currentProvinceId = data.value.currentProvinceId;
formDataAddress.currentDistrictId = data.value.currentDistrictId;
formDataAddress.currentSubDistrictId = data.value.currentSubDistrictId;
formDataAddress.currentZipCode = data.value.currentZipCode;
}
watch(
@ -272,21 +281,11 @@ watch(
"1",
false
);
storeLinkCenter.fetchDistrict(
formDataAddress.currentProvinceId,
"2",
false
);
storeLinkCenter.fetchSubDistrict(
formDataAddress.registrationDistrictId,
"1",
false
);
storeLinkCenter.fetchSubDistrict(
formDataAddress.currentDistrictId,
"2",
false
);
}
hideLoader();