Refactor_Expenses #321
@ -16,7 +16,19 @@ export const ExpenseSchema = (expenseTypes) => {
|
|||||||
expensesTypeId: z.string().min(1, { message: "Expense type is required" }),
|
expensesTypeId: z.string().min(1, { message: "Expense type is required" }),
|
||||||
paymentModeId: z.string().min(1, { message: "Payment mode is required" }),
|
paymentModeId: z.string().min(1, { message: "Payment mode is required" }),
|
||||||
paidById: z.string().min(1, { message: "Employee name is required" }),
|
paidById: z.string().min(1, { message: "Employee name is required" }),
|
||||||
transactionDate: z.string().min(1, { message: "Date is required" }),
|
transactionDate: z
|
||||||
|
.string()
|
||||||
|
.min(1, { message: "Date is required" })
|
||||||
|
.refine((val) => {
|
||||||
|
const selected = new Date(val);
|
||||||
|
const today = new Date();
|
||||||
|
|
||||||
|
// Set both to midnight to avoid time-related issues
|
||||||
|
selected.setHours(0, 0, 0, 0);
|
||||||
|
today.setHours(0, 0, 0, 0);
|
||||||
|
|
||||||
|
return selected <= today;
|
||||||
|
}, { message: "Future dates are not allowed" }),
|
||||||
transactionId: z.string().optional(),
|
transactionId: z.string().optional(),
|
||||||
description: z.string().min(1, { message: "Description is required" }),
|
description: z.string().min(1, { message: "Description is required" }),
|
||||||
location: z.string().min(1, { message: "Location is required" }),
|
location: z.string().min(1, { message: "Location is required" }),
|
||||||
|
@ -22,6 +22,7 @@ import {
|
|||||||
useUpdateExpense,
|
useUpdateExpense,
|
||||||
} from "../../hooks/useExpense";
|
} from "../../hooks/useExpense";
|
||||||
import ExpenseSkeleton from "./ExpenseSkeleton";
|
import ExpenseSkeleton from "./ExpenseSkeleton";
|
||||||
|
import moment from "moment";
|
||||||
|
|
||||||
const ManageExpense = ({ closeModal, expenseToEdit = null }) => {
|
const ManageExpense = ({ closeModal, expenseToEdit = null }) => {
|
||||||
const {
|
const {
|
||||||
@ -169,8 +170,8 @@ const ManageExpense = ({ closeModal, expenseToEdit = null }) => {
|
|||||||
handleClose();
|
handleClose();
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
const onSubmit = (payload) => {
|
const onSubmit = (fromdata) => {
|
||||||
debugger
|
let payload = {...fromdata,transactionDate: moment.utc(fromdata.transactionDate, 'YYYY-MM-DD').toISOString()}
|
||||||
if (expenseToEdit) {
|
if (expenseToEdit) {
|
||||||
const editPayload = { ...payload, id: data.id };
|
const editPayload = { ...payload, id: data.id };
|
||||||
ExpenseUpdate({ id: data.id, payload: editPayload });
|
ExpenseUpdate({ id: data.id, payload: editPayload });
|
||||||
|
Loading…
x
Reference in New Issue
Block a user