reject and update in bank management
This commit is contained in:
@@ -3,25 +3,40 @@ 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 {EDIT_APPROVED_AMOUNT} from "@/core/data/apiRoutes";
|
||||
import * as Yup from "yup";
|
||||
import PriceField from "@/core/components/PriceField";
|
||||
|
||||
const EditContent = ({rowId, row, mutate, setOpenEditDialog}) => {
|
||||
const vehicle_amount = {
|
||||
"اتوبوس": 7000,
|
||||
"مینی بوس": 2000,
|
||||
}
|
||||
|
||||
const EditContent = ({rowId, row, mutate, setOpenEditDialog, vehicle_type}) => {
|
||||
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")}`)
|
||||
approved_amount: Yup.mixed().test(
|
||||
"is-number",
|
||||
`${t("EditDialog.approved_amount_number")}`,
|
||||
(value) => !isNaN(value)
|
||||
).test("max-amount", `${t("EditDialog.max_amount", {value: parseInt(vehicle_amount[vehicle_type]).toLocaleString('en')})}`,
|
||||
(value) => value <= vehicle_amount[vehicle_type])
|
||||
.test("positive", `${t("EditDialog.approved_amount_positive")}`, (value) => value >= 0)
|
||||
.required(t("EditDialog.edit_approved_amount_required")),
|
||||
})
|
||||
|
||||
const formik = useFormik({
|
||||
initialValues: {
|
||||
approved_amount: String(row.original.approved_amount / 1000000),
|
||||
approved_amount: String(row.original.approved_amount / 1000000)
|
||||
}, validationSchema,
|
||||
onSubmit: (values, {setSubmitting}) => {
|
||||
requestServer(`${CONFIRM_TRANSPORTATION_ASSISTANCE}/${rowId}`, 'post', {
|
||||
requestServer(`${EDIT_APPROVED_AMOUNT}/${rowId}`, 'post', {
|
||||
data: {
|
||||
approved_amount: values.approved_amount
|
||||
},
|
||||
notification: true
|
||||
}).then(() => {
|
||||
setOpenEditDialog(false)
|
||||
|
||||
@@ -4,7 +4,7 @@ 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 EditForm = ({rowId, row, mutate, vehicle_type}) => {
|
||||
const t = useTranslations();
|
||||
const [openEditDialog, setOpenEditDialog] = useState(false);
|
||||
|
||||
@@ -30,6 +30,7 @@ const EditForm = ({rowId, row, mutate}) => {
|
||||
<DialogTitle>{t("EditDialog.edit_approved_amount")}</DialogTitle>
|
||||
<EditContent
|
||||
mutate={mutate} rowId={rowId} setOpenEditDialog={setOpenEditDialog} row={row}
|
||||
vehicle_type={vehicle_type}
|
||||
/>
|
||||
</Dialog>
|
||||
</>
|
||||
|
||||
@@ -20,11 +20,16 @@ const TableRow = ({row, mutate}) => {
|
||||
/>
|
||||
)
|
||||
}
|
||||
<EditForm
|
||||
rowId={row.getValue("id")}
|
||||
mutate={mutate}
|
||||
row={row}
|
||||
/>
|
||||
{
|
||||
row.original.bank_state == 8 && (
|
||||
<EditForm
|
||||
rowId={row.getValue("id")}
|
||||
mutate={mutate}
|
||||
vehicle_type={row.original.vehicle_type}
|
||||
row={row}
|
||||
/>
|
||||
)
|
||||
}
|
||||
</Box>
|
||||
);
|
||||
};
|
||||
|
||||
@@ -257,6 +257,7 @@ export const GET_BANK_STATEMENT = BASE_URL + "/dashboard/bank_referred_loans"
|
||||
export const RESEND_BANK_STATEMENT = BASE_URL + "/dashboard/bank_referred_loans/send"
|
||||
export const EXPORT_BANK_MANAGEMENT = BASE_URL + "/dashboard/bank_referred_loans/export"
|
||||
export const REJECT_BANK_MANAGEMENT = BASE_URL + "/dashboard/bank_referred_loans/reject"
|
||||
export const EDIT_APPROVED_AMOUNT = BASE_URL + "/dashboard/bank_referred_loans/update"
|
||||
|
||||
// loan statistics
|
||||
export const GET_LOAN_STATISTICS = BASE_URL + "/dashboard/reports/navgan/statistics"
|
||||
|
||||
Reference in New Issue
Block a user