React Query Integration for Server State Sync in Clinet #245
@ -2,7 +2,7 @@ import React, { useEffect, useState } from "react";
|
|||||||
import WorkItem from "./WorkItem";
|
import WorkItem from "./WorkItem";
|
||||||
import { useProjectDetails } from "../../../hooks/useProjects";
|
import { useProjectDetails } from "../../../hooks/useProjects";
|
||||||
import { cacheData, getCachedData } from "../../../slices/apiDataManager";
|
import { cacheData, getCachedData } from "../../../slices/apiDataManager";
|
||||||
import { useDispatch } from "react-redux";
|
import { useDispatch, useSelector } from "react-redux";
|
||||||
import { refreshData } from "../../../slices/localVariablesSlice";
|
import { refreshData } from "../../../slices/localVariablesSlice";
|
||||||
import ProjectRepository from "../../../repositories/ProjectRepository";
|
import ProjectRepository from "../../../repositories/ProjectRepository";
|
||||||
import showToast from "../../../services/toastService";
|
import showToast from "../../../services/toastService";
|
||||||
@ -17,7 +17,12 @@ import ProgressDonutChart from "../../Charts/ProgressDonutChart";
|
|||||||
import ProgressBar from "../../common/ProgressBar";
|
import ProgressBar from "../../common/ProgressBar";
|
||||||
import { componentsToColor } from "pdf-lib";
|
import { componentsToColor } from "pdf-lib";
|
||||||
|
|
||||||
const WorkArea = ({ workArea, floor, forBuilding }) => {
|
const WorkArea = ( {workArea, floor, forBuilding} ) =>
|
||||||
|
{
|
||||||
|
const selectedProject = useSelector( ( store ) => store.localVariables.projectId )
|
||||||
|
const { projects_Details, loading, error, refetch } = useProjectDetails(
|
||||||
|
selectedProject
|
||||||
|
);
|
||||||
const [workItems, setWorkItems] = useState([]);
|
const [workItems, setWorkItems] = useState([]);
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const [Project, setProject] = useState();
|
const [Project, setProject] = useState();
|
||||||
@ -48,15 +53,16 @@ const WorkArea = ({ workArea, floor, forBuilding }) => {
|
|||||||
}, [workItems]);
|
}, [workItems]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const project = getCachedData("projectInfo");
|
// const project = getCachedData("projectInfo");
|
||||||
setProject(project);
|
setProject( projects_Details );
|
||||||
|
|
||||||
|
|
||||||
if (!project || !forBuilding?.id || !floor?.id || !workArea?.id) return;
|
if (!projects_Details || !forBuilding?.id || !floor?.id || !workArea?.id) return;
|
||||||
const building = project.buildings?.find((b) => b.id === forBuilding.id);
|
const building = projects_Details.buildings?.find((b) => b.id === forBuilding.id);
|
||||||
const floors = building?.floors?.find((f) => f.id === floor.id);
|
const floors = building?.floors?.find((f) => f.id === floor.id);
|
||||||
const workAreas = floor?.workAreas?.find((wa) => wa.id === workArea.id);
|
const workAreas = floor?.workAreas?.find((wa) => wa.id === workArea.id);
|
||||||
setWorkItems(workAreas?.workItems || []);
|
setWorkItems(workAreas?.workItems || []);
|
||||||
}, [workArea, floor, floor]);
|
}, [workArea, floor, floor,loading]);
|
||||||
|
|
||||||
const HanldeDeleteActivity = async (workItemId) => {
|
const HanldeDeleteActivity = async (workItemId) => {
|
||||||
try {
|
try {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user