From 9ad3b8726c2e6f233f6c6d16fa82bd65a38c4cba Mon Sep 17 00:00:00 2001 From: Kartik Sharma Date: Tue, 25 Nov 2025 18:09:32 +0530 Subject: [PATCH 01/11] At Assigned Employee when selecting a Job role it change according to master now show correct data. --- .../Project/Team/TeamEmployeeList.jsx | 51 ++++++++++--------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/src/components/Project/Team/TeamEmployeeList.jsx b/src/components/Project/Team/TeamEmployeeList.jsx index c24e10d1..1cc65a09 100644 --- a/src/components/Project/Team/TeamEmployeeList.jsx +++ b/src/components/Project/Team/TeamEmployeeList.jsx @@ -10,11 +10,13 @@ import { import useMaster, { useServices } from "../../../hooks/masterHook/useMaster"; import showToast from "../../../services/toastService"; import { useOrganizationEmployees } from "../../../hooks/useOrganization"; +import { useDispatch } from "react-redux"; +import { changeMaster } from "../../../slices/localVariablesSlice"; const TeamEmployeeList = ({ organizationId, searchTerm, closeModal }) => { const selectedProject = useSelectedProject(); const debounceSearchTerm = useDebounce(searchTerm, 500); - + const dispatch = useDispatch(); const { data: employeesData = [], isLoading, @@ -45,6 +47,7 @@ const TeamEmployeeList = ({ organizationId, searchTerm, closeModal }) => { }); useEffect(() => { + dispatch(changeMaster("Job Role")); if (employeesData?.data?.length > 0) { const available = employeesData.data.filter((emp) => { const projEmp = projectEmployees.find((pe) => pe.employeeId === emp.id); @@ -119,7 +122,7 @@ const TeamEmployeeList = ({ organizationId, searchTerm, closeModal }) => { status: true, })); - handleAssignEmployee({ payload,actionType:"assign"} ); + handleAssignEmployee({ payload, actionType: "assign" }); setEmployees((prev) => prev.map((emp) => ({ @@ -132,26 +135,26 @@ const TeamEmployeeList = ({ organizationId, searchTerm, closeModal }) => { ); }; -if (isLoading) { - return (

Loading employees...

) ; -} + if (isLoading) { + return (

Loading employees...

); + } -if (isError) { - return ( -
- {error?.status === 400 ? ( -

Enter employee you want to find.

- ) : ( -

Something went wrong. Please try again later.

- )} -
+ if (isError) { + return ( +
+ {error?.status === 400 ? ( +

Enter employee you want to find.

+ ) : ( +

Something went wrong. Please try again later.

+ )} +
- ); -} + ); + } -if (employees.length === 0) { - return(

No available employees to assign.

) ; -} + if (employees.length === 0) { + return (

No available employees to assign.

); + } return ( @@ -183,9 +186,8 @@ if (employees.length === 0) { onChange={(e) => handleSelectChange(index, "serviceId", e.target.value) } - className={`form-select form-select-sm w-auto border-none rounded-0 py-1 px-auto ${ - emp.errors.serviceId ? "is-invalid" : "" - }`} + className={`form-select form-select-sm w-auto border-none rounded-0 py-1 px-auto ${emp.errors.serviceId ? "is-invalid" : "" + }`} > {services?.map((s) => ( @@ -205,9 +207,8 @@ if (employees.length === 0) { onChange={(e) => handleSelectChange(index, "jobRole", e.target.value) } - className={`form-select form-select-sm w-auto border-none rounded-0 py-1 px-auto ${ - emp.errors.jobRole ? "is-invalid" : "" - }`} + className={`form-select form-select-sm w-auto border-none rounded-0 py-1 px-auto ${emp.errors.jobRole ? "is-invalid" : "" + }`} > {jobRoles?.map((r) => ( From 949126d790789d6fdf8159c74fceccb92b7b7a3e Mon Sep 17 00:00:00 2001 From: Kartik Sharma Date: Thu, 4 Dec 2025 15:20:08 +0530 Subject: [PATCH 02/11] Adding height in ServiceProjectTeamlist. --- .../ServiceProjectTeam/ServiceProjectTeamList.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/ServiceProject/ServiceProjectTeam/ServiceProjectTeamList.jsx b/src/components/ServiceProject/ServiceProjectTeam/ServiceProjectTeamList.jsx index a87ee7ec..83d7d879 100644 --- a/src/components/ServiceProject/ServiceProjectTeam/ServiceProjectTeamList.jsx +++ b/src/components/ServiceProject/ServiceProjectTeam/ServiceProjectTeamList.jsx @@ -66,7 +66,7 @@ const ServiceProjectTeamList = () => { {data?.length > 0 ? ( data.map((row) => ( - + {servceProjectColmen.map((col) => ( {col.getValue(row)} ))} From 65043732d3e1d8891ced4a179df3bc2015a0a627 Mon Sep 17 00:00:00 2001 From: Kartik Sharma Date: Thu, 4 Dec 2025 16:03:55 +0530 Subject: [PATCH 03/11] Adding Tabs in attendancepage just like View Jobs. --- src/pages/Activities/AttendancePage.jsx | 160 +++++++++++++----------- 1 file changed, 84 insertions(+), 76 deletions(-) diff --git a/src/pages/Activities/AttendancePage.jsx b/src/pages/Activities/AttendancePage.jsx index 5b07002e..0c8791f5 100644 --- a/src/pages/Activities/AttendancePage.jsx +++ b/src/pages/Activities/AttendancePage.jsx @@ -59,7 +59,7 @@ const AttendancePage = () => { if (selectedProject == null) { dispatch(setProjectId(projectNames[0]?.id)); } - dispatch(setOrganization(appliedFilters?.selectedOrganization)) + dispatch(setOrganization(appliedFilters?.selectedOrganization)); }, [appliedFilters?.selectedOrganization]); const getRole = (roleId) => { @@ -94,6 +94,49 @@ const AttendancePage = () => { setSearchTerm(""); // Reset search term when tab changes }; + // --- START: Tab Configuration Array + const tabsData = [ + { + id: "all", + title: "Today's", + content: ( + + ), + }, + { + id: "logs", + title: "Logs", + content: ( + + ), + }, + // Conditionally include Regularization tab based on permission + ...(DoRegularized + ? [ + { + id: "regularization", + title: "Regularization", + content: ( + + ), + }, + ] + : []), + ]; + // --- END: Tab Configuration Array + return ( <> {isCreateModalOpen && modelConfig && ( @@ -114,9 +157,7 @@ const AttendancePage = () => { {modelConfig?.action === 6 && ( )} - {modelConfig?.action === 7 && ( - - )} + {modelConfig?.action === 7 && } )} @@ -129,57 +170,39 @@ const AttendancePage = () => { >
- {/* Tabs */} -
+ {/* Tabs header with search and filter */} +
- {/* Tabs */} -
+ {/* Tabs Buttons */} +
    -
  • - -
  • -
  • - -
  • - -
  • - -
  • + + + ))}
{/* Search + Organization filter */} -
+