From ca9702ecb714efc277e5145b78639e6f73b4a12d Mon Sep 17 00:00:00 2001 From: M1kola Date: Mon, 13 Mar 2023 23:33:12 +0300 Subject: [PATCH] tracker --- .../ProfileCalendarComponent.js | 2 +- src/components/ReportForm/ReportForm.js | 3 +- src/components/ReportForm/reportForm.scss | 17 ++ src/images/remove.png | Bin 1140 -> 15212 bytes src/images/search.svg | 3 + src/pages/Tracker/Tracker.js | 175 ++++++++++++++++- src/pages/Tracker/tracker.scss | 176 +++++++++++++++++- src/pages/ViewReport/ViewReport.js | 2 +- 8 files changed, 369 insertions(+), 9 deletions(-) create mode 100644 src/images/search.svg diff --git a/src/components/ProfileCalendar/ProfileCalendarComponent.js b/src/components/ProfileCalendar/ProfileCalendarComponent.js index 8785702b..afbaa894 100644 --- a/src/components/ProfileCalendar/ProfileCalendarComponent.js +++ b/src/components/ProfileCalendar/ProfileCalendarComponent.js @@ -70,7 +70,7 @@ export const ProfileCalendarComponent = React.memo(({value, setValueHandler, rep

Мои отчеты:

- {month} {totalHours} {hourOfNum(totalHours)} + {month} {totalHours} {hourOfNum(totalHours)}

diff --git a/src/components/ReportForm/ReportForm.js b/src/components/ReportForm/ReportForm.js index 9fbb2e88..20a6e550 100644 --- a/src/components/ReportForm/ReportForm.js +++ b/src/components/ReportForm/ReportForm.js @@ -18,7 +18,6 @@ import {getReportDate} from '../../redux/reportSlice' import calendarIcon from '../../images/calendar_icon.png' import ellipse from '../../images/ellipse.png' import remove from '../../images/remove.png' -import addIcon from '../../images/addIcon.png' import arrow from "../../images/right-arrow.png"; import './reportForm.scss' @@ -191,7 +190,7 @@ const ReportForm = () => { })}
- +

+

Добавить еще
diff --git a/src/components/ReportForm/reportForm.scss b/src/components/ReportForm/reportForm.scss index 62a29881..d0f12e7c 100644 --- a/src/components/ReportForm/reportForm.scss +++ b/src/components/ReportForm/reportForm.scss @@ -189,6 +189,8 @@ img { cursor: pointer; + width: 23px; + height: 23px; } } @@ -273,6 +275,21 @@ &__form-add { margin-left: 28px; + display: flex; + align-items: center; + + .addMore { + display: flex; + align-items: center; + justify-content: center; + color: #4CAF50; + width: 38px; + height: 38px; + background: #E8E8E8; + margin-bottom: 0; + border-radius: 50px; + font-size: 32px; + } span { font-family: 'GT Eesti Pro Display'; diff --git a/src/images/remove.png b/src/images/remove.png index add364b7b83302774e48cf3121362d6e3d2550b8..23f7c9aa963075c3f9558454e0863172daffcf17 100644 GIT binary patch literal 15212 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 literal 1140 zcmYjP3rtg27`~kod5%R8P|SR_QlLU<@1rlE_eG1a!YcDQBa6+33BhTdvh2lhW6mXu zW4I}ZlUO52hDK(xOp>v<8E^$>Cgdkf3mfw9GtbIf;AS;6k$|IMwi?n}XvzRt8=%z)Ek>YGKpKapOu*;_ zMia1Tpcxk@Cq(ZcNJ)Z)IUqF|5Gi8cozToQUO253rPaDk=(O9DbEjz9TZk^sKZ z7b^pq>qO7((98@#J?PWX8U36=V6>=PK&6U9-Z@DU`#m5V54yX=$0N{~G5>d#47$5# zB`JjJWM=|J!lEpNxxQEoGDIlgpPie9g=SwQhF$@UJor;*@YYR;bVJ3p@?f6_@+Lqk zfqFeUvcTv7ONbAL#gT_VpYDso#QTHd#5mNUmPn*(pg#q)8t~2Isv!{|i~DmmkRu>N z`7Ig&nKkd`zvdDGOZqvTs}F@(nWd^+8!VXL9QHIeQ6pb`83>hx0kQr1H$((kd)(<7)|9$-~dt!W^AH_xAMM zhzaX>C;Zj-WOPN+^UD)Hi1_sQfelLzL>#-~il@>}d?}0gR{_ZXL|kVUCJFhcMRRT?=@nA-jJocj_p%y zqmD$y7G>@~vSv^2+DExn>(t?nwu(2bW!o#cGDlrv*9)U%HAz?Epz7$}vBzT_am$4t z=j1hxV?%cPUC)?C({5ioTwWtrf3v^wi{!+_uM*2!mW@wn( zoT8QNTT4%TcD3cu + + diff --git a/src/pages/Tracker/Tracker.js b/src/pages/Tracker/Tracker.js index 30df33b0..6ee734d7 100644 --- a/src/pages/Tracker/Tracker.js +++ b/src/pages/Tracker/Tracker.js @@ -13,6 +13,7 @@ import avatarTest from "../../images/AvatarTest .png"; import selectArrow from "../../images/select.svg"; import commentsBoard from "../../images/commentsBoard.svg"; import filesBoard from "../../images/filesBoard.svg"; +import search from "../../images/search.svg" import "./tracker.scss"; @@ -35,6 +36,7 @@ export const Tracker = () => { const [tabTaskMok, setTabTaskMok] = useState([ { name: "Открытые", + open: false, tasks: [ { task: "PR - 2245", @@ -58,6 +60,7 @@ export const Tracker = () => { }, { name: "В процессе", + open: false, tasks: [ { task: "PR - 2245", @@ -72,6 +75,7 @@ export const Tracker = () => { }, { name: "На проверке", + open: false, tasks: [ { task: "PR - 2245", @@ -100,10 +104,20 @@ export const Tracker = () => { avatarDo: avatarTest, id: 6 }, + { + task: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + comments: 12, + files: 0, + avatarCreated: avatarTest, + avatarDo: avatarTest, + id: 9 + }, ], }, { name: "Готово", + open: false, tasks: [ { task: "PR - 2245", @@ -127,6 +141,107 @@ export const Tracker = () => { }, ]); + const [completeTasks] = useState([ + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PR - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PK - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PE - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PA - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PB - 2245", + description: "Верстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PC - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PD - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + { + name: "PA - 2245", + description: "Сверстать часть таблицы. Сверстать часть таблицы", + dateComplete: '07/мар/23', + avatarDo: avatarTest, + }, + ]) + + const [filterCompleteTasks, setFilterCompleteTasks] = useState(completeTasks) + const [modalActiveTicket, setModalActiveTicket] = useState(false); const [modalActiveProject, setModalActiveProject] = useState(false); const [startWrapperIndex, setStartWrapperIndex] = useState(null) @@ -136,6 +251,16 @@ export const Tracker = () => { setToggleTab(index); }; + function toggleMoreTasks (wrapperIndex) { + setTabTaskMok(prevArray => prevArray.map((elem, index) => { + if (wrapperIndex === index) { + return {...elem, open: !elem.open} + } else { + return elem + } + })) + } + function dragStartHandler(e, task, wrapperIndex) { setStartWrapperIndex({task: task, index: wrapperIndex}) setTimeout(() => { @@ -189,6 +314,17 @@ export const Tracker = () => { })) } + function filterArchiveTasks(e) { + setFilterCompleteTasks(completeTasks.filter((item) => { + if (!e.target.value) { + return item + } + if (item.name.toLowerCase().startsWith(e.target.value.toLowerCase()) || item.description.toLowerCase().startsWith(e.target.value.toLowerCase())) { + return item + } + })) + } + return (
@@ -298,6 +434,11 @@ export const Tracker = () => {
{section.tasks.map((task, index) => { + if (index > 2) { + if (!section.open) { + return + } + } return (
{
); })} - {section.tasks.length >= 3 && ( - + + {section.tasks.length > 3 && ( + toggleMoreTasks(wrapperIndex)}>{section.open ? '-' : '+'} )} ); })} +
+
+

Архив:

+

{filterCompleteTasks.length} задач(а)

+
+ filterArchiveTasks(event)} /> + search +
+
+
+ {filterCompleteTasks.map((task, index) => { + return
+
+

{task.description}

+

{task.dateComplete}

+
+
+ avatar +

{task.name}

+
+
+ })} +
+
diff --git a/src/pages/Tracker/tracker.scss b/src/pages/Tracker/tracker.scss index c0309661..29bc09b3 100644 --- a/src/pages/Tracker/tracker.scss +++ b/src/pages/Tracker/tracker.scss @@ -77,6 +77,14 @@ display: none; align-items: center; + @media (max-width: 785px) { + justify-content: center; + } + + @media (max-width: 460px) { + padding: 15px; + } + .project { width: 48%; background: #F1F1F1; @@ -84,6 +92,18 @@ padding: 17px 26px 16px; cursor: pointer; + @media (max-width: 1068px) { + width: 47%; + } + + @media (max-width: 785px) { + width: 100%; + } + + @media (max-width: 430px) { + padding: 8px 13px 8px; + } + h3 { font-weight: 700; font-size: 16px; @@ -97,6 +117,10 @@ align-items: center; position: relative; + @media (max-width: 430px) { + justify-content: space-between; + } + p { color: #6F6F6F; font-weight: 500; @@ -124,6 +148,10 @@ color: #6F6F6F; font-size: 17px; margin: 0 25px 0 auto; + + @media (max-width: 430px) { + display: none; + } } &:after { @@ -133,6 +161,10 @@ color: #6F6F6F; right: 0; top: -35%; + + @media (max-width: 430px) { + display: none; + } } } } @@ -348,6 +380,7 @@ display: flex; justify-content: space-between; align-items: center; + pointer-events: none; &__more { cursor: pointer; @@ -373,9 +406,8 @@ } } - .moreItems { + .openItems { cursor: pointer; - background: #8BCC60; border-radius: 44px; width: 33px; height: 33px; @@ -384,9 +416,17 @@ align-items: center; position: absolute; bottom: -15px; - color: white; font-size: 20px; left: 165px; + color: white; + } + + .moreItems { + background: #8BCC60; + } + + .lessItems { + background: #f92828; } &__more { @@ -430,6 +470,136 @@ .active__content { display: flex; } + + &__archive { + background: white; + border-radius: 12px; + padding: 26px 24px 40px; + min-height: 774px; + display: flex; + flex-direction: column; + + .archive { + &__title { + padding-bottom: 8px; + border-bottom: 1px solid #DDE2E4; + display: flex; + align-items: center; + + h3 { + color: #111112; + font-weight: 700; + font-size: 16px; + line-height: 32px; + margin-bottom: 0; + } + + p { + margin: 0 0 0 10px; + font-weight: 500; + font-size: 14px; + } + } + + &__search { + border: 2px solid; + border-color: var(--ds-border-input, #DFE1E6); + margin-left: auto; + padding: 5px; + display: flex; + align-items: center; + + input { + outline: none; + border: none; + font-size: 16px; + font-weight: 500; + } + + img { + width: 20px; + height: 20px; + } + } + + &__tasksWrapper { + margin-top: 10px; + display: flex; + flex-direction: column; + row-gap: 3px; + max-height: 649px; + overflow-y: auto; + margin-right: -16px; + padding-right: 10px; + + &::-webkit-scrollbar { + width: 4px; + background: 0 0; + box-shadow: 0 0 14px rgba(0,0,0,.04); + border-radius: 20px; + } + + &::-webkit-scrollbar { + width: 4px; + border-radius: 20px; + } + + &::-webkit-scrollbar-thumb { + background: #cbd9f9; + border-radius: 20px; + } + + &::-webkit-scrollbar-track { + background: #c5c0c6; + border-radius: 20px; + } + } + + &__completeTask { + display: flex; + justify-content: space-between; + border: 1px solid var(--ds-border,#dfe1e6); + padding: 8px 10px; + cursor: pointer; + transition: all 0.3s ease; + + &:hover { + background: var(--ds-background-neutral-subtle-hovered,#f4f5f7); + } + + p { + margin-bottom: 0; + } + + &__description { + font-size: 14px; + font-weight: 500; + + .date { + font-weight: 400; + font-size: 12px; + } + } + + &__info { + display: flex; + align-items: center; + + img { + width: 36px; + height: 36px; + } + + p { + margin-left: 10px; + text-decoration: line-through; + font-size: 11px; + font-weight: 500; + } + } + } + } + } } } } diff --git a/src/pages/ViewReport/ViewReport.js b/src/pages/ViewReport/ViewReport.js index c6767f52..830cf0ea 100644 --- a/src/pages/ViewReport/ViewReport.js +++ b/src/pages/ViewReport/ViewReport.js @@ -135,7 +135,7 @@ export const ViewReport = () => { })} - Всего: {totalHours} часов + Всего: {totalHours} {hourOfNum(totalHours)}