feat:update all page
This commit is contained in:
@@ -29,7 +29,7 @@ import consultationServices, {
|
||||
ConsultationResponse,
|
||||
} from "@/services/consultationServices";
|
||||
|
||||
import { QUERY_KEY } from "@/constant/config/enum";
|
||||
import { QUERY_KEY, TYPE_STATUS } from "@/constant/config/enum";
|
||||
|
||||
import { toastWarn } from "@/common/funcs/toast";
|
||||
|
||||
@@ -111,7 +111,12 @@ const CreatePrescription = () => {
|
||||
},
|
||||
});
|
||||
|
||||
const examinationSessionOptions = examinationSessionQuery.data?.items || [];
|
||||
const examinationSessionOptions =
|
||||
examinationSessionQuery.data?.items?.filter(
|
||||
(item) =>
|
||||
item.status === TYPE_STATUS.Draft ||
|
||||
item.status === TYPE_STATUS.InProgress,
|
||||
) || [];
|
||||
|
||||
/* =========================
|
||||
CREATE MUTATION
|
||||
@@ -119,11 +124,17 @@ const CreatePrescription = () => {
|
||||
|
||||
const createPrescriptionMutation = useMutation({
|
||||
mutationFn: async () => {
|
||||
/**
|
||||
* CREATE FORMDATA
|
||||
*/
|
||||
const formData = new FormData();
|
||||
|
||||
formData.append("examinationSessionId", form.examinationSessionId);
|
||||
/**
|
||||
* BASIC INFO
|
||||
*/
|
||||
formData.append("ExaminationSessionId", form.examinationSessionId);
|
||||
|
||||
formData.append("notes", form.notes);
|
||||
formData.append("Notes", form.notes);
|
||||
|
||||
/**
|
||||
* FILE
|
||||
@@ -133,22 +144,17 @@ const CreatePrescription = () => {
|
||||
}
|
||||
|
||||
/**
|
||||
* MEDICINE ITEMS
|
||||
* ITEMS
|
||||
* BACKEND EXPECT:
|
||||
* Items = JSON.stringify([...])
|
||||
*/
|
||||
form.items
|
||||
.filter((x) => x.medicineName.trim() !== "")
|
||||
.forEach((item, index) => {
|
||||
formData.append(`items[${index}].medicineName`, item.medicineName);
|
||||
const validItems = form.items.filter((x) => x.medicineName.trim() !== "");
|
||||
|
||||
formData.append(`items[${index}].dosage`, item.dosage);
|
||||
|
||||
formData.append(`items[${index}].frequency`, item.frequency);
|
||||
|
||||
formData.append(`items[${index}].duration`, item.duration);
|
||||
|
||||
formData.append(`items[${index}].instructions`, item.instructions);
|
||||
});
|
||||
formData.append("Items", JSON.stringify(validItems));
|
||||
|
||||
/**
|
||||
* API
|
||||
*/
|
||||
return await httpRequest({
|
||||
showMessageFailed: true,
|
||||
|
||||
@@ -237,6 +243,10 @@ const CreatePrescription = () => {
|
||||
========================= */
|
||||
|
||||
const handleSubmit = () => {
|
||||
/**
|
||||
* VALIDATE
|
||||
*/
|
||||
|
||||
if (!form.examinationSessionId) {
|
||||
return toastWarn({
|
||||
msg: "Vui lòng chọn phiên khám",
|
||||
@@ -249,6 +259,17 @@ const CreatePrescription = () => {
|
||||
});
|
||||
}
|
||||
|
||||
const validMedicine = form.items.some((x) => x.medicineName.trim() !== "");
|
||||
|
||||
if (!validMedicine) {
|
||||
return toastWarn({
|
||||
msg: "Vui lòng nhập ít nhất 1 loại thuốc",
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* MUTATE
|
||||
*/
|
||||
createPrescriptionMutation.mutate();
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user