diff --git a/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/Forms/ConfirmRequestForm.jsx b/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/Forms/ConfirmRequestForm.jsx index 3f090fb..fdfabd7 100644 --- a/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/Forms/ConfirmRequestForm.jsx +++ b/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/Forms/ConfirmRequestForm.jsx @@ -1,10 +1,18 @@ +import { PRIVACY_ADMIN_ACTION_API } from "@/core/utils/routes"; +import useRequest from "@/lib/hooks/useRequest"; import { Box, Button, Checkbox, DialogActions, FormControlLabel, TextField } from "@mui/material"; import { useState } from "react"; import { Controller, useForm } from "react-hook-form"; -export default function ConfirmRequestForm({ mutate, onClose }) { +export default function ConfirmRequestForm({ mutate, onClose, rowId }) { const [isSubmitting, setIsSubmitting] = useState(false); - const { control, handleSubmit } = useForm({ + const request = useRequest({ notificationSuccess: true, notificationFailed: true }); + + const { + control, + handleSubmit, + formState: { errors }, + } = useForm({ defaultValues: { expert_description: "", need_payment: false, @@ -13,10 +21,25 @@ export default function ConfirmRequestForm({ mutate, onClose }) { }); const onSubmit = (data) => { - console.log(data); + const confirmType = data.needsAccessRoad ? "need_road_access" : "without_road_access"; + const url = `${PRIVACY_ADMIN_ACTION_API}/${confirmType}/${rowId}`; + const body = { + expert_description: data.expert_description, + need_payment: data.need_payment ? 1 : 0, + }; + setIsSubmitting(true); - mutate(); - onClose(); + try { + request(url, "post", { + data: body, + }).then(() => { + mutate(); + onClose(); + }); + } catch (error) { + } finally { + setIsSubmitting(false); + } }; return ( @@ -24,8 +47,20 @@ export default function ConfirmRequestForm({ mutate, onClose }) { } + rules={{ required: "توضیحات الزامی است" }} + render={({ field }) => ( + + )} /> + )} /> + ( } - label="نیاز به پرداخت وجه خزانه" + label="نیاز به راه دسترسی" /> )} /> diff --git a/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/RenderActionForm.jsx b/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/RenderActionForm.jsx index 43f5061..7888e45 100644 --- a/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/RenderActionForm.jsx +++ b/src/components/dashboard/inquiryPrivacy/privacy-office/RowActions/RenderActionForm.jsx @@ -18,7 +18,7 @@ export default function RenderActionForm({ type, rowData, mutate, onClose }) { case "reject_request_5": return ; case "confirm_request_2": - return ; + return ; case "confirm_request_5": return ; case "confirm_request_13":