From 42208cf54006344813f573606fa644b103c1979a Mon Sep 17 00:00:00 2001 From: fakz9 Date: Sat, 10 Aug 2024 03:49:20 +0300 Subject: [PATCH] feat: comment in WorkTimeTable --- .../WorkTimeTable/hooks/useWorkTableColumns.tsx | 15 +++++++++++++-- .../tabs/WorkTimeTable/ui/WorkTimeTable.tsx | 2 ++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/pages/AdminPage/tabs/WorkTimeTable/hooks/useWorkTableColumns.tsx b/src/pages/AdminPage/tabs/WorkTimeTable/hooks/useWorkTableColumns.tsx index 2c03b32..867c0d6 100644 --- a/src/pages/AdminPage/tabs/WorkTimeTable/hooks/useWorkTableColumns.tsx +++ b/src/pages/AdminPage/tabs/WorkTimeTable/hooks/useWorkTableColumns.tsx @@ -1,7 +1,7 @@ import {useMemo} from "react"; import {MRT_ColumnDef} from "mantine-react-table"; import {getDayOfWeek} from "../../../../../shared/lib/date.ts"; -import {Box, Flex, NumberInput, rem} from "@mantine/core"; +import {Box, Flex, NumberInput, rem, Text} from "@mantine/core"; import {isNumber, last} from "lodash"; import {processSelectedCells} from "../../../../../shared/lib/interpolateCells.ts"; import {TimeTrackingData} from "../../../../../client"; @@ -11,6 +11,7 @@ export type EmployeeData = { name: string; userId: number; totalAmount: number; + comment: string; // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-expect-error data?: TimeTrackingData[], @@ -61,7 +62,17 @@ const useWorkTableColumns = ({ return useMemo[]>(() => [ { accessorKey: "name", - header: "ФИО" + header: "ФИО", + Cell: ({row}) => ( + + + {row.original.name} + + + {row.original.comment} + + + ) }, ...range.map(date => ({ diff --git a/src/pages/AdminPage/tabs/WorkTimeTable/ui/WorkTimeTable.tsx b/src/pages/AdminPage/tabs/WorkTimeTable/ui/WorkTimeTable.tsx index a273343..f6d2585 100644 --- a/src/pages/AdminPage/tabs/WorkTimeTable/ui/WorkTimeTable.tsx +++ b/src/pages/AdminPage/tabs/WorkTimeTable/ui/WorkTimeTable.tsx @@ -50,6 +50,7 @@ const WorkTimeTable = () => { const existingUserIds = trackingRecords.map(tr => tr.user.id); const firstResult = trackingRecords.map((record) => ({ name: `${record.user.firstName} ${record.user.secondName}`, + comment: record.user.comment, userId: record.user.id, totalAmount: record.totalAmount, data: record.data, @@ -63,6 +64,7 @@ const WorkTimeTable = () => { const restUsersResult = users.filter(user => !existingUserIds.includes(user.id)).map(user => ({ name: `${user.firstName} ${user.secondName}`, userId: user.id, + comment: user.comment, totalAmount: 0, ...Object.fromEntries(getDatesInMonth(month).reduce((acc, day) => { return acc.set(day.date().toString(), 0);