menu item create and updated issues fixed

This commit is contained in:
alaguraj 2025-07-30 19:38:15 +05:30
parent 46a3e91bb8
commit 54a88fa9ea
4 changed files with 27 additions and 17 deletions

View File

@ -8,6 +8,7 @@ import PageNoData from "@/components/common-component/PageNoData";
import Breadcrumb from "@/components/Breadcrumb"; import Breadcrumb from "@/components/Breadcrumb";
import Link from "next/link"; import Link from "next/link";
import { useRouter } from "next/navigation"; import { useRouter } from "next/navigation";
import { ImageBase } from "@utils/BaseUrl.utils";
const ProductListInner = () => { const ProductListInner = () => {
@ -359,7 +360,7 @@ const ProductListInner = () => {
<div className="card cursor-pointer position-relative "> <div className="card cursor-pointer position-relative ">
<div className="card-body text-center p-3"> <div className="card-body text-center p-3">
<img <img
src={menu.profileImg} src={`${ImageBase}/${menu.item_image}`}
alt="" alt=""
className="border br-white border-width-2-px w-100-px h-100-px rounded-circle object-fit-cover" className="border br-white border-width-2-px w-100-px h-100-px rounded-circle object-fit-cover"
/> />

View File

@ -7,13 +7,17 @@ import MasterLayout from "@/masterLayout/MasterLayout";
import Breadcrumb from "@/components/Breadcrumb"; import Breadcrumb from "@/components/Breadcrumb";
import { useSearchParams } from "next/navigation"; import { useSearchParams } from "next/navigation";
import axios from "axios"; import axios from "axios";
import { Baseurl } from "@utils/BaseUrl.utils"; import { Baseurl, ImageBase } from "@utils/BaseUrl.utils";
import { useRouter } from "next/navigation";
const UpdateProduct = () => { const UpdateProduct = () => {
const searchParams = useSearchParams(); const searchParams = useSearchParams();
const category = searchParams.get("category"); const category = searchParams.get("category");
const MenuItemName = searchParams.get("menuitemname"); const MenuItemName = searchParams.get("menuitemname");
const router = useRouter()
const [imagePreview, setImagePreview] = useState(null); const [imagePreview, setImagePreview] = useState(null);
const [imageFile, setImageFile] = useState(null); const [imageFile, setImageFile] = useState(null);
const [errors, setErrors] = useState({}); const [errors, setErrors] = useState({});
@ -39,16 +43,19 @@ const UpdateProduct = () => {
const res = await client.get( const res = await client.get(
`/Dine360%20Menu%20Category/${category}?fields=["*"]&limit_page_length=100` `/Dine360%20Menu%20Category/${category}?fields=["*"]&limit_page_length=100`
); );
const item = res?.data?.data?.menuitems_child?.[0]; const item = res?.data?.data?.menuitems_child;
if (item) { const menuItemName = MenuItemName
const selectedItem = item?.find((obj) => obj.name === menuItemName);
if (selectedItem) {
setFormData((prev) => ({ setFormData((prev) => ({
...prev, ...prev,
...item, ...selectedItem,
is_active: !!item.is_active, is_active: !!selectedItem.is_active,
is_special: !!item.is_special, is_special: !!selectedItem.is_special,
})); }));
if (item.image_item) { if (selectedItem.item_image) {
setImagePreview(`${process.env.NEXT_PUBLIC_IMAGE_BASE}/${item.image_item}`); setImagePreview(`${ImageBase}/${selectedItem.item_image}`);
} }
} }
} catch (error) { } catch (error) {
@ -95,7 +102,7 @@ const UpdateProduct = () => {
newErrors.description = "Description is too short"; newErrors.description = "Description is too short";
} }
if (!imageFile && !imagePreview) { if (!imageFile && !imagePreview) {
newErrors.image_item = "Image is required"; newErrors.item_image = "Image is required";
} }
return newErrors; return newErrors;
}; };
@ -111,6 +118,7 @@ const UpdateProduct = () => {
const body = const body =
{ {
name: MenuItemName,
menuitemname: formData.menuitemname, menuitemname: formData.menuitemname,
price: formData.price, price: formData.price,
is_active: formData.is_active ? 1 : 0, is_active: formData.is_active ? 1 : 0,
@ -327,8 +335,8 @@ const UpdateProduct = () => {
/> />
</label> </label>
)} )}
{errors.image_item && ( {errors.item_image && (
<div className="text-danger small">{errors.image_item}</div> <div className="text-danger small">{errors.item_image}</div>
)} )}
</div> </div>
</div> </div>

View File

@ -306,7 +306,7 @@ const SidesPageInner = () => {
<div className=""> <div className="">
<div className="row gy-3 gx-3 gx-lg-5 gy-lg-5 justify-content-center"> <div className="row gy-3 gx-3 gx-lg-5 gy-lg-5 justify-content-center">
<div className="col-xl-2 col-lg-3 col-md-4"> <div className="col-xl-3 col-lg-3 col-md-4">
<div className="d-inline-block" style={{width:"100%"}}> <div className="d-inline-block" style={{width:"100%"}}>
<div className="card p-0 overflow-hidden radius-12 h-100"> <div className="card p-0 overflow-hidden radius-12 h-100">
<div className="card-body p-24"> <div className="card-body p-24">
@ -386,7 +386,7 @@ const SidesPageInner = () => {
</div> </div>
</div> </div>
</div> </div>
<div className="col-xl-10 col-lg-9 col-md-8"> <div className="col-xl-9 col-lg-9 col-md-8">
<div className="row gy-3 gx-3 gx-lg-5 gy-lg-5"> <div className="row gy-3 gx-3 gx-lg-5 gy-lg-5">
<div className="col-xxl-3 col-xl-3 col-lg-4 col-sm-6 col-6 cursor-pointer"> <div className="col-xxl-3 col-xl-3 col-lg-4 col-sm-6 col-6 cursor-pointer">
<div className="card p-3 shadow-2 radius-8 h-100 border border-white position-relative"> <div className="card p-3 shadow-2 radius-8 h-100 border border-white position-relative">

View File

@ -9,6 +9,7 @@ import { Icon } from "@iconify/react";
import PageLoader from "@/components/common-component/PageLoader"; import PageLoader from "@/components/common-component/PageLoader";
import PageNoData from "@/components/common-component/PageNoData"; import PageNoData from "@/components/common-component/PageNoData";
import Breadcrumb from "@/components/Breadcrumb"; import Breadcrumb from "@/components/Breadcrumb";
import { ImageBase } from "@utils/BaseUrl.utils";
const MenuItemsCategoryInner = () => { const MenuItemsCategoryInner = () => {
const params = useParams(); const params = useParams();
@ -337,7 +338,7 @@ const MenuItemsCategoryInner = () => {
> >
<div className="card-body text-center p-3"> <div className="card-body text-center p-3">
<img <img
src={menu.profileImg} src={`${ImageBase}/${menu.item_image}`}
alt="" alt=""
className="border br-white border-width-2-px w-100-px h-100-px rounded-circle object-fit-cover" className="border br-white border-width-2-px w-100-px h-100-px rounded-circle object-fit-cover"
/> />
@ -537,7 +538,7 @@ const MenuItemsCategoryInner = () => {
<div className="d-flex align-items-center gap-3"> <div className="d-flex align-items-center gap-3">
<div className="flex-shrink-0"> <div className="flex-shrink-0">
<img <img
src={item.profileImg} src={`${ImageBase}/${item.item_image}`}
alt={item.menuitemname} alt={item.menuitemname}
className="rounded-circle" className="rounded-circle"
style={{ style={{
@ -633,7 +634,7 @@ const MenuItemsCategoryInner = () => {
{/* Col 1 - Image */} {/* Col 1 - Image */}
<div className="col-md-4"> <div className="col-md-4">
<img <img
src="https://images.immediate.co.uk/production/volatile/sites/30/2020/08/chorizo-mozarella-gnocchi-bake-cropped-9ab73a3.jpg?quality=90&resize=700,636" src={`${ImageBase}/${selectedItem.item_image}`}
alt={selectedItem.menuitemname} alt={selectedItem.menuitemname}
className="w-100 rounded" className="w-100 rounded"
style={{ objectFit: 'cover' }} style={{ objectFit: 'cover' }}