import { useEffect, useState } from 'react' import { ClockThreeIcon, LocationPinIcon, TargetIcon } from '../../../../icons/ExportCommonIcons' import { useSceneContext } from '../../../../../modules/scene/sceneContext'; import { useProductContext } from '../../../../../modules/simulation/products/productContext'; import RenameInput from '../../../../ui/inputs/RenameInput'; // import NavigateCatagory from '../NavigateCatagory' const Hrm = () => { const [selectedCard, setSelectedCard] = useState(0); const [workers, setWorkers] = useState([]); const { productStore } = useSceneContext(); const { products, getProductById } = productStore(); const { selectedProductStore } = useProductContext(); const { selectedProduct } = selectedProductStore(); useEffect(() => { if (selectedProduct) { const productDetails = getProductById(selectedProduct.productUuid); const workerDetails = productDetails?.eventDatas || []; const formattedWorkers = workerDetails .filter((worker: any) => worker.type === "human") .map((worker: any, index: number) => ({ employee: { image: "", name: worker.modelName, employee_id: `HR-${204 + index}`, status: "Active", }, task: { status: "Ongoing", title: worker.taskTitle || "No Task Assigned", location: { floor: worker.floor || 0, zone: worker.zone || "N/A" }, planned_time_hours: worker.plannedTime || 0, time_spent_hours: worker.timeSpent || 0, total_tasks: worker.totalTasks || 0, completed_tasks: worker.completedTasks || 0 }, actions: [ "Assign Task", "Reassign Task", "Pause", "Emergency Stop" ], location: `Floor ${worker.floor || "-"} . Zone ${worker.zone || "-"}` })); setWorkers(formattedWorkers); } }, [selectedProduct, getProductById]); useEffect(() => { // console.log("Workers data updated:", workers); }, [workers]); // const employee_details = [ // { // "employee": { // image: "", // "name": "John Doe", // "employee_id": "HR-204", // "status": "Active", // }, // "task": { // "status": "Ongoing", // "title": "Inspecting Machine X", // "location": { // "floor": 4, // "zone": "B" // }, // "planned_time_hours": 6, // "time_spent_hours": 2, // "total_tasks": 12, // "completed_tasks": 3 // }, // "actions": [ // "Assign Task", // "Reassign Task", // "Pause", // "Emergency Stop" // ], // "location": "Floor 4 . Zone B" // }, // { // "employee": { // image: "", // "name": "Alice Smith", // "employee_id": "HR-205", // "status": "Active", // }, // "task": { // "status": "Ongoing", // "title": "Calibrating Sensor Y", // "location": { // "floor": 2, // "zone": "A" // }, // "planned_time_hours": 4, // "time_spent_hours": 1.5, // "total_tasks": 10, // "completed_tasks": 2 // }, // "actions": [ // "Assign Task", // "Reassign Task", // "Pause", // "Emergency Stop" // ], // "location": "Floor 4 . Zone B" // }, // { // "employee": { // image: "", // "name": "Michael Lee", // "employee_id": "HR-206", // "status": "Active", // }, // "task": { // "status": "Ongoing", // "title": "Testing Conveyor Belt Z", // "location": { // "floor": 5, // "zone": "C" // }, // "planned_time_hours": 5, // "time_spent_hours": 3, // "total_tasks": 8, // "completed_tasks": 5 // }, // "actions": [ // "Assign Task", // "Reassign Task", // "Pause", // "Emergency Stop" // ], // "location": "Floor 4 . Zone B" // }, // ] function handleRenameWorker(newName: string) { // console.log('newName: ', newName); } return ( <> {/* */}
{workers.map((employee, index) => (
setSelectedCard(index)} key={index} >
{/*
{employee.employee.name}
*/}
{employee.employee.employee_id}
View more
{/*
Ongoing Task:
{employee.task.title}
Location:
Floor {employee.task.location.floor}. Zone {employee.task.location.zone}
*/}
Planned time:
{employee.task.planned_time_hours} hr
{/*
Total Tasks:
{employee.task.total_tasks}
Time Spent:
{employee.task.time_spent_hours} hr
*/}
Cost per hr:
{employee.task.completed_tasks}
Location:
{employee.location}
{/* */}
))}
) } export default Hrm