This commit is contained in:
hamid zarghami
2025-10-23 11:24:58 +03:30
parent dcdb09b147
commit b631b28c7a
4 changed files with 13 additions and 12 deletions
+8 -8
View File
@@ -11,6 +11,7 @@ import UploadBox from '../../components/UploadBox'
import { TickCircle } from 'iconsax-react'
import { toast } from 'react-toastify'
import { extractErrorMessage } from '@/helpers/utils'
import { useSingleUpload } from '../category'
// Validation schema برای UpdateShopType
const validationSchema = Yup.object().shape({
@@ -18,13 +19,12 @@ const validationSchema = Yup.object().shape({
shopDescription: Yup.string().required('توضیحات شاپ الزامی است'),
telephoneNumber: Yup.string().required('شماره تلفن الزامی است'),
shopPostalCode: Yup.string().required('کد پستی الزامی است'),
logo: Yup.string().required('لوگو الزامی است')
})
const Shop: FC = () => {
const { data: shopDetail, isLoading: shopDetailLoading, error: shopDetailError } = useGetShop()
const updateShopMutation = useUpdateShop()
const uploadSingle = useSingleUpload()
const [logoFile, setLogoFile] = useState<File[]>([])
const formik = useFormik<UpdateShopType>({
@@ -33,21 +33,20 @@ const Shop: FC = () => {
shopDescription: '',
telephoneNumber: '',
shopPostalCode: '',
logo: ''
logo: undefined
},
validationSchema,
onSubmit: async (values) => {
const logoUrl = values.logo
if (logoFile.length > 0) {
// TODO: اینجا باید API آپلود فایل اضافه شود
// const logoResponse = await uploadSingle.mutateAsync(logoFile[0])
// logoUrl = logoResponse.results?.url?.url || values.logo
const logoResponse = await uploadSingle.mutateAsync(logoFile[0])
values.logo = logoResponse.results?.url?.url || undefined
} else {
values.logo = undefined
}
const submitData = {
...values,
logo: logoUrl
}
updateShopMutation.mutate(submitData, {
@@ -61,6 +60,7 @@ const Shop: FC = () => {
}
})
useEffect(() => {
if (shopDetail?.results?.shop) {
const shop = shopDetail.results.shop