import React, { useState, useEffect } from "react"; import EmpProfile from "../../components/Employee/EmpProfile"; import axios from "axios"; import Breadcrumb from "../../components/common/Breadcrumb"; import EmployeeNav from "../../components/Employee/EmployeeNav"; import { useSearchParams, useParams } from "react-router-dom"; import { getCachedData } from "../../slices/apiDataManager"; import { useEmployeeProfile, useEmployees, useEmployeesByProject, } from "../../hooks/useEmployees"; import { useProfile } from "../../hooks/useProfile"; import { useSelector } from "react-redux"; import EmployeeRepository from "../../repositories/EmployeeRepository"; import { ComingSoonPage } from "../Misc/ComingSoonPage"; import { useNavigate } from "react-router-dom"; import Avatar from "../../components/common/Avatar"; import AttendancesEmployeeRecords from "./AttendancesEmployeeRecords"; import ManageEmployee from "../../components/Employee/ManageEmployee"; import { useChangePassword } from "../../components/Context/ChangePasswordContext"; const EmployeeProfile = () => { const { profile } = useProfile(); const projectID = useSelector((store) => store.localVariables.projectId); const { employeeId } = useParams(); // const {employee,loading} = useEmployeeProfile(employeeId) const [loading, setLoading] = useState(true); const [SearchParams] = useSearchParams(); const tab = SearchParams.get("for"); const [activePill, setActivePill] = useState(tab); const [currentEmployee, setCurrentEmployee] = useState(); const [showModal, setShowModal] = useState(false); const handlePillClick = (pillKey) => { setActivePill(pillKey); }; const closeModal = () => { setShowModal(false); fetchEmployeeProfile(employeeId); }; const handleShow = () => setShowModal(true); const fetchEmployeeProfile = async (employeeID) => { try { const resp = await EmployeeRepository.getEmployeeProfile(employeeID); setCurrentEmployee(resp.data); setLoading(false); } catch (err) { setLoading(false); } }; useEffect(() => { if (employeeId) { fetchEmployeeProfile(employeeId); } }, [employeeId]); const navigate = useNavigate(); const renderContent = () => { if (loading) return
{`${currentEmployee?.firstName} ${currentEmployee?.lastName}`}
| Email: | {currentEmployee?.email || NA} | 
| Phone Number: | {currentEmployee?.phoneNumber || NA} | 
| Emergency Contact Person: | {currentEmployee?.emergencyContactPerson || ( NA )} | 
| Emergency Contact Number: | {currentEmployee?.emergencyPhoneNumber || ( NA )} | 
| Gender: | {currentEmployee?.gender || NA} | 
| Birth Date: | {currentEmployee?.birthDate ? ( new Date( currentEmployee.birthDate ).toLocaleDateString() ) : ( NA )} | 
| Joining Date: | {currentEmployee?.joiningDate ? ( new Date( currentEmployee.joiningDate ).toLocaleDateString() ) : ( NA )} | 
| Job Role: | {currentEmployee?.jobRole || NA} | 
| Address: | {currentEmployee?.currentAddress || ( NA )} |