diff --git a/src/components/ExpenseSearch/CreateExpenseModal.tsx b/src/components/ExpenseSearch/CreateExpenseModal.tsx index 13cc305..a1d69b5 100644 --- a/src/components/ExpenseSearch/CreateExpenseModal.tsx +++ b/src/components/ExpenseSearch/CreateExpenseModal.tsx @@ -1,30 +1,33 @@ -import React, { useCallback, useState } from 'react'; -import { +import React, { useCallback, useState } from "react"; +import { Modal, - Box, - Typography, - Button, + Box, + Typography, + Button, SxProps, CardContent, CardActions, - Card -} from '@mui/material'; -import { useTranslation } from 'react-i18next'; -import { FormProvider, SubmitHandler, useForm } from 'react-hook-form'; + Card, +} from "@mui/material"; +import { useTranslation } from "react-i18next"; +import { FormProvider, SubmitHandler, useForm } from "react-hook-form"; import { Check, Close } from "@mui/icons-material"; -import { ProjectResult } from '@/app/api/projects'; -import { CreateNewExpense, PostExpenseData } from '@/app/api/projectExpenses/actions'; -import ExpenseTable from './ExpenseTable'; -import dayjs from 'dayjs'; -import { INPUT_DATE_FORMAT } from '@/app/utils/formatUtil'; +import { ProjectResult } from "@/app/api/projects"; +import { + CreateNewExpense, + PostExpenseData, +} from "@/app/api/projectExpenses/actions"; +import ExpenseTable from "./ExpenseTable"; +import dayjs from "dayjs"; +import { INPUT_DATE_FORMAT } from "@/app/utils/formatUtil"; interface Props { - isOpen: boolean, - onClose: () => void - projects: ProjectResult[] + isOpen: boolean; + onClose: () => void; + projects: ProjectResult[]; } -const modalSx: SxProps= { +const modalSx: SxProps = { position: "absolute", top: "50%", left: "50%", @@ -32,77 +35,73 @@ const modalSx: SxProps= { width: { xs: "calc(100% - 2rem)", sm: "90%" }, maxHeight: "90%", maxWidth: 1400, - bgcolor: 'background.paper', + bgcolor: "background.paper", }; type postData = { - data: PostExpenseData[] -} -const CreateExpenseModal: React.FC = ({isOpen, onClose, projects}) => { - const { t } = useTranslation() + data: PostExpenseData[]; +}; +const CreateExpenseModal: React.FC = ({ isOpen, onClose, projects }) => { + const { t } = useTranslation(); const formProps = useForm(); - const onSubmit = useCallback>( - (data) => { - const _data = data.data - try { - const postData: PostExpenseData[] = _data.map(item => { - return ({ + const onSubmit = useCallback>((data) => { + const _data = data.data; + try { + const postData: PostExpenseData[] = _data.map((item) => { + return { expenseNo: item.expenseNo, issueDate: dayjs(item.issueDate).format(INPUT_DATE_FORMAT), amount: item.amount, - projectId: projects.find(p => p.code === item.projectCode)!.id, + projectId: projects.find((p) => p.code === item.projectCode)!.id, projectCode: item.projectCode, - remarks: (item.remarks && item.remarks.length > 0) ? (item.remarks) : undefined, - })} - ) - console.log(postData) - } catch (error) { - console.log(error) - } + remarks: + item.remarks && item.remarks.length > 0 ? item.remarks : undefined, + }; + }); + console.log(postData); + } catch (error) { + console.log(error); } - , []) + }, []); return ( - + - {t("Invoice Creation")} - - + + + + + - - + {t("Cancel")} + + + - + ); }; -export default CreateExpenseModal; \ No newline at end of file +export default CreateExpenseModal;