import React, { useState, useEffect } from "react"; import AssignRoleModel from "../AssignRole"; import { useParams } from "react-router-dom"; import EditActivityModal from "./EditActivityModal"; import { useHasUserPermission } from "../../../hooks/useHasUserPermission"; import { MANAGE_PROJECT_INFRA, MANAGE_TASK } from "../../../utils/constants"; const WorkItem = ({ workItem, forBuilding, forFloor, forWorkArea }) => { const { projectId } = useParams(); const [itemName, setItemName] = useState(""); const [NewWorkItem, setNewWorkItem] = useState(); const [isModalOpen, setIsModalOpen] = useState(false); const [showModal, setShowModal] = useState(false); const ManageTasks = useHasUserPermission(MANAGE_TASK); const ManageInfra = useHasUserPermission(MANAGE_PROJECT_INFRA); const openModal = () => setIsModalOpen(true); const closeModal = () => setIsModalOpen(false); const getProgress = (planned, completed) => { return (completed * 100) / planned + "%"; }; const handleAssignTask = () => { setItemName(""); }; useEffect(() => { setNewWorkItem(workItem); }, [workItem]); let assigndata = { building: forBuilding, floor: forFloor, workArea: forWorkArea, workItem, }; const hasWorkItem = NewWorkItem && NewWorkItem; useEffect(() => { const tooltipTriggerList = Array.from( document.querySelectorAll('[data-bs-toggle="tooltip"]') ); tooltipTriggerList.forEach((el) => new bootstrap.Tooltip(el)); }, []); const showModal1 = () => setShowModal(true); const closeModal1 = () => setShowModal(false); return ( <> {isModalOpen && (
)} {showModal &&
} {hasWorkItem ? NewWorkItem?.workItem?.activityMaster?.activityName || workItem.activityMaster?.activityName : "NA"} {/* for mobile view */} {hasWorkItem ? NewWorkItem?.workItem?.completedWork ?? workItem?.completedWork ?? "NA" : "NA"}/{" "} {hasWorkItem ? NewWorkItem?.workItem?.plannedWork || workItem?.plannedWork : "NA"} {/* for greather than mobile view ************* */} {hasWorkItem ? NewWorkItem?.workItem?.plannedWork ?? workItem?.plannedWork ?? "NA" : "NA"} {hasWorkItem ? NewWorkItem?.workItem?.completedWork ?? workItem?.completedWork ?? "NA" : "NA"}
{!projectId && ManageTasks && ( )} { ManageInfra && ( <> )}
); }; export default WorkItem;