This commit is contained in:
Majd_dk 2025-01-22 21:25:21 +03:00
parent 2335da5230
commit f9d87ebb0f
7 changed files with 40 additions and 8 deletions

View File

@ -1,4 +1,6 @@
import React from 'react'
export const translateOptions = (options: any, t: any) => {
if(React.isValidElement(options?.[0].name))return options;
return options?.map((opt: any) => ({
...opt,
label: t(`${opt?.label}`),

View File

@ -18,6 +18,7 @@ const AddModel: React.FC = () => {
handleSubmit={handleSubmit}
getInitialValues={getInitialValues(objectToEdit)}
getValidationSchema={getValidationSchema}
canClearObjectToEdit = {false}
>
<ModelBody />
</LayoutModel>

View File

@ -20,6 +20,7 @@ interface LayoutModalProps {
ModelClassName?: string;
width?: string;
isLoading?: boolean;
canClearObjectToEdit?:boolean
}
const LayoutModel = ({
@ -34,10 +35,11 @@ const LayoutModel = ({
ModelClassName,
width = "800px",
isLoading = false,
canClearObjectToEdit =true
}: LayoutModalProps) => {
const { isOpen, setIsOpen } = useModalState((state) => state);
const { setObjectToEdit } = useObjectToEdit();
const formik = useFormikContext();
const formik = useFormikContext();
useEffect(() => {
if (isAddModal && status === QueryStatusEnum.SUCCESS) {
setIsOpen("isSuccess");
@ -51,8 +53,9 @@ const LayoutModel = ({
}, [setIsOpen, status]);
const handleCancel = () => {
console.log(true)
setIsOpen("");
setObjectToEdit({});
canClearObjectToEdit && setObjectToEdit({});
formik.resetForm();
};

View File

@ -20,9 +20,14 @@ const Form = ({ handleCloseModel = () => {} }: ModalBodyProps) => {
const student_info = objectToEdit?.data?.data;
const status = objectToEdit?.data?.status;
const PackagesInfo = student_info?.packages.map((info: any) => ({
const PackagesInfo = student_info?.packages?.map((info: any) => ({
id: info?.id,
name: info.name + " " + `( ${info?.original_price} )`,
name:(
<div>
{info.name } ( <span className={`${info?.coupon_id !== null && 'removed_sales'}`}>{info?.original_price.toLocaleString("en-US")}</span> )
{info?.coupon_id !== null && <span className="new_sales"> {info?.final_price.toLocaleString("en-US")}</span>}
</div>
)
}));
return (

View File

@ -20,6 +20,7 @@ const Form = ({ handleCloseModel = () => {} }: ModalBodyProps) => {
const queryClient = useQueryClient();
const { t } = useTranslation();
const { mutate, status, error, reset }: any = useAddSales();
const coupon_id_object = objectToEdit?.data?.data?.packages.find(
(e: any) => e.id === values?.package_id,
@ -27,7 +28,12 @@ const Form = ({ handleCloseModel = () => {} }: ModalBodyProps) => {
const student_info = objectToEdit?.data?.data;
const PackagesInfo = student_info?.packages.map((info: any) => ({
id: info?.id,
name: info.name + " " + `( ${info?.original_price} )`,
name:(
<div>
{info.name } ( <span className={`${info?.coupon_id !== null && 'removed_sales disapled'}`}>{info?.original_price.toLocaleString("en-US")}</span> )
{info?.coupon_id !== null && <span className="new_sales disapled"> {info?.final_price.toLocaleString("en-US")}</span>}
</div>
),
}));
const handleNext = () => {

View File

@ -19,7 +19,7 @@ const Form = ({ handleCloseModel = () => {} }: ModalBodyProps) => {
const { values, setFieldValue } = useFormikContext<any>();
const phoneNumber: number = values?.phone_number;
const { data, status, isSuccess } = useGetStudentByPhone(
const { data, status, isSuccess,isError } = useGetStudentByPhone(
{
phone_number: phoneNumber,
},
@ -36,12 +36,13 @@ const Form = ({ handleCloseModel = () => {} }: ModalBodyProps) => {
};
useEffect(() => {
if (isSuccess) {
if (isSuccess && data?.data) {
setTriggerApi(false);
setObjectToEdit({ data });
console.log(isSuccess)
setFieldValue("currentModalIndex", values?.currentModalIndex + 1);
}
}, [isSuccess]);
}, [isSuccess,isError,status]);
return (
values?.currentModalIndex == 0 && (

View File

@ -318,3 +318,17 @@ button:disabled {
height: 40px;
}
}
.removed_sales{
color: #dc2626;
text-decoration: line-through;
&.disapled{
color: #dc26268b;
}
}
.new_sales{
color:green;
&.disapled{
color:rgba(0, 128, 0, 0.499);
}
}