added two date and service-name column inside ProjectAssignedOrgslist and fixed inactive fn in project team

This commit is contained in:
pramod.mahajan 2025-10-06 10:58:07 +05:30
parent 7505b790a7
commit 470421b730
2 changed files with 40 additions and 18 deletions

View File

@ -1,6 +1,7 @@
import React from "react";
import { useProjectAssignedOrganizations } from "../../../hooks/useProjects";
import { useSelectedProject } from "../../../slices/apiDataManager";
import { formatUTCToLocalTime } from "../../../utils/dateUtils";
const ProjectAssignedOrgs = () => {
const selectedProject = useSelectedProject();
@ -47,18 +48,33 @@ const ProjectAssignedOrgs = () => {
),
align: "text-center",
},
{
key: "isActive",
label: "Status",
{
key: "organizationType",
label: "Organization Type",
getValue: (org) => (
<span
className={`text-truncate d-inline-block badge bg-label-${org.isActive ? "primary" :"secondary"}`}
style={{ maxWidth: "80px" }}
className="text-truncate d-inline-block"
style={{ maxWidth: "200px" }}
>
{org?.isActive ? "Active" : "Inactive"}
{org?.organizationType || "N/A"}
</span>
),
align: "text-start",
align: "text-center",
},
{
key: "assignedDate",
label: "Assigned Date",
getValue: (org) => (
<span
className="text-truncate d-inline-block"
style={{ maxWidth: "200px" }}
>
{/* {org?.assignedDate || "N/A"} */}
{formatUTCToLocalTime(org?.assignedDate)}
</span>
),
align: "text-center",
},
];

View File

@ -93,20 +93,26 @@ const Teams = () => {
};
const filteredEmployees = useMemo(() => {
if (!projectEmployees || !searchTerm?.trim()) return projectEmployees;
if (!projectEmployees) return [];
const lower = searchTerm.toLowerCase();
let filtered = projectEmployees;
return projectEmployees?.filter((emp) => {
const fullName = `${emp.firstName ?? ""} ${
emp.lastName ?? ""
}`.toLowerCase();
if (activeEmployee) {
filtered = projectEmployees.filter((emp) => !emp.isActive);
}
const joberole = getJobRole(emp?.jobRoleId)?.toLowerCase();
// Apply search filter if present
if (searchTerm?.trim()) {
const lower = searchTerm.toLowerCase();
filtered = filtered.filter((emp) => {
const fullName = `${emp.firstName ?? ""} ${emp.lastName ?? ""}`.toLowerCase();
const jobRole = getJobRole(emp?.jobRoleId)?.toLowerCase();
return fullName.includes(lower) || jobRole.includes(lower);
});
}
return fullName?.includes(lower) || joberole?.includes(lower);
});
}, [projectEmployees, searchTerm]);
return filtered;
}, [projectEmployees, searchTerm, activeEmployee]);
const handleSearch = (e) => setSearchTerm(e.target.value);
const employeeHandler = useCallback(
(msg) => {
@ -317,7 +323,7 @@ const Teams = () => {
{!employeeLodaing && filteredEmployees.length === 0 && (
<div className="text-center text-muted py-3 d-flex justify-content-center align-items-center py-12">
<p>
{!activeEmployee
{activeEmployee
? "No active employees assigned to the project"
: "No inactive employees assigned to the project"}
</p>