change create and update

This commit is contained in:
hamid zarghami
2025-12-17 09:37:53 +03:30
parent 2ab830bd48
commit be5e6126de
6 changed files with 84 additions and 222 deletions
+13 -29
View File
@@ -45,22 +45,13 @@ const UpdateFood: FC = () => {
price: 0,
discount: 0,
prepareTime: 0,
stock: 0,
stockDefault: 0,
breakfast: false,
noon: false,
dinner: false,
mon: false,
tue: false,
wed: false,
thu: false,
fri: false,
sat: false,
sun: false,
weekDays: [],
mealTypes: [],
pickupServe: false,
inPlaceServe: false,
isActive: true,
images: []
images: [],
isSpecialOffer: false
},
validationSchema: Yup.object().shape({
title: Yup.string().required('نام غذا الزامی است'),
@@ -68,10 +59,10 @@ const UpdateFood: FC = () => {
categoryId: Yup.string().required('دسته‌بندی الزامی است'),
price: Yup.number().required('قیمت الزامی است').min(0, 'قیمت باید مثبت باشد'),
prepareTime: Yup.number().required('زمان آماده‌سازی الزامی است').min(0, 'زمان آماده‌سازی باید مثبت باشد'),
stock: Yup.number().required('موجودی الزامی است').min(0, 'موجودی باید مثبت باشد'),
stockDefault: Yup.number().required('موجودی پیش‌فرض الزامی است').min(0, 'موجودی پیش‌فرض باید مثبت باشد'),
discount: Yup.number().min(0, 'تخفیف باید مثبت باشد'),
content: Yup.array().of(Yup.string())
content: Yup.array().of(Yup.string()),
weekDays: Yup.array().of(Yup.number()),
mealTypes: Yup.array().of(Yup.string())
}),
onSubmit: (values) => {
if (!id) {
@@ -84,6 +75,7 @@ const UpdateFood: FC = () => {
const foodData: CreateFoodType = {
...values,
isActive,
isSpecialOffer: isSpecial,
images: allImages,
content: values.content.filter(item => item && item.trim().length > 0)
}
@@ -125,24 +117,16 @@ const UpdateFood: FC = () => {
price: food.price || 0,
discount: food.discount || 0,
prepareTime: food.prepareTime || 0,
stock: food.stock || 0,
stockDefault: food.stockDefault || 0,
breakfast: food.breakfast || false,
noon: food.noon || false,
dinner: food.dinner || false,
mon: food.mon || false,
tue: false,
wed: false,
thu: false,
fri: false,
sat: food.sat || false,
sun: food.sun || false,
weekDays: food.weekDays || [],
mealTypes: food.mealTypes || [],
pickupServe: food.pickupServe || false,
inPlaceServe: food.inPlaceServe || false,
isActive: food.isActive || false,
images: food.images || []
images: food.images || [],
isSpecialOffer: food.isSpecialOffer || false
})
setIsActive(food.isActive || false)
setIsSpecial(food.isSpecialOffer || false)
setExistingImages(food.images || [])
}
// eslint-disable-next-line react-hooks/exhaustive-deps