Skip to content

Commit

Permalink
feat/ teams2
Browse files Browse the repository at this point in the history
  • Loading branch information
k0t1k777 committed Aug 16, 2024
1 parent 8b9308f commit 915fa47
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 30 deletions.
21 changes: 3 additions & 18 deletions src/pages/NewTeam/NewTeam.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -86,21 +86,6 @@ export default function NewTeam() {
}


// useEffect(() => {
// const newCards = allCards.map((employee, index) => {
// const updatedSubordinates = Array.isArray(employee.subordinates)
// ? employee.subordinates.map((subordinate, subIndex) => ({
// ...subordinate,
// cellId: `${subIndex}-${index + 1}`,
// }))
// : [];

// return {
// ...employee,
// subordinates: updatedSubordinates,
// cellId: index === 0 ? '1-0' : undefined,
// };
// });

// setUpdatedCards(newCards);
// }, [allCards]);
// Если больше трёх подчинённых, распределяем их по колонкам
// newColumn = parColumn + subIndex - Math.floor(subordinatesCount / 2); // Центрируем подчинённых
// }
38 changes: 26 additions & 12 deletions src/pages/Teams/Teams.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ export default function Teams() {
const { id } = useParams();
const dispatch = useAppDispatch();
const { teams, team } = useAppSelector(selectTeams);
console.log('team: ', team);
// console.log('team: ', team);

const [arrows, setArrows] = useState<JSX.Element[]>([]);
Expand All @@ -41,17 +42,32 @@ export default function Teams() {
};

// Рекурсивная функция для добавления cellId
const assignCellIds = (employee: membersProps, column: number, row: number): membersProps => {
const updatedSubordinates = Array.isArray(employee.subordinates)
? employee.subordinates.map((subordinate, subIndex) =>
assignCellIds(subordinate, column + 1, subIndex) // Увеличиваем column на 1
)
: [];
const assignCellIds = (employee, column, row) => {
const subordinates = Array.isArray(employee.subordinates) ? employee.subordinates : [];

// Установка cellId для родителя
const cellId = `${column}-${row}`;

// Если у сотрудника нет подчинённых, просто возвращаем его
if (subordinates.length === 0) {
return {
...employee,
cellId, // Установка cellId для родителя
};
}

// Логика размещения подчинённых
const updatedSubordinates = subordinates.map((subordinate, index) => {
const newRow = row + 1; // Все подчинённые будут на одной строке
const newColumn = column + index; // Каждый подчинённый будет в своей колонке

return assignCellIds(subordinate, newColumn, newRow); // Передаём новые значения колонок и рядов
});

return {
...employee,
subordinates: updatedSubordinates,
cellId: `${row}-${column}`, // Установка cellId для родителя
cellId, // Установка cellId для родителя
};
};

Expand All @@ -60,15 +76,16 @@ useEffect(() => {
assignCellIds(employee, 0, index) // Начинаем с column = 0 и row = index
);

// Устанавливаем cellId для первого элемента
// Установка cellId для первого элемента как '1-0'
if (newCards.length > 0) {
newCards[0].cellId = '1-0';
newCards[0].cellId = '1-0';
}

setUpdatedCards(newCards);
}, [allCards]);



// Собираем все в один []
useEffect(() => {
const collectCards = (card: membersProps, collected: membersProps[]) => {
Expand Down Expand Up @@ -112,9 +129,6 @@ useEffect(() => {
}
}, [team]);

console.log('allCards: ', allCards);





Expand Down

0 comments on commit 915fa47

Please sign in to comment.