timesheet

This commit is contained in:
JaiPandey425 2025-12-10 18:46:57 +05:30
parent 6c223f01c9
commit 882f4acad8
1 changed files with 9 additions and 9 deletions

View File

@ -52,10 +52,11 @@ const Timesheets: React.FC = () => {
const { windowLogs } = useSelector((state: RootState) => state.window);
console.log(" Timesheet in component:", windowLogs);
const [projectsData, setProjectsData] = useState<Project[]>([]);
const [logs, setLogs] = useState([]);
const [selectedProject, setSelectedProject] = useState<string | null>(null);
// const [selectedProject, setSelectedProject] = useState<string | null>(null);
const [selectedProjectName, setSelectedProjectName] = useState<string>("");
const [modalOpen, setModalOpen] = useState(false);
const [loading, setLoading] = useState(false);
@ -63,9 +64,13 @@ const Timesheets: React.FC = () => {
const [lastRefreshed, setLastRefreshed] = useState<Date | null>(null);
const [initialLoading, setInitialLoading] = useState(true);
const [tick, setTick] = useState(0);
const { selectedProject } =
useSelector((state: any) => state.projects);
const activeProjects = projectsData.filter(p => p.status === "ACTIVE");
console.log("selectedProject", selectedProject.projectId)
useEffect(() => {
const interval = setInterval(() => {
@ -84,7 +89,6 @@ const Timesheets: React.FC = () => {
};
const fetchProjects = async () => {
setInitialLoading(true);
try {
@ -120,7 +124,7 @@ const Timesheets: React.FC = () => {
try {
setModalOpen(true);
setLoading(true);
setSelectedProject(projectID);
// setSelectedProject(projectID);
setSelectedProjectName(projectName);
console.log("projectID", projectID)
@ -154,10 +158,6 @@ const Timesheets: React.FC = () => {
return parts.slice(0, 2).join(" ");
};
// Skeleton loader rows
const renderSkeletonRows = () => {
return Array.from({ length: 5 }).map((_, index) => (
@ -225,13 +225,13 @@ const Timesheets: React.FC = () => {
<td>{formatWorkTime(entry.totalWorkTime)}</td>
<td>
<button
disabled={formatWorkTime(entry.totalWorkTime) === "0h 0m"}
disabled={(formatWorkTime(entry.totalWorkTime) === "0h 0m" || (isTracking && entry.projectId === selectedProject.projectId))}
onClick={() =>
handleViewLogs(entry.projectId, entry.projectName)
}
className="btn btn-ghost btn-xs"
>
{formatWorkTime(entry.totalWorkTime) === "0h 0m" ? (
{(formatWorkTime(entry.totalWorkTime) === "0h 0m" || (isTracking && entry.projectId === selectedProject.projectId)) ? (
<EyeOff size={16} />
) : (
<Eye size={16} />