From 573d7828ae14bc223c26854e4426a94d5278412a Mon Sep 17 00:00:00 2001 From: Pramod Mahajan Date: Wed, 11 Jun 2025 19:02:20 +0530 Subject: [PATCH] handle pagination - hide if record have less than 20 --- src/pages/employee/EmployeeList.jsx | 220 +++++++++++++++------------- 1 file changed, 117 insertions(+), 103 deletions(-) diff --git a/src/pages/employee/EmployeeList.jsx b/src/pages/employee/EmployeeList.jsx index 08c16658..bab53a46 100644 --- a/src/pages/employee/EmployeeList.jsx +++ b/src/pages/employee/EmployeeList.jsx @@ -9,7 +9,7 @@ import { useEmployeesAllOrByProjectId } from "../../hooks/useEmployees"; import { useProjects } from "../../hooks/useProjects"; import { useProfile } from "../../hooks/useProfile"; import { hasUserPermission } from "../../utils/authUtils"; -import { MANAGE_EMPLOYEES } from "../../utils/constants"; +import { ITEMS_PER_PAGE, MANAGE_EMPLOYEES } from "../../utils/constants"; import { clearCacheKey } from "../../slices/apiDataManager"; import { useHasUserPermission } from "../../hooks/useHasUserPermission"; import SuspendEmp from "../../components/Employee/SuspendEmp"; @@ -22,13 +22,17 @@ import { import EmployeeRepository from "../../repositories/EmployeeRepository"; import ManageEmployee from "../../components/Employee/ManageEmployee"; import ConfirmModal from "../../components/common/ConfirmModal"; -import {useSelector} from "react-redux"; +import { useSelector } from "react-redux"; import GlobalModel from "../../components/common/GlobalModel"; import AssignToProject from "./AssignToProject"; const EmployeeList = () => { -const selectedProjectId = useSelector((store) => store.localVariables.projectId); - const [ selectedProject, setSelectedProject ] = useState( () => selectedProjectId || "" ); + const selectedProjectId = useSelector( + (store) => store.localVariables.projectId + ); + const [selectedProject, setSelectedProject] = useState( + () => selectedProjectId || "" + ); const { projects, loading: projectLoading } = useProjects(); const [showInactive, setShowInactive] = useState(false); const Manage_Employee = useHasUserPermission(MANAGE_EMPLOYEES); @@ -40,7 +44,7 @@ const selectedProjectId = useSelector((store) => store.localVariables.projectId) const [employeeList, setEmployeeList] = useState([]); const [modelConfig, setModelConfig] = useState(); const [currentPage, setCurrentPage] = useState(1); - const [itemsPerPage] = useState(15); + const [itemsPerPage] = useState(ITEMS_PER_PAGE); const [isCreateModalOpen, setIsCreateModalOpen] = useState(false); const [isEmployeeModalOpen, setIsEmployeeModalOpen] = useState(false); const [searchText, setSearchText] = useState(""); @@ -50,8 +54,8 @@ const selectedProjectId = useSelector((store) => store.localVariables.projectId) const [IsDeleteModalOpen, setIsDeleteModalOpen] = useState(false); const [selectedEmpFordelete, setSelectedEmpFordelete] = useState(null); const [employeeLodaing, setemployeeLodaing] = useState(false); - const [ selectedEmployee, setSelectEmployee ] = useState( null ) - const [IsOpenAsssingModal,setOpenAssignModal] = useState(false) + const [selectedEmployee, setSelectEmployee] = useState(null); + const [IsOpenAsssingModal, setOpenAssignModal] = useState(false); const navigate = useNavigate(); const handleSearch = (e) => { @@ -195,38 +199,38 @@ const selectedProjectId = useSelector((store) => store.localVariables.projectId) }; const handleProjectSelection = (e) => { - setSelectedProject(e.target.value); + setSelectedProject(e.target.value); }; useEffect(() => { - setSelectedProject(selectedProjectId || ""); -}, [selectedProjectId]); - + setSelectedProject(selectedProjectId || ""); + }, [selectedProjectId]); return ( <> {isCreateModalOpen && ( )} - {showModal && (
-
-
- + {showModal && ( +
+
+
+ +
-
)} - + )} {IsDeleteModalOpen && (
store.localVariables.projectId)
)} - {IsOpenAsssingModal && ( setOpenAssignModal(false)}> - setOpenAssignModal( false )} /> - )} + {IsOpenAsssingModal && ( + setOpenAssignModal(false)} + > + setOpenAssignModal(false)} + /> + + )}
store.localVariables.projectId) className="dataTables_length text-start" id="DataTables_Table_0_length" > - - +
@@ -397,7 +408,9 @@ const selectedProjectId = useSelector((store) => store.localVariables.projectId) -
+