- Check Point

Signed-off-by: Dave Richer <dave@imexsystems.ca>
This commit is contained in:
Dave Richer
2024-08-02 15:49:09 -04:00
parent a297bba193
commit fb7e3bc812
12 changed files with 203 additions and 41 deletions

View File

@@ -1,6 +1,6 @@
// Function to sort an array of objects by parentId
import { groupBy } from "lodash";
// Function to sort an array of objects by parentId
const sortByParentId = (arr) => {
let parentId = "-1";
const sortedList = [];
@@ -28,7 +28,7 @@ const sortByParentId = (arr) => {
};
// Function to create board data based on statuses and jobs, with optional filtering
export const createBoardData = ({ statuses, data, filter }) => {
export const createBoardData = ({ statuses, data, filter, cardSettings }) => {
const { search, employeeId } = filter;
const lanes = statuses.map((status) => ({
@@ -37,9 +37,21 @@ export const createBoardData = ({ statuses, data, filter }) => {
cards: []
}));
const filteredJobs =
let filteredJobs =
(search === "" || !search) && !employeeId ? data : data.filter((job) => checkFilter(search, employeeId, job));
// Filter jobs by selectedMdInsCos if it has values
if (cardSettings?.selectedMdInsCos?.length > 0) {
filteredJobs = filteredJobs.filter((job) => cardSettings.selectedMdInsCos.includes(job.ins_co_nm));
}
// Filter jobs by selectedEstimators if it has values
if (cardSettings?.selectedEstimators?.length > 0) {
filteredJobs = filteredJobs.filter((job) =>
cardSettings.selectedEstimators.includes(`${job.est_ct_fn} ${job.est_ct_ln}`)
);
}
const DataGroupedByStatus = groupBy(filteredJobs, "status");
Object.keys(DataGroupedByStatus).forEach((statusGroupKey) => {