Merge branch 'develop' of https://github.com/Frappet/bma-ehr-frontend into develop

This commit is contained in:
Kittapath 2023-06-19 16:20:20 +07:00
commit fa9da42e95
3 changed files with 687 additions and 28 deletions

View file

@ -209,7 +209,7 @@ const mixin = useCounterMixin();
const { success, dateText, messageError, showLoader, hideLoader } = mixin;
const store = useManageDataStore();
const { manageData, changeManageColumns, getBlood, dataBlood } = store;
const rows = ref<RequestItemsHistoryObject[]>([]); //list data table
const rows = ref<RequestItemsHistoryObject[]>(dataBlood.data); //list data table
const rowsHistory = ref<RequestItemsHistoryObject[]>([]); //select data history
const rawHistory = ref<RequestItemsHistoryObject[]>([]); //raw data history
const tittleHistory = ref<string>("ประวัติแก้ไขกลุ่มเลือด"); //

View file

@ -205,13 +205,8 @@ const { loaderPage } = dataStore;
const mixin = useCounterMixin();
const { success, dateText, messageError, showLoader, hideLoader } = mixin;
const store = useManageDataStore();
const {
manageData,
changeManageColumns,
getPrefix,
dataPrefix,
} = store;
const rows = ref<RequestItemsHistoryObject[]>(dataPrefix); //list data table
const { manageData, changeManageColumns, getPrefix, dataPrefix } = store;
const rows = ref<RequestItemsHistoryObject[]>(dataPrefix.data); //list data table
const rowsHistory = ref<RequestItemsHistoryObject[]>([]); //select data history
const rawHistory = ref<RequestItemsHistoryObject[]>([]); //raw data history
const tittleHistory = ref<string>("ประวัติแก้ไขคำนำหน้า"); //

View file

