pagination and functianility changed

parent 32070493
...@@ -12,7 +12,7 @@ const PaginationComponent = ({ currentPage, totalPages, onPageChange }) => { ...@@ -12,7 +12,7 @@ const PaginationComponent = ({ currentPage, totalPages, onPageChange }) => {
return ( return (
<nav className="flex justify-center my-2"> <nav className="flex justify-center my-2">
<ul className="pagination flex"> <ul className="pagination flex">
<button disabled={currentPage === 1} onClick={() => onPageChange(currentPage-1)} className='mr-2 hover:bg-blue-400 border rounded disabled:bg-gray-200'><LeftIcon /></button> <button disabled={currentPage === 1} onClick={() => onPageChange(currentPage-1)} className={`ml-2 hover:bg-blue-400 border-0 bg-transparent rounded ${currentPage===1 ? "hidden":null}`}><LeftIcon /></button>
{pageNumbers.map(number => ( {pageNumbers.map(number => (
<li key={number} className={`page-item ${number === currentPage ? 'active' : ''}` }> <li key={number} className={`page-item ${number === currentPage ? 'active' : ''}` }>
<button onClick={() => onPageChange(number)} className=" w-[22px] font-bold h-[22px] "> <button onClick={() => onPageChange(number)} className=" w-[22px] font-bold h-[22px] ">
...@@ -20,7 +20,7 @@ const PaginationComponent = ({ currentPage, totalPages, onPageChange }) => { ...@@ -20,7 +20,7 @@ const PaginationComponent = ({ currentPage, totalPages, onPageChange }) => {
</button> </button>
</li> </li>
))} ))}
<button disabled={currentPage === totalPages} onClick={() => onPageChange(currentPage+1)} className='ml-2 hover:bg-blue-400 border rounded disabled:bg-gray-200'><RightIcon/></button> <button disabled={currentPage === totalPages} onClick={() => onPageChange(currentPage+1)} className={`ml-2 hover:bg-blue-400 border-0 bg-transparent rounded ${currentPage===totalPages ? "hidden":null}`}><RightIcon/></button>
</ul> </ul>
</nav> </nav>
); );
......
...@@ -19,16 +19,15 @@ function LeftSidebar() { ...@@ -19,16 +19,15 @@ function LeftSidebar() {
const debounceTimeout = setTimeout(() => { const debounceTimeout = setTimeout(() => {
const data = { const data = {
reportees: userDetails.user.reportees, reportees: userDetails.user.reportees,
page: currPage, page: (inputValue==="")?currPage:1,
perPage: 10, perPage: 10,
searchText:inputValue searchText:inputValue
}; };
dispatch(fetchReportees(data)); dispatch(fetchReportees(data));
}, 1000); }, 1000);
return () => clearTimeout(debounceTimeout); return () => clearTimeout(debounceTimeout);
} }
}, [inputValue]); }, [inputValue]);
const handleChange = (event) => { const handleChange = (event) => {
...@@ -85,11 +84,15 @@ function LeftSidebar() { ...@@ -85,11 +84,15 @@ function LeftSidebar() {
</div> </div>
} }
<div> <div>
<PaginationComponent {
reportees.length>0 && pagesCount>1 && (
<PaginationComponent
currentPage={currPage} currentPage={currPage}
totalPages={pagesCount} totalPages={pagesCount}
onPageChange={handlePageChange} onPageChange={handlePageChange}
/> />
)
}
</div> </div>
</div> </div>
); );
......
...@@ -22,7 +22,7 @@ function Sidebar() { ...@@ -22,7 +22,7 @@ function Sidebar() {
<ul className="space-y-1.5"> <ul className="space-y-1.5">
{ {
menus.map((menu) => ( menus.map((menu) => (
<li> <li key={menu.path}>
<Link <Link
className={`flex items-center ${url.includes(menu.path) && 'bg-gray-100'} gap-x-3.5 py-2 px-2.5 text-sm text-slate-700 rounded-lg hover:bg-gray-100 `} className={`flex items-center ${url.includes(menu.path) && 'bg-gray-100'} gap-x-3.5 py-2 px-2.5 text-sm text-slate-700 rounded-lg hover:bg-gray-100 `}
to={menu.path} to={menu.path}
......
...@@ -57,7 +57,7 @@ function Dashboard() { ...@@ -57,7 +57,7 @@ function Dashboard() {
const debounceTimeout = setTimeout(() => { const debounceTimeout = setTimeout(() => {
const data = { const data = {
reportees: userDetails.user.reportees, reportees: userDetails.user.reportees,
page: currPage, page: 1,
perPage: 10, perPage: 10,
searchText:inputValue searchText:inputValue
}; };
...@@ -125,9 +125,8 @@ function Dashboard() { ...@@ -125,9 +125,8 @@ function Dashboard() {
<Table headers={headers} data={reportees} loading={loading} maxHeight={88} /> <Table headers={headers} data={reportees} loading={loading} maxHeight={88} />
<div className=""> <div className="">
{reportees.length>0 && ( {reportees.length>0 && pagesCount>1 && (
<div className="flex justify-center mt-2"> <div className="flex justify-center mt-2">
{/* <div className="text-blue-500">Total Results: {pagesCount}</div> */}
{pagesCount >= 1 && ( {pagesCount >= 1 && (
<PaginationComponent <PaginationComponent
currentPage={currPage} currentPage={currPage}
......
...@@ -20,7 +20,6 @@ function Exporttable() { ...@@ -20,7 +20,6 @@ function Exporttable() {
const [fromDate, setFromDate] = useState(""); const [fromDate, setFromDate] = useState("");
const [toDate, setToDate] = useState(""); const [toDate, setToDate] = useState("");
const [inputValue, setInputValue] = useState(''); const [inputValue, setInputValue] = useState('');
console.log(activitiesData, "activitiesData");
const calculateDateRange = (monthsAgo) => { const calculateDateRange = (monthsAgo) => {
const toDate = new Date().toISOString().split("T")[0]; const toDate = new Date().toISOString().split("T")[0];
...@@ -54,7 +53,6 @@ function Exporttable() { ...@@ -54,7 +53,6 @@ function Exporttable() {
fromDate: fromDate, fromDate: fromDate,
toDate: toDate, toDate: toDate,
}; };
console.log(data, "data");
dispatch(fetchReportesActivitiesData(data)); dispatch(fetchReportesActivitiesData(data));
}; };
......
...@@ -74,12 +74,7 @@ function Viewreportee() { ...@@ -74,12 +74,7 @@ function Viewreportee() {
useEffect(()=>{ useEffect(()=>{
if(reportees.length>0 && viewReportee !== null ) if(reportees.length>0 && viewReportee !== null )
dispatch(fetchActivitiesAvg({empId:viewReportee?.empId, types:["duties", "initiative"]})) dispatch(fetchActivitiesAvg({empId:viewReportee?.empId, types:["duties", "initiative"]}))
},[reportees,viewReportee]) dispatch(setViewReportee(viewReportee?.empId))
useEffect(()=>{
if(reportees.length>0 && viewReportee !== null){
dispatch(setViewReportee(viewReportee?.empId))
}
},[reportees,viewReportee]) },[reportees,viewReportee])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment