Commit 748b9923 authored by Ramadevi Guduri's avatar Ramadevi Guduri

admin profile

parent 32c2f310
...@@ -6,10 +6,8 @@ import Tabs from "./tabs"; ...@@ -6,10 +6,8 @@ import Tabs from "./tabs";
const AdminProfile = () => { const AdminProfile = () => {
const dispatch = useDispatch(); const dispatch = useDispatch();
const { user, loading, error } = useSelector((state) => state.userDetails); // Get user data from Redux store const { user,error,loading } = useSelector((state) => state.userDetails); // Get user data from Redux store
if (loading) return <div>Loading...</div>; if (loading) return <div>Loading...</div>;
if (error) return <div>Error: {error}</div>; if (error) return <div>Error: {error}</div>;
......
import React, { useState } from "react"; import React, { useEffect, useState } from "react";
import { useSelector, useDispatch } from "react-redux"; import { useSelector, useDispatch } from "react-redux";
import {fetchReporteeActivities} from '../../redux/reducers/viewreporteeSlice' import { fetchProfileReporteeActivities } from "../../redux/reducers/profileSlice";
import Accordion from "../../components/accordion"; import Table from "../../components/table/index";
import profileSlice from "../../redux/reducers/profileSlice"; import { convertUTCToLocal } from "../../utils/commonFunctions";
import Loading from "../../components/loading Component/Loading";
const Tabs = () => { const Tabs = () => {
const [index, setIndex] = useState(0);
const [index, setIndex] = useState(0); const dispatch = useDispatch();
const dispatch = useDispatch(); const { reports, loading, error, dutiesReports, initiativeReports } =
const { reports, loading, error, dutiesReports, initiativeReports } = useSelector((state) => state.reports); useSelector((state) => state.reports);
const {reportees, viewReportee,currPage, reporteeId } = useSelector((state) => state.reportees); const { user } = useSelector((state) => state.userDetails);
// console.log(dutiesReports);
const fetchActivities = (type) => { // console.log(initiativeReports);
const data ={ const fetchActivities = (type) => {
empId:viewReportee?.empId, const data = {
types:[type], empId: user?.empId,
page: 1, types: [type],
perPage: 5 page: 1,
} perPage: 5,
dispatch(fetchReporteeActivities(data)) };
} console.log(data);
dispatch(fetchProfileReporteeActivities(data));
console.log(fetchActivities) };
useEffect(() => {
return ( fetchActivities("duties");
<> }, []);
const headers = [
{ title: "Activity Name", id: "aName" },
<div className="text-sm font-medium text-center text-gray-500 border-b border-gray-200 dark:text-gray-400 "> {
<ul className="flex flex-wrap -mb-px"> title: "Date",
id: "recorded_date",
<li className="me-2" onClick={()=>{}}> render: (value) => convertUTCToLocal(value),
<button onClick={()=>{setIndex(0); fetchActivities('duties')}} className="inline-block p-4 text-blue-600 border-b-2 border-blue-600 dark:text-blue-500 " >Duties</button> },
</li> { title: "Rated By", id: "ratedBy" },
<li className="me-2"> {
<button onClick={()=>{setIndex(index+1); fetchActivities('initiative')}} className="inline-block p-4 border-b-2 border-transparent hover:text-gray-600 hover:border-gray-300 " >Initiatives</button> title: "Score",
</li> id: "score",
render: (value) => (
</ul> <div className="w-[35px] px-3 bg-blue-400 rounded-full text-white font-bold text-center p-[4px]">
{value}
{index === 0 ? <div> </div>
{/* <Accordion data={dutiesReports} /> */} ),
Duties },
</div> : <div> {
<p>Intiatives </p> title: "Comments",
</div>} id: "comments",
render: (value) => (
<span className="listData" title={value}>
{value}
</span>
),
</div> },
];
return (
</> <>
) <div className="text-sm font-medium text-center text-gray-500 border-b border-gray-200 dark:text-gray-400 ">
<ul className="flex flex-wrap -mb-px">
} <li className="me-2" onClick={() => {}}>
<button
export default Tabs; onClick={() => {
\ No newline at end of file setIndex(0);
fetchActivities("duties");
}}
className="inline-block p-4 text-blue-600 border-b-2 border-blue-600 dark:text-blue-500 "
>
Duties
</button>
</li>
<li className="me-2">
<button
onClick={() => {
setIndex(index + 1);
fetchActivities("initiative");
}}
className="inline-block p-4 border-b-2 border-transparent hover:text-gray-600 hover:border-gray-300 "
>
Initiatives
</button>
</li>
</ul>
</div>
<div className="">
{index === 0 ? (
<div>
<Table headers={headers}
loading={loading}
data={dutiesReports} />
</div>
) : (
<div>
<Table
headers={headers}
loading={loading}
data={initiativeReports} />
</div>
)}
</div>
</>
);
};
export default Tabs;
...@@ -63,7 +63,7 @@ function Dashboard() { ...@@ -63,7 +63,7 @@ function Dashboard() {
}, [userDetails]); }, [userDetails]);
useEffect(() => { useEffect(() => {
debugger
if(inputValue!==null){ if(inputValue!==null){
const debounceTimeout = setTimeout(() => { const debounceTimeout = setTimeout(() => {
const data = { const data = {
......
...@@ -6,7 +6,7 @@ import { loginUser } from "../../redux/reducers/userSlice"; ...@@ -6,7 +6,7 @@ import { loginUser } from "../../redux/reducers/userSlice";
import {useDispatch,useSelector} from 'react-redux' import {useDispatch,useSelector} from 'react-redux'
function Home() { function Home() {
debugger
const inputRef = useRef(null); const inputRef = useRef(null);
const navigate = useNavigate(); const navigate = useNavigate();
const dispatch=useDispatch() const dispatch=useDispatch()
...@@ -17,7 +17,7 @@ function Home() { ...@@ -17,7 +17,7 @@ function Home() {
const handleSubmit = async (e) => { const handleSubmit = async (e) => {
debugger
e.preventDefault(); e.preventDefault();
setLoading(true) setLoading(true)
if(id!==null){ if(id!==null){
...@@ -37,12 +37,12 @@ function Home() { ...@@ -37,12 +37,12 @@ function Home() {
}; };
useEffect(()=>{ useEffect(()=>{
debugger
setLoading(false) setLoading(false)
inputRef.current.focus(); inputRef.current.focus();
},[]) },[])
useEffect(()=>{ useEffect(()=>{
debugger
if (userDetails?.user!=null) if (userDetails?.user!=null)
navigate("/dashboard") navigate("/dashboard")
else else
......
...@@ -9,7 +9,7 @@ import {scoreColor} from '../../utils/commonFunctions'; ...@@ -9,7 +9,7 @@ import {scoreColor} from '../../utils/commonFunctions';
function Viewreportee() { function Viewreportee() {
debugger
const dispatch = useDispatch(); const dispatch = useDispatch();
const navigate = useNavigate(); const navigate = useNavigate();
const {reportees, viewReportee,currPage, reporteeId } = useSelector((state) => state.reportees); const {reportees, viewReportee,currPage, reporteeId } = useSelector((state) => state.reportees);
...@@ -101,14 +101,7 @@ function Viewreportee() { ...@@ -101,14 +101,7 @@ function Viewreportee() {
<div className="p-4" > <div className="p-4" >
<div className="bg-white p-3 rounded-md"> <div className="bg-white p-3 rounded-md">
<div className="flex justify-between"> <div className="flex justify-between">
{/* <div className="my-1">
<p>
<span className="font-medium">Employee Name: </span> {viewReportee?.empName}
</p>
<p>
<span className="font-medium">Designation: </span> {viewReportee?.designation}
</p>
</div> */}
<div className="flex items-center"> <div className="flex items-center">
<div> <div>
<p className="font-medium mb-2"> <p className="font-medium mb-2">
......
...@@ -2,11 +2,10 @@ import { createSlice, createAsyncThunk } from "@reduxjs/toolkit"; ...@@ -2,11 +2,10 @@ import { createSlice, createAsyncThunk } from "@reduxjs/toolkit";
import axiosApi from '../../api/axiosConfig' import axiosApi from '../../api/axiosConfig'
const initialState = { const initialState = {
reports: null, reports:null,
dutiesReports: null, dutiesReports: null,
initiativeReports: null, initiativeReports: null,
loading: false,
loading: false,
error: null, error: null,
}; };
...@@ -18,11 +17,11 @@ export const fetchProfileReporteeActivities = createAsyncThunk("getReports", asy ...@@ -18,11 +17,11 @@ export const fetchProfileReporteeActivities = createAsyncThunk("getReports", asy
const reportSlice = createSlice({ const profileSlice = createSlice({
name: "reportees", name: "reportees",
initialState, initialState,
reducers: { reducers: {
resetReports:() => { resetActivities:() => {
return initialState return initialState
}, },
}, },
...@@ -42,6 +41,6 @@ const reportSlice = createSlice({ ...@@ -42,6 +41,6 @@ const reportSlice = createSlice({
}, },
}); });
export const {resetReports} = reportSlice.actions; export const {resetActivities} = profileSlice.actions;
export default reportSlice.reducer; export default profileSlice.reducer;
...@@ -2,11 +2,13 @@ import {resetUser} from '../redux/reducers/userSlice'; ...@@ -2,11 +2,13 @@ import {resetUser} from '../redux/reducers/userSlice';
import {resetReportees} from '../redux/reducers/reporteesSlice'; import {resetReportees} from '../redux/reducers/reporteesSlice';
import { resetReports } from '../redux/reducers/viewreporteeSlice'; import { resetReports } from '../redux/reducers/viewreporteeSlice';
import {resetReporteesTableData} from '../redux/reducers/exporttableslice'; import {resetReporteesTableData} from '../redux/reducers/exporttableslice';
import { resetActivities } from '../redux/reducers/profileSlice';
const clearStore = (dispatch) => { const clearStore = (dispatch) => {
dispatch(resetUser()); dispatch(resetUser());
dispatch(resetReportees()); dispatch(resetReportees());
dispatch(resetReports()) dispatch(resetReports())
dispatch(resetReporteesTableData()) dispatch(resetReporteesTableData())
dispatch(resetActivities())
}; };
export default clearStore; export default clearStore;
\ No newline at end of file
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