diff --git a/public/locales/fa/app.json b/public/locales/fa/app.json
index 39c8173..8a1a6f1 100644
--- a/public/locales/fa/app.json
+++ b/public/locales/fa/app.json
@@ -505,15 +505,31 @@
"description": "توضیحات خود را وارد نمائید"
},
"RejectDialog": {
+ "bank_management_reject": "رد درخواست",
+ "typography": "آیا میخواهید این درخواست را رد کنید ؟",
"reject": "عدم تایید",
"context": "آیا از عدم تایید این آیتم اطمینان دارید؟",
"button-cancel": "بستن",
"button-reject": "عدم تایید",
+ "button-bank_management_reject": "رد درخواست",
"description": "توضیحات خود را وارد نمائید",
"optional": " (اختیاری)",
"description_error": "وارد کردن توضیحات الزامی است!",
"choose_file": "انتخاب فایل"
},
+ "EditDialog": {
+ "edit_approved_amount": "ویرایش مبلغ تصویب شده",
+ "description_error": "وارد کردن توضیحات الزامی است!",
+ "optional": " (اختیاری)",
+ "approved_amount": "مبلغ تصویب شده",
+ "edit_approved_amount": "ویرایش مبلغ تصویب شده",
+ "button-cancel": "بستن",
+ "button-edit": "ویرایش",
+ "edit_approved_amount_required": "وارد کردن مبلغ تصویب شده الزامیست",
+ "unit": " (میلیون ریال)",
+ "button-revise": "ارسال",
+ "description": "توضیحات خود را وارد نمائید"
+ },
"UpdateDialog": {
"update": "ویرایش",
"resend": "ارسال مجدد به بانک",
diff --git a/src/components/dashboard/bank-management/Form/Edit/EditContent.jsx b/src/components/dashboard/bank-management/Form/Edit/EditContent.jsx
new file mode 100644
index 0000000..cee3fcc
--- /dev/null
+++ b/src/components/dashboard/bank-management/Form/Edit/EditContent.jsx
@@ -0,0 +1,90 @@
+import useNotification from "@/lib/app/hooks/useNotification";
+import useRequest from "@/lib/app/hooks/useRequest";
+import {Button, DialogActions, DialogContent, Stack,} from "@mui/material"
+import {useFormik} from "formik";
+import {useTranslations} from "next-intl";
+import {CONFIRM_TRANSPORTATION_ASSISTANCE} from "@/core/data/apiRoutes";
+import * as Yup from "yup";
+import PriceField from "@/core/components/PriceField";
+
+const EditContent = ({rowId, row, mutate, setOpenEditDialog}) => {
+ const t = useTranslations();
+ const requestServer = useRequest({auth: true, notification: false});
+ const {update_notification} = useNotification();
+
+ const validationSchema = Yup.object().shape({
+ approved_amount: Yup.string().required(`${t("EditDialog.edit_approved_amount_required")}`)
+ })
+
+ const formik = useFormik({
+ initialValues: {
+ approved_amount: String(row.original.approved_amount / 1000000),
+ }, validationSchema,
+ onSubmit: (values, {setSubmitting}) => {
+ requestServer(`${CONFIRM_TRANSPORTATION_ASSISTANCE}/${rowId}`, 'post', {
+ notification: true
+ }).then(() => {
+ setOpenEditDialog(false)
+ mutate()
+ update_notification()
+ }).catch(() => {
+ }).finally(() => {
+ setSubmitting(false);
+ });
+ },
+ });
+ const handleAmountChange = (event) => {
+ if (!isNaN(event.target.value)) {
+ formik.setFieldValue("approved_amount", event.target.value)
+ } else {
+ formik.setFieldValue("approved_amount", formik.values.approved_amount)
+ }
+ };
+ return (
+ <>
+
+
+
+
+ {t("EditDialog.edit_approved_amount")}{t("EditDialog.unit")}>}
+ type="text"
+ inputProps={{
+ inputMode: "number",
+ min: 0,
+ pattern: "[0-9]*",
+ }}
+ variant="outlined"
+ value={formik.values.approved_amount}
+ onChange={handleAmountChange}
+ onBlur={formik.handleBlur("approved_amount")}
+ error={
+ formik.touched.approved_amount &&
+ Boolean(formik.errors.approved_amount)
+ }
+ helperText={
+ formik.touched.approved_amount && formik.errors.approved_amount
+ }
+ sx={{mt: 1}}
+ fullWidth
+ />
+
+
+
+
+
+
+
+ >
+ )
+
+}
+export default EditContent
\ No newline at end of file
diff --git a/src/components/dashboard/bank-management/Form/Edit/index.jsx b/src/components/dashboard/bank-management/Form/Edit/index.jsx
new file mode 100644
index 0000000..f443ef8
--- /dev/null
+++ b/src/components/dashboard/bank-management/Form/Edit/index.jsx
@@ -0,0 +1,39 @@
+import {Dialog, DialogTitle, IconButton, Tooltip} from "@mui/material";
+import {useTranslations} from "next-intl";
+import {useState} from "react";
+import EditIcon from '@mui/icons-material/Edit';
+import EditContent from "@/components/dashboard/bank-management/Form/Edit/EditContent";
+
+const EditForm = ({rowId, row, mutate}) => {
+ const t = useTranslations();
+ const [openEditDialog, setOpenEditDialog] = useState(false);
+
+ return (
+ <>
+
+ {
+ setOpenEditDialog(true)
+ }}
+ >
+
+
+
+
+ >
+ )
+
+}
+export default EditForm;
\ No newline at end of file
diff --git a/src/components/dashboard/bank-management/Form/Reject/RejectContent.jsx b/src/components/dashboard/bank-management/Form/Reject/RejectContent.jsx
new file mode 100644
index 0000000..e69de29
diff --git a/src/components/dashboard/bank-management/Form/Reject/index.jsx b/src/components/dashboard/bank-management/Form/Reject/index.jsx
new file mode 100644
index 0000000..0536cbe
--- /dev/null
+++ b/src/components/dashboard/bank-management/Form/Reject/index.jsx
@@ -0,0 +1,68 @@
+import {useTranslations} from "next-intl";
+import {useState} from "react";
+import {
+ Button,
+ Dialog,
+ DialogActions,
+ DialogContent,
+ DialogTitle,
+ IconButton,
+ Tooltip,
+ Typography
+} from "@mui/material";
+import ThumbDownIcon from '@mui/icons-material/ThumbDown';
+import useRequest from "@/lib/app/hooks/useRequest";
+import useNotification from "@/lib/app/hooks/useNotification";
+import {RESEND_BANK_STATEMENT} from "@/core/data/apiRoutes";
+
+const RejectForm = ({rowId, mutate}) => {
+ const t = useTranslations();
+ const [openRejectDialog, setOpenRejectDialog] = useState(false);
+ const [isSubmitting, setIsSubmitting] = useState(false)
+ const requestServer = useRequest({auth: true})
+ const {update_notification} = useNotification()
+ const handleSubmit = () => {
+ setIsSubmitting(true)
+ requestServer(`${RESEND_BANK_STATEMENT}/${rowId}`, 'post').then((response) => {
+ setOpenRejectDialog(false)
+ mutate()
+ update_notification()
+ }).catch(() => {
+ }).finally(() => {
+ setIsSubmitting(false)
+ });
+ }
+
+ return (
+ <>
+
+ {
+ setOpenRejectDialog(true)
+ }}
+ >
+
+
+
+
+ >
+ );
+};
+export default RejectForm;
\ No newline at end of file
diff --git a/src/components/dashboard/bank-management/TableRowActions.jsx b/src/components/dashboard/bank-management/TableRowActions.jsx
index 2674c55..f2b7720 100644
--- a/src/components/dashboard/bank-management/TableRowActions.jsx
+++ b/src/components/dashboard/bank-management/TableRowActions.jsx
@@ -1,5 +1,7 @@
import {Box} from "@mui/material";
import UpdateForm from "@/components/dashboard/bank-management/Form/Update";
+import RejectForm from "@/components/dashboard/bank-management/Form/Reject";
+import EditForm from "@/components/dashboard/bank-management/Form/Edit";
const TableRow = ({row, mutate}) => {
return (
@@ -10,6 +12,15 @@ const TableRow = ({row, mutate}) => {
mutate={mutate}
/>
)}
+
+
);
};