- {isFetching ?
+ {calendarEvents?.isPending ?
<>
>
- : isError ?
+ : calendarEvents?.error ?
-
{error.message}
+
{calendarEvents?.error?.message}
:
<>
@@ -83,7 +105,7 @@ export default function Calendar(){
Drag and drop your event or click in the calendar.
*/}
- {category.map((item, index) => {
+ {category?.map((item, index) => {
let color = item?.cid == '1' ? 'fc-event-success' : item?.cid == '2' ? 'fc-event-danger' : item?.cid == '3' ? 'fc-event-warning' : 'fc-event-primary'
let circleColor = item?.cid == '1' ? 'text-success' : item?.cid == '2' ? 'text-danger' : item?.cid == '3' ? 'text-warning' : 'text-primary'
return (
diff --git a/src/component/product/ProductFactory.jsx b/src/component/product/ProductFactory.jsx
index ec17ee7..3cd5419 100644
--- a/src/component/product/ProductFactory.jsx
+++ b/src/component/product/ProductFactory.jsx
@@ -1,11 +1,10 @@
-import React, {useState} from "react";
-import { useQuery } from '@tanstack/react-query'
+import {useEffect} from "react";
+import { useMutation, useQuery } from '@tanstack/react-query'
import BreadcrumbComBS from "../breadcrumb/BreadcrumbComBS";
// import getImage from "../../utils/getImage";
import ProductStart from "./ProductStart";
import { useLocation } from 'react-router-dom';
-import {MyProductData, productData} from "../../services/services";
-import queryKeys from "../../services/queryKeys";
+import {MyProductData} from "../../services/services";
import ProductActive from "./ProductActive";
import ProductProvision from "./ProductProvision";
import {productConst} from "../../constants/products";
@@ -13,34 +12,42 @@ import {productConst} from "../../constants/products";
export default function ProductFactory(){
const location = useLocation();
const pathname = location.pathname;
- const [productStatus, setProductStatus] = useState(0);
-
- //productConst.PRODUCT_ACTIVE
-
// Split the pathname by '/' and get the last element
- const lastPart = pathname.split('/').pop();
- // console.log(lastPart)
+ const productID = pathname.split('/').pop();
- const {data, isFetching, isError, error} = useQuery({
- queryKey: queryKeys.product,
- queryFn: () => MyProductData(lastPart)
+ const getProductData = useMutation({
+ mutationFn: (reqData) => {
+ return MyProductData(reqData)
+ },
+ onError: (error) => {
+ console.log(error)
+ },
+ onSuccess: (res) => {
+ if(res?.data?.resultCode != '0'){
+ throw({message: 'Something went wrong'})
+ }
+ }
})
-
-
- const myproduct_data = data?.data?.myproduct_data
- //setProductStatus(myproduct_data?.status)
-
- const product_name = myproduct_data?.product_name;
-
- const product_status = myproduct_data?.status;
+ useEffect(()=>{
+ let reqData = {
+ product_id : productID,
+ token: localStorage.getItem('token'), // USER TOKEN
+ uid: localStorage.getItem('uid') // USER UID
+ }
+ getProductData.mutate(reqData)
+ },[])
+
+ const myproduct_data = getProductData?.data?.data?.myproduct?.myproudct // PRODUCT DETAILS
+ const product_name = myproduct_data?.product_name;
+ const product_status = myproduct_data?.status;
return(
<>
- {isFetching ?
+ {getProductData?.isPending ?
<>
@@ -48,10 +55,10 @@ export default function ProductFactory(){
>
- : isError ?
+ : getProductData?.error ?
-
{error.message}
+
{getProductData?.error?.message}
:
diff --git a/src/services/services.js b/src/services/services.js
index ecdb8b4..b6d4239 100644
--- a/src/services/services.js
+++ b/src/services/services.js
@@ -75,6 +75,22 @@ export const topBar = (reqData) => {
return postAuxEnd(`/panel/account/bar`, postData, false)
}
+// FUNCTION TO GET PRODUCT BY ID
+export const MyProductData = (reqData) => {
+ let postData = {
+ ...reqData,
+ }
+ return postAuxEnd(`/panel/myproduct/dash`, postData, false)
+}
+
+// FUNCTION TO GET CALENDAR EVENTS
+export const getCalendarEvents = (reqData) => {
+ let postData = {
+ ...reqData,
+ }
+ return postAuxEnd(`/panel/account/calendar`, postData, false)
+}
+
// FUNCTION TO GET DASHBOARD RECENT ACTIONS SECTION
export const recentActions = (reqData) => {
let postData = {
@@ -98,6 +114,7 @@ export const productsData = (reqData) => {
+
// FUNCTION TO GET DASHBOARD PRODUCT URL DATA SECTION
export const productsURL = (reqData) => {
let postData = {
@@ -152,16 +169,6 @@ export const recoverPWD = (reqData) => {
return postAuxEnd('/panel/auth/reset', postData, false)
}
-// FUNCTION TO GET CALENDAR EVENTS
-export const getCalendarEvents = (reqData) => {
- let postData = {
- ...reqData,
- token: localStorage.getItem('token'), // USER TOKEN
- uid: localStorage.getItem('uid') // USER UID
- }
- return postAuxEnd(`/panel/account/calendar`, postData, false)
-}
-
// FUNCTION TO GET MY PRODUCT PROVISION DATA
export const productProvision = (reqData) => {
let postData = {
@@ -182,15 +189,4 @@ export const contactData = (reqData) => {
}
return postAuxEnd(`/panel/contacts`, postData, false)
// return getAuxEnd(`/panel/contacts`)
-}
-
-export const MyProductData = (productID) => {
- const reqData = { product_id : productID}
- let postData = {
- ...reqData,
- token: localStorage.getItem('token'), // USER TOKEN
- uid: localStorage.getItem('uid') // USER UID
- }
- return postAuxEnd(`/panel/myproduct/dash`, postData, false)
- // return getAuxEnd(`/panel/myproduct/dash`,reqData)
}
\ No newline at end of file