diff --git a/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/TaskDetail/DetailDialog.jsx b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/TaskDetail/DetailDialog.jsx
new file mode 100644
index 0000000..aff1058
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/TaskDetail/DetailDialog.jsx
@@ -0,0 +1,75 @@
+"use client";
+
+import { Dialog, DialogContent } from "@mui/material";
+import { object, string } from "yup";
+import useRequest from "@/lib/hooks/useRequest";
+import { useForm } from "react-hook-form";
+import { yupResolver } from "@hookform/resolvers/yup";
+import StyledForm from "@/core/components/StyledForm";
+import ApplicantRequestDetail from "@/core/components/ApplicantRequestDetail";
+
+const fakeData = {
+ id: 1,
+ shomareh_darkhast: "2124",
+ ostan: "ostan",
+ shahr: "shahr",
+ shahrestan: "shahrestan",
+ bakhsh: "bakhsh",
+ roosta: "roosta",
+ tarikh_darkhast: "tarikh_darkhast",
+ sazman: "sazman",
+ masahat_zamin: "masahat_zamin",
+ masahat_tarh: "masahat_tarh",
+ gorooh_tarh: "gorooh_tarh",
+ onvane_tarh: "onvane_tarh",
+ address: "کرج - فلان جا - جنب پاساژ - نزدیک اونجا - اونور خیابون - زیر رو گذر - روی زیر گذر",
+ file_mosavab: "file",
+ polygon: [
+ [51.515, -0.09],
+ [51.52, -0.1],
+ [51.52, -0.12],
+ ],
+};
+
+const validationSchema = object({
+ description: string().required("وارد کردن توضیحات الزامیست!"),
+});
+
+const DetailDialog = ({ taskModal, setTaskModal, rowId, mutate }) => {
+ const requestServer = useRequest({ auth: true });
+ const defaultValues = {
+ description: "",
+ };
+ const handleClose = () => {
+ setTaskModal(false);
+ };
+
+ const {
+ register,
+ handleSubmit,
+ formState: { isSubmitting, errors, touchedFields },
+ } = useForm({ defaultValues, resolver: yupResolver(validationSchema), mode: "onBlur" });
+
+ const onSubmit = async (data) => {
+ const formData = new FormData();
+ formData.append("description", data.description);
+ requestServer(`api-for-send-to-harim/${rowId}`, "post", {
+ data: formData,
+ })
+ .then(() => {
+ handleClose();
+ mutate();
+ })
+ .catch(() => {});
+ };
+ return (
+
+
+
+ );
+};
+export default DetailDialog;
diff --git a/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/TaskDetail/index.jsx b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/TaskDetail/index.jsx
new file mode 100644
index 0000000..24f6b31
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/TaskDetail/index.jsx
@@ -0,0 +1,26 @@
+"use client";
+
+import { IconButton, Tooltip } from "@mui/material";
+import AssignmentIcon from "@mui/icons-material/Assignment";
+import DetailDialog from "./DetailDialog";
+import { useState } from "react";
+
+const TaskDetail = ({ rowId, mutate }) => {
+ const [taskModal, setTaskModal] = useState(false);
+
+ const openDetailDialog = () => {
+ setTaskModal(true);
+ };
+
+ return (
+ <>
+
+
+
+
+
+
+ >
+ );
+};
+export default TaskDetail;
diff --git a/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/index.jsx b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/index.jsx
new file mode 100644
index 0000000..c2b1970
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/RowActions/index.jsx
@@ -0,0 +1,11 @@
+import TaskDetail from "./TaskDetail";
+import { Box } from "@mui/material";
+
+const RowActions = ({ row, mutate }) => {
+ return (
+
+
+
+ );
+};
+export default RowActions;
diff --git a/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/TaskList.jsx b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/TaskList.jsx
index cff837e..82a4786 100644
--- a/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/TaskList.jsx
+++ b/src/components/dashboard/inquiryPrivacy/assistant/zaminGov/TaskList.jsx
@@ -1,9 +1,9 @@
"use client";
import { useMemo } from "react";
-import { Box, IconButton, Tooltip } from "@mui/material";
+import { Box } from "@mui/material";
import DataTableWithAuth from "@/core/components/DataTableWithAuth";
-import AssignmentIcon from "@mui/icons-material/Assignment";
+import RowActions from "./RowActions";
const TaskList = () => {
const columns = useMemo(
@@ -112,13 +112,7 @@ const TaskList = () => {
table_name={"assistantZaminGovList"}
enableRowActions
positionActionsColumn={"last"}
- renderRowActions={({ row, table }) => (
-
- console.log("next part")}>
-
-
-
- )}
+ renderRowActions={({ row }) => }
/>
>
diff --git a/src/components/dashboard/inquiryPrivacy/cityAdmin/zaminGov/RowActions/Refer/index.jsx b/src/components/dashboard/inquiryPrivacy/cityAdmin/zaminGov/RowActions/Refer/index.jsx
index 608d944..8e77435 100644
--- a/src/components/dashboard/inquiryPrivacy/cityAdmin/zaminGov/RowActions/Refer/index.jsx
+++ b/src/components/dashboard/inquiryPrivacy/cityAdmin/zaminGov/RowActions/Refer/index.jsx
@@ -1,7 +1,7 @@
import { Dialog, DialogTitle, IconButton, Stack, Tooltip } from "@mui/material";
import ReplyIcon from "@mui/icons-material/Reply";
import DialogTransition from "@/core/components/DialogTransition";
-import ReferFormContext from "@/components/dashboard/inquiryPrivacy/cityAdmin/zaminGov/RowActions/Refer/ReferFormContext";
+import ReferFormContext from "./ReferFormContext";
import { useState } from "react";
const ReferForm = ({ rowId, mutate }) => {
diff --git a/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/TaskDetail/DetailDialog.jsx b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/TaskDetail/DetailDialog.jsx
new file mode 100644
index 0000000..aff1058
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/TaskDetail/DetailDialog.jsx
@@ -0,0 +1,75 @@
+"use client";
+
+import { Dialog, DialogContent } from "@mui/material";
+import { object, string } from "yup";
+import useRequest from "@/lib/hooks/useRequest";
+import { useForm } from "react-hook-form";
+import { yupResolver } from "@hookform/resolvers/yup";
+import StyledForm from "@/core/components/StyledForm";
+import ApplicantRequestDetail from "@/core/components/ApplicantRequestDetail";
+
+const fakeData = {
+ id: 1,
+ shomareh_darkhast: "2124",
+ ostan: "ostan",
+ shahr: "shahr",
+ shahrestan: "shahrestan",
+ bakhsh: "bakhsh",
+ roosta: "roosta",
+ tarikh_darkhast: "tarikh_darkhast",
+ sazman: "sazman",
+ masahat_zamin: "masahat_zamin",
+ masahat_tarh: "masahat_tarh",
+ gorooh_tarh: "gorooh_tarh",
+ onvane_tarh: "onvane_tarh",
+ address: "کرج - فلان جا - جنب پاساژ - نزدیک اونجا - اونور خیابون - زیر رو گذر - روی زیر گذر",
+ file_mosavab: "file",
+ polygon: [
+ [51.515, -0.09],
+ [51.52, -0.1],
+ [51.52, -0.12],
+ ],
+};
+
+const validationSchema = object({
+ description: string().required("وارد کردن توضیحات الزامیست!"),
+});
+
+const DetailDialog = ({ taskModal, setTaskModal, rowId, mutate }) => {
+ const requestServer = useRequest({ auth: true });
+ const defaultValues = {
+ description: "",
+ };
+ const handleClose = () => {
+ setTaskModal(false);
+ };
+
+ const {
+ register,
+ handleSubmit,
+ formState: { isSubmitting, errors, touchedFields },
+ } = useForm({ defaultValues, resolver: yupResolver(validationSchema), mode: "onBlur" });
+
+ const onSubmit = async (data) => {
+ const formData = new FormData();
+ formData.append("description", data.description);
+ requestServer(`api-for-send-to-harim/${rowId}`, "post", {
+ data: formData,
+ })
+ .then(() => {
+ handleClose();
+ mutate();
+ })
+ .catch(() => {});
+ };
+ return (
+
+
+
+ );
+};
+export default DetailDialog;
diff --git a/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/TaskDetail/index.jsx b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/TaskDetail/index.jsx
new file mode 100644
index 0000000..24f6b31
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/TaskDetail/index.jsx
@@ -0,0 +1,26 @@
+"use client";
+
+import { IconButton, Tooltip } from "@mui/material";
+import AssignmentIcon from "@mui/icons-material/Assignment";
+import DetailDialog from "./DetailDialog";
+import { useState } from "react";
+
+const TaskDetail = ({ rowId, mutate }) => {
+ const [taskModal, setTaskModal] = useState(false);
+
+ const openDetailDialog = () => {
+ setTaskModal(true);
+ };
+
+ return (
+ <>
+
+
+
+
+
+
+ >
+ );
+};
+export default TaskDetail;
diff --git a/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/index.jsx b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/index.jsx
new file mode 100644
index 0000000..c2b1970
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/RowActions/index.jsx
@@ -0,0 +1,11 @@
+import TaskDetail from "./TaskDetail";
+import { Box } from "@mui/material";
+
+const RowActions = ({ row, mutate }) => {
+ return (
+
+
+
+ );
+};
+export default RowActions;
diff --git a/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/TaskList.jsx b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/TaskList.jsx
index c52ff33..396cffc 100644
--- a/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/TaskList.jsx
+++ b/src/components/dashboard/inquiryPrivacy/generalManager/zaminGov/TaskList.jsx
@@ -1,9 +1,9 @@
"use client";
import { useMemo } from "react";
-import { Box, IconButton, Tooltip } from "@mui/material";
+import { Box } from "@mui/material";
import DataTableWithAuth from "@/core/components/DataTableWithAuth";
-import AssignmentIcon from "@mui/icons-material/Assignment";
+import RowActions from "./RowActions";
const TaskList = () => {
const columns = useMemo(
@@ -112,13 +112,7 @@ const TaskList = () => {
table_name={"generalManagerZaminGovList"}
enableRowActions
positionActionsColumn={"last"}
- renderRowActions={({ row, table }) => (
-
- console.log("next part")}>
-
-
-
- )}
+ renderRowActions={({ row }) => }
/>
>
diff --git a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/Refer/index.jsx b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/Refer/index.jsx
index cee580a..c3a3012 100644
--- a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/Refer/index.jsx
+++ b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/Refer/index.jsx
@@ -2,7 +2,7 @@ import { Dialog, DialogTitle, IconButton, Stack, Tooltip } from "@mui/material";
import ReplyIcon from "@mui/icons-material/Reply";
import DialogTransition from "@/core/components/DialogTransition";
import { useState } from "react";
-import ReferFormContext from "@/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/Refer/ReferFormContext";
+import ReferFormContext from "./ReferFormContext";
const ReferForm = ({ rowId, mutate }) => {
const [openReferDialog, setOpenReferDialog] = useState(false);
diff --git a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/TaskDetail/DetailDialog.jsx b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/TaskDetail/DetailDialog.jsx
new file mode 100644
index 0000000..aff1058
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/TaskDetail/DetailDialog.jsx
@@ -0,0 +1,75 @@
+"use client";
+
+import { Dialog, DialogContent } from "@mui/material";
+import { object, string } from "yup";
+import useRequest from "@/lib/hooks/useRequest";
+import { useForm } from "react-hook-form";
+import { yupResolver } from "@hookform/resolvers/yup";
+import StyledForm from "@/core/components/StyledForm";
+import ApplicantRequestDetail from "@/core/components/ApplicantRequestDetail";
+
+const fakeData = {
+ id: 1,
+ shomareh_darkhast: "2124",
+ ostan: "ostan",
+ shahr: "shahr",
+ shahrestan: "shahrestan",
+ bakhsh: "bakhsh",
+ roosta: "roosta",
+ tarikh_darkhast: "tarikh_darkhast",
+ sazman: "sazman",
+ masahat_zamin: "masahat_zamin",
+ masahat_tarh: "masahat_tarh",
+ gorooh_tarh: "gorooh_tarh",
+ onvane_tarh: "onvane_tarh",
+ address: "کرج - فلان جا - جنب پاساژ - نزدیک اونجا - اونور خیابون - زیر رو گذر - روی زیر گذر",
+ file_mosavab: "file",
+ polygon: [
+ [51.515, -0.09],
+ [51.52, -0.1],
+ [51.52, -0.12],
+ ],
+};
+
+const validationSchema = object({
+ description: string().required("وارد کردن توضیحات الزامیست!"),
+});
+
+const DetailDialog = ({ taskModal, setTaskModal, rowId, mutate }) => {
+ const requestServer = useRequest({ auth: true });
+ const defaultValues = {
+ description: "",
+ };
+ const handleClose = () => {
+ setTaskModal(false);
+ };
+
+ const {
+ register,
+ handleSubmit,
+ formState: { isSubmitting, errors, touchedFields },
+ } = useForm({ defaultValues, resolver: yupResolver(validationSchema), mode: "onBlur" });
+
+ const onSubmit = async (data) => {
+ const formData = new FormData();
+ formData.append("description", data.description);
+ requestServer(`api-for-send-to-harim/${rowId}`, "post", {
+ data: formData,
+ })
+ .then(() => {
+ handleClose();
+ mutate();
+ })
+ .catch(() => {});
+ };
+ return (
+
+
+
+ );
+};
+export default DetailDialog;
diff --git a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/TaskDetail/index.jsx b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/TaskDetail/index.jsx
new file mode 100644
index 0000000..24f6b31
--- /dev/null
+++ b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/TaskDetail/index.jsx
@@ -0,0 +1,26 @@
+"use client";
+
+import { IconButton, Tooltip } from "@mui/material";
+import AssignmentIcon from "@mui/icons-material/Assignment";
+import DetailDialog from "./DetailDialog";
+import { useState } from "react";
+
+const TaskDetail = ({ rowId, mutate }) => {
+ const [taskModal, setTaskModal] = useState(false);
+
+ const openDetailDialog = () => {
+ setTaskModal(true);
+ };
+
+ return (
+ <>
+
+
+
+
+
+
+ >
+ );
+};
+export default TaskDetail;
diff --git a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/index.jsx b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/index.jsx
index 4e64b09..cd07b61 100644
--- a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/index.jsx
+++ b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/index.jsx
@@ -1,8 +1,13 @@
-import ReferForm from "@/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions/Refer";
+import ReferForm from "./Refer";
+import TaskDetail from "./TaskDetail";
+import { Box } from "@mui/material";
const RowActions = ({ row, mutate }) => {
return (
- //rowId should pass
+
+
+
+
);
};
export default RowActions;
diff --git a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/TaskList.jsx b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/TaskList.jsx
index f057708..2a7e7ec 100644
--- a/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/TaskList.jsx
+++ b/src/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/TaskList.jsx
@@ -1,10 +1,9 @@
"use client";
import { useMemo } from "react";
-import { Box, IconButton, Tooltip } from "@mui/material";
+import { Box } from "@mui/material";
import DataTableWithAuth from "@/core/components/DataTableWithAuth";
-import AssignmentIcon from "@mui/icons-material/Assignment";
-import RowActions from "@/components/dashboard/inquiryPrivacy/provinceAdmin/zaminGov/RowActions";
+import RowActions from "./RowActions";
const TaskList = () => {
const columns = useMemo(
@@ -121,7 +120,7 @@ const TaskList = () => {
table_name={"provinceAdminZaminGovList"}
enableRowActions
positionActionsColumn={"last"}
- renderRowActions={({ row, table }) => }
+ renderRowActions={({ row }) => }
/>
>
diff --git a/src/core/components/ApplicantRequestDetail/index.jsx b/src/core/components/ApplicantRequestDetail/index.jsx
index b97279a..bfdbf35 100644
--- a/src/core/components/ApplicantRequestDetail/index.jsx
+++ b/src/core/components/ApplicantRequestDetail/index.jsx
@@ -11,11 +11,7 @@ const ApplicantRequestDetail = ({ data }) => {
return (
<>
-
+
{Object.entries(data).map(([key, value]) => (