@ -5,12 +5,12 @@ import http from "@/plugins/http";
import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import type { RequestItemsHistoryObject } from "@/modules/01_metadata/interface/request/person/Prefix";
import type { RequestItemsHistoryObject as bloodResponse } from "@/modules/01_metadata/interface/request/person/Blood";
import type { RequestItemsHistoryObject as genderResponse } from "@/modules/01_metadata/interface/request/person/Gender";
import type { RequestItemsHistoryObject as religionResponse } from "@/modules/01_metadata/interface/request/person/Religion";
import type { RequestItemsHistoryObject as relationshipResponse } from "@/modules/01_metadata/interface/request/person/Relationship";
import type { RequestItemsHistoryObject as educationResponse } from "@/modules/01_metadata/interface/request/person/Education";
import type { RequestItemsHistoryObject as provinceResponse } from "@/modules/01_metadata/interface/request/person/Province";
import type { RequestItemsHistoryObject as RequestItemsBlood } from "@/modules/01_metadata/interface/request/person/Blood";
import type { RequestItemsHistoryObject as RequestItemsGender } from "@/modules/01_metadata/interface/request/person/Gender";
import type { RequestItemsHistoryObject as RequestItemsReligion } from "@/modules/01_metadata/interface/request/person/Religion";
import type { RequestItemsHistoryObject as RequestItemsRelationship } from "@/modules/01_metadata/interface/request/person/Relationship";
import type { RequestItemsHistoryObject as RequestItemsEducation } from "@/modules/01_metadata/interface/request/person/Education";
import type { RequestItemsHistoryObject as RequestItemsProvince } from "@/modules/01_metadata/interface/request/person/Province";
import type { RequestItemsHistoryObject as InsigniaResponse } from "@/modules/01_metadata/interface/request/insignia/Insignia";
import type { RequestItemsHistoryObject as InsigniaTypeResponse } from "@/modules/01_metadata/interface/request/insignia/InsigniaType";
@ -42,20 +42,96 @@ const mixin = useCounterMixin();
const { success, messageError, showLoader, hideLoader } = mixin;
export const useManageDataStore = defineStore("manage", () => {
const dataPrefix = ref<RequestItemsHistoryObject[]>([]); //list data table
const draftPrefix = ref<RequestItemsHistoryObject[]>([]); //list data table
const dataBlood = ref<bloodResponse[]>([]); //list data table
const draftBlood = ref<bloodResponse[]>([]); //list data table
const dataGender = ref<genderResponse[]>([]); //list data table
const draftGender = ref<genderResponse[]>([]); //list data table
const dataReligion = ref<religionResponse[]>([]); //list data table
const draftReligion = ref<religionResponse[]>([]); //list data table
const dataRelationship = ref<relationshipResponse[]>([]); //list data table
const draftRelationship = ref<relationshipResponse[]>([]); //list data table
const dataEducation = ref<educationResponse[]>([]); //list data table
const draftEducation = ref<educationResponse[]>([]); //list data table
const dataProvince = ref<provinceResponse[]>([]); //list data table
const draftProvince = ref<provinceResponse[]>([]); //list data table
const dataPrefix = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftPrefix = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataBlood = ref<{
data: RequestItemsBlood[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftBlood = ref<{
data: RequestItemsBlood[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataGender = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftGender = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataReligion = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftReligion = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataRelationship = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftRelationship = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataEducation = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftEducation = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataProvince = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftProvince = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataDistrict = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftDistrict = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataSubDistrict = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const draftSubDistrict = ref<{
data: RequestItemsHistoryObject[];
idversion: string;
version: string;
}>({ data: [], idversion: "", version: "published" }); //list data table
const dataInsignia = ref<InsigniaResponse[]>([]); //list data table
const draftInsignia = ref<InsigniaResponse[]>([]); //list data table
@ -116,6 +192,8 @@ export const useManageDataStore = defineStore("manage", () => {
const storeIdVersion = ref<string>(""); //id data ใน mongodb
const storeVersion = ref<string>("published"); //รายการข้อมูลล่าสุดได้เผยแพร่หรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
const storeIdVersionPrefix = ref<string>(""); //id data ใน mongodb
const storeVersionPrefix = ref<string>("published"); //รายการข้อมูลล่าสุดได้เผยแพร่หรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
interface manage {
link: number;
person: {
@ -341,10 +419,216 @@ export const useManageDataStore = defineStore("manage", () => {
}
}
const getBlood = async (
selector: boolean = false,
newFetch: boolean = false
) => {
if (dataBlood.value.data.length === 0) {
await fetchBlood(true, selector);
return draftBlood.value;
} else {
if (newFetch) {
await fetchBlood(true, selector);
return draftBlood.value;
} else {
// เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
if (
JSON.stringify(dataBlood.value.data) ==
JSON.stringify(draftBlood.value.data)
) {
return draftBlood.value;
} else {
await fetchBlood(false, selector);
return draftBlood.value;
}
}
}
};
const getGender = async (
selector: boolean = false,
newFetch: boolean = false
) => {
if (dataGender.value.data.length === 0) {
await fetchGender(true, selector);
return draftGender.value;
} else {
if (newFetch) {
await fetchGender(true, selector);
return draftGender.value;
} else {
// เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
if (
JSON.stringify(dataGender.value.data) ==
JSON.stringify(draftGender.value.data)
) {
return draftGender.value;
} else {
await fetchGender(false, selector);
return draftGender.value;
}
}
}
};
const getReligion = async (
selector: boolean = false,
newFetch: boolean = false
) => {
if (dataReligion.value.data.length === 0) {
await fetchReligion(true, selector);
return draftReligion.value;
} else {
if (newFetch) {
await fetchReligion(true, selector);
return draftReligion.value;
} else {
// เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
if (
JSON.stringify(dataReligion.value.data) ==
JSON.stringify(draftReligion.value.data)
) {
return draftReligion.value;
} else {
await fetchReligion(false, selector);
return draftReligion.value;
}
}
}
};
const getRelationship = async (
selector: boolean = false,
newFetch: boolean = false
) => {
if (dataRelationship.value.data.length === 0) {
await fetchRelationship(true, selector);
return draftRelationship.value;
} else {
if (newFetch) {
await fetchRelationship(true, selector);
return draftRelationship.value;
} else {
// เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
if (
JSON.stringify(dataRelationship.value.data) ==
JSON.stringify(draftRelationship.value.data)
) {
return draftRelationship.value;
} else {
await fetchRelationship(false, selector);
return draftRelationship.value;
}
}
}
};
const getEducation = async (
selector: boolean = false,
newFetch: boolean = false
) => {
if (dataEducation.value.data.length === 0) {
await fetchEducation(true, selector);
return draftEducation.value;
} else {
if (newFetch) {
await fetchEducation(true, selector);
return draftEducation.value;
} else {
// เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
if (
JSON.stringify(dataEducation.value.data) ==
JSON.stringify(draftEducation.value.data)
) {
return draftEducation.value;
} else {
await fetchEducation(false, selector);
return draftEducation.value;
}
}
}
};
const getProvince = async (
selector: boolean = false,
newFetch: boolean = false
) => {
if (dataProvince.value.data.length === 0) {
await fetchProvince(true, selector);
return draftProvince.value;
} else {
if (newFetch) {
await fetchProvince(true, selector);
return draftProvince.value;
} else {
// เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
if (
JSON.stringify(dataProvince.value.data) ==
JSON.stringify(draftProvince.value.data)
) {
return draftProvince.value;
} else {
await fetchProvince(false, selector);
return draftProvince.value;
}
}
}
};
// const getDistrict = async (
// selector: boolean = false,
// newFetch: boolean = false
// ) => {
// if (dataDistrict.value.data.length === 0) {
// // await fetchDistrict(true, selector);
// return draftDistrict.value;
// } else {
// if (newFetch) {
// // await fetchDistrict(true, selector);
// return draftDistrict.value;
// } else {
// // เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
// if (
// JSON.stringify(dataDistrict.value.data) ==
// JSON.stringify(draftDistrict.value.data)
// ) {
// return draftDistrict.value;
// } else {
// // await fetchDistrict(false, selector);
// return draftDistrict.value;
// }
// }
// }
// };
// const getSubDistrict = async (
// selector: boolean = false,
// newFetch: boolean = false
// ) => {
// if (dataSubDistrict.value.data.length === 0) {
// // await fetchSubDistrict(true, selector);
// return draftSubDistrict.value;
// } else {
// if (newFetch) {
// // await fetchSubDistrict(true, selector);
// return draftSubDistrict.value;
// } else {
// // เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
// if (
// JSON.stringify(dataSubDistrict.value.data) ==
// JSON.stringify(draftSubDistrict.value.data)
// ) {
// return draftSubDistrict.value;
// } else {
// // await fetchSubDistrict(false, selector);
// return draftSubDistrict.value;
// }
// }
// }
// };
const getPrefix = async (
selector: boolean = false,
newFetch: boolean = false
) => {
<<<<<<< HEAD
if (dataPrefix.value.data.length === 0) {
await fetchPrefix(true, selector);
return draftPrefix.value;
=======
let apiPrefix = "";
if (selector) {
apiPrefix = config.API.prefix;
@ -363,6 +647,7 @@ export const useManageDataStore = defineStore("manage", () => {
version: storeVersion.value,
idversion: storeIdVersion.value,
};
>>>>>>> e1a25d437df67812ecdc71d4ae29f9b555910106
} else {
return {
data: draftPrefix.value,
@ -530,6 +815,21 @@ export const useManageDataStore = defineStore("manage", () => {
};
} else {
if (newFetch) {
<<<<<<< HEAD
await fetchPrefix(true, selector);
return draftPrefix.value;
} else {
// เทียบ กรณี fetch data selector ไม่เหมือนกัน หรือ กรณี ดราฟ ดาต้า
if (
JSON.stringify(dataPrefix.value.data) ==
JSON.stringify(draftPrefix.value.data)
) {
return draftPrefix.value;
} else {
await fetchPrefix(false, selector);
return draftPrefix.value;
}
=======
await fetchProvince(true, selector);
return {
data: draftProvince.value,
@ -542,6 +842,7 @@ export const useManageDataStore = defineStore("manage", () => {
version: storeVersion.value,
idversion: storeIdVersion.value,
};
>>>>>>> e1a25d437df67812ecdc71d4ae29f9b555910106
}
}
};
@ -834,6 +1135,369 @@ export const useManageDataStore = defineStore("manage", () => {
};
}
}
await http
.get(apiPrefix)
.then((res) => {
const data = res.data.result;
let rows: RequestItemsHistoryObject[] = [];
let version: string = "";
let id: string = "";
if (selector) {
version = "";
id = "";
data.map((e: RequestItemsHistoryObject) => {
rows.push({
...e,
});
});
} else {
version = data.version; //ตัวแปรที่บอกว่าข้อมูลเผยแพร่ไปหรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
id = data.id; //เลข id ใน mongodb
data.items.map((e: RequestItemsHistoryObject) => {
rows.push({
...e,
});
});
}
draftPrefix.value = { idversion: id, version: version, data: rows };
if (loader) {
dataPrefix.value = { idversion: id, version: version, data: rows };
}
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
if (loader) {
hideLoader();
}
});
};
const fetchBlood = async (loader: boolean, selector: boolean) => {
let apiBlood = "";
if (loader) {
showLoader();
}
if (selector) {
apiBlood = config.API.bloodGroup;
} else {
apiBlood = config.API.listBloodGroupHistory;
}
await http
.get(apiBlood)
.then((res) => {
const data = res.data.result;
let rows: RequestItemsBlood[] = [];
let version: string = "";
let id: string = "";
if (selector) {
version = "";
id = "";
data.map((e: RequestItemsBlood) => {
rows.push({
...e,
});
});
} else {
version = data.version; //ตัวแปรที่บอกว่าข้อมูลเผยแพร่ไปหรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
id = data.id; //เลข id ใน mongodb
data.items.map((e: RequestItemsBlood) => {
rows.push({
...e,
});
});
}
draftBlood.value = { idversion: id, version: version, data: rows };
if (loader) {
dataBlood.value = { idversion: id, version: version, data: rows };
}
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
if (loader) {
hideLoader();
}
});
};
const fetchGender = async (loader: boolean, selector: boolean) => {
let apiGender = "";
if (loader) {
showLoader();
}
if (selector) {
apiGender = config.API.gender;
} else {
apiGender = config.API.listGenderHistory;
}
await http
.get(apiGender)
.then((res) => {
const data = res.data.result;
let rows: RequestItemsGender[] = [];
let version: string = "";
let id: string = "";
if (selector) {
version = "";
id = "";
data.map((e: RequestItemsGender) => {
rows.push({
...e,
});
});
} else {
version = data.version; //ตัวแปรที่บอกว่าข้อมูลเผยแพร่ไปหรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
id = data.id; //เลข id ใน mongodb
data.items.map((e: RequestItemsGender) => {
rows.push({
...e,
});
});
}
draftGender.value = { idversion: id, version: version, data: rows };
if (loader) {
dataGender.value = { idversion: id, version: version, data: rows };
}
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
if (loader) {
hideLoader();
}
});
};
const fetchReligion = async (loader: boolean, selector: boolean) => {
let apiReligion = "";
if (loader) {
showLoader();
}
if (selector) {
apiReligion = config.API.religion;
} else {
apiReligion = config.API.listReligionHistory;
}
await http
.get(apiReligion)
.then((res) => {
const data = res.data.result;
let rows: RequestItemsReligion[] = [];
let version: string = "";
let id: string = "";
if (selector) {
version = "";
id = "";
data.map((e: RequestItemsReligion) => {
rows.push({
...e,
});
});
} else {
version = data.version; //ตัวแปรที่บอกว่าข้อมูลเผยแพร่ไปหรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
id = data.id; //เลข id ใน mongodb
data.items.map((e: RequestItemsReligion) => {
rows.push({
...e,
});
});
}
draftReligion.value = { idversion: id, version: version, data: rows };
if (loader) {
dataReligion.value = { idversion: id, version: version, data: rows };
}
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
if (loader) {
hideLoader();
}
});
};
const fetchRelationship = async (loader: boolean, selector: boolean) => {
let apiRelationship = "";
if (loader) {
showLoader();
}
if (selector) {
apiRelationship = config.API.relationship;
} else {
apiRelationship = config.API.listRelationshipHistory;
}
await http
.get(apiRelationship)
.then((res) => {
const data = res.data.result;
let rows: RequestItemsRelationship[] = [];
let version: string = "";
let id: string = "";
if (selector) {
version = "";
id = "";
data.map((e: RequestItemsRelationship) => {
rows.push({
...e,
});
});
} else {
version = data.version; //ตัวแปรที่บอกว่าข้อมูลเผยแพร่ไปหรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
id = data.id; //เลข id ใน mongodb
data.items.map((e: RequestItemsRelationship) => {
rows.push({
...e,
});
});
}
draftRelationship.value = {
idversion: id,
version: version,
data: rows,
};
if (loader) {
dataRelationship.value = {
idversion: id,
version: version,
data: rows,
};
}
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
if (loader) {
hideLoader();
}
});
};
const fetchEducation = async (loader: boolean, selector: boolean) => {
let apiEducation = "";
if (loader) {
showLoader();
}
if (selector) {
apiEducation = config.API.educationLevel;
} else {
apiEducation = config.API.listEducationLevelHistory;
}
await http
.get(apiEducation)
.then((res) => {
const data = res.data.result;
let rows: RequestItemsEducation[] = [];
let version: string = "";
let id: string = "";
if (selector) {
version = "";
id = "";
data.map((e: RequestItemsEducation) => {
rows.push({
...e,
});
});
} else {
version = data.version; //ตัวแปรที่บอกว่าข้อมูลเผยแพร่ไปหรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
id = data.id; //เลข id ใน mongodb
data.items.map((e: RequestItemsEducation) => {
rows.push({
...e,
});
});
}
draftEducation.value = {
idversion: id,
version: version,
data: rows,
};
if (loader) {
dataEducation.value = {
idversion: id,
version: version,
data: rows,
};
}
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
if (loader) {
hideLoader();
}
});
};
const fetchProvince = async (loader: boolean, selector: boolean) => {
let apiProvince = "";
if (loader) {
showLoader();
}
if (selector) {
apiProvince = config.API.province;
} else {
apiProvince = config.API.listProvinceHistory;
}
await http
.get(apiProvince)
.then((res) => {
const data = res.data.result;
let rows: RequestItemsProvince[] = [];
let version: string = "";
let id: string = "";
if (selector) {
version = "";
id = "";
data.map((e: RequestItemsProvince) => {
rows.push({
...e,
});
});
} else {
version = data.version; //ตัวแปรที่บอกว่าข้อมูลเผยแพร่ไปหรือยัง published=เผยแพร่แล้ว draft=ยังไม่เผยแพร่
id = data.id; //เลข id ใน mongodb
data.items.map((e: RequestItemsProvince) => {
rows.push({
...e,
});
});
}
draftProvince.value = {
idversion: id,
version: version,
data: rows,
};
if (loader) {
dataProvince.value = {
idversion: id,
version: version,
data: rows,
};
}
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
if (loader) {
hideLoader();
}
});
};
const getPositionExecutiveSide = async (