footer layout
This commit is contained in:
parent
42cae241f2
commit
26b27129fd
@ -1,6 +1,6 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
|
|
||||||
import { getCorrectDate } from "@components/Calendar/calendarHelper";
|
import { getCorrectDate } from "@utils/calendarHelper";
|
||||||
|
|
||||||
import "./archiveTasksItem.scss";
|
import "./archiveTasksItem.scss";
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ import rectangle from "assets/images/rectangle_secondPage.png";
|
|||||||
|
|
||||||
import CalendarComponent from "./CalendarComponent";
|
import CalendarComponent from "./CalendarComponent";
|
||||||
import "./calendar.scss";
|
import "./calendar.scss";
|
||||||
import { currentMonth } from "./calendarHelper";
|
import { currentMonth } from "../../utils/calendarHelper";
|
||||||
|
|
||||||
const Calendar = () => {
|
const Calendar = () => {
|
||||||
if (localStorage.getItem("role_status") !== "18") {
|
if (localStorage.getItem("role_status") !== "18") {
|
||||||
|
@ -7,7 +7,7 @@ import ellipse from "assets/icons/ellipse.png";
|
|||||||
import rectangle from "assets/images/rectangle__calendar.png";
|
import rectangle from "assets/images/rectangle__calendar.png";
|
||||||
|
|
||||||
import "./calendarComponent.scss";
|
import "./calendarComponent.scss";
|
||||||
import { calendarHelper, currentMonthAndDay } from "./calendarHelper";
|
import { calendarHelper, currentMonthAndDay } from "../../utils/calendarHelper";
|
||||||
|
|
||||||
const CalendarComponent = ({ onSelect }) => {
|
const CalendarComponent = ({ onSelect }) => {
|
||||||
const [value, setValue] = useState(moment());
|
const [value, setValue] = useState(moment());
|
||||||
|
@ -43,7 +43,7 @@ import send from "assets/icons/send.svg";
|
|||||||
import watch from "assets/icons/watch.svg";
|
import watch from "assets/icons/watch.svg";
|
||||||
import avatarMok from "assets/images/avatarMok.png";
|
import avatarMok from "assets/images/avatarMok.png";
|
||||||
|
|
||||||
import { getCorrectDate } from "../../../Calendar/calendarHelper";
|
import { getCorrectDate } from "../../../../utils/calendarHelper";
|
||||||
import "./modalTicket.scss";
|
import "./modalTicket.scss";
|
||||||
|
|
||||||
registerLocale("ru", ru);
|
registerLocale("ru", ru);
|
||||||
|
@ -21,7 +21,7 @@ import { apiRequest } from "@api/request";
|
|||||||
|
|
||||||
import { useNotification } from "@hooks/useNotification";
|
import { useNotification } from "@hooks/useNotification";
|
||||||
|
|
||||||
import { getCorrectDate } from "@components/Calendar/calendarHelper";
|
import { getCorrectDate } from "@utils/calendarHelper";
|
||||||
import { Footer } from "@components/Common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
import { Loader } from "@components/Common/Loader/Loader";
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import FileTracker from "@components/FileTracker/FileTracker";
|
import FileTracker from "@components/FileTracker/FileTracker";
|
||||||
|
@ -28,7 +28,7 @@ import { apiRequest } from "@api/request";
|
|||||||
|
|
||||||
import { useNotification } from "@hooks/useNotification";
|
import { useNotification } from "@hooks/useNotification";
|
||||||
|
|
||||||
import { getCorrectDate } from "@components/Calendar/calendarHelper";
|
import { getCorrectDate } from "@utils/calendarHelper";
|
||||||
import BaseButton from "@components/Common/BaseButton/BaseButton";
|
import BaseButton from "@components/Common/BaseButton/BaseButton";
|
||||||
import { Loader } from "@components/Common/Loader/Loader";
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import ModalLayout from "@components/Common/ModalLayout/ModalLayout";
|
import ModalLayout from "@components/Common/ModalLayout/ModalLayout";
|
||||||
|
@ -16,7 +16,7 @@ import { urlForLocal } from "@utils/helper";
|
|||||||
|
|
||||||
import { apiRequest } from "@api/request";
|
import { apiRequest } from "@api/request";
|
||||||
|
|
||||||
import { getReports } from "@components/Calendar/calendarHelper";
|
import { getReports } from "@utils/calendarHelper";
|
||||||
import { Footer } from "@components/Common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
import { Loader } from "@components/Common/Loader/Loader";
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
|
@ -23,7 +23,7 @@ import {
|
|||||||
getCorrectDate,
|
getCorrectDate,
|
||||||
getReports,
|
getReports,
|
||||||
hourOfNum
|
hourOfNum
|
||||||
} from "@components/Calendar/calendarHelper";
|
} from "@utils/calendarHelper";
|
||||||
import BaseButton from "@components/Common/BaseButton/BaseButton";
|
import BaseButton from "@components/Common/BaseButton/BaseButton";
|
||||||
|
|
||||||
import arrow from "assets/icons/arrows/arrowCalendar.png";
|
import arrow from "assets/icons/arrows/arrowCalendar.png";
|
||||||
@ -286,15 +286,15 @@ export const ProfileCalendarComponent = React.memo(
|
|||||||
? `${getCorrectDate(startDate)} - ${getCorrectDate(endDate)}`
|
? `${getCorrectDate(startDate)} - ${getCorrectDate(endDate)}`
|
||||||
: `${getCorrectDate(endDate)} - ${getCorrectDate(startDate)}`
|
: `${getCorrectDate(endDate)} - ${getCorrectDate(startDate)}`
|
||||||
: activePeriod
|
: activePeriod
|
||||||
? "Выберите диапазон на календаре"
|
? "Выберите диапазон на календаре"
|
||||||
: "Выбрать диапазон"}
|
: "Выбрать диапазон"}
|
||||||
</span>
|
</span>
|
||||||
<span>
|
<span>
|
||||||
{totalRangeHours
|
{totalRangeHours
|
||||||
? `${totalRangeHours} ${hourOfNum(totalRangeHours)}`
|
? `${totalRangeHours} ${hourOfNum(totalRangeHours)}`
|
||||||
: endDate
|
: endDate
|
||||||
? "0 часов"
|
? "0 часов"
|
||||||
: ""}
|
: ""}
|
||||||
</span>
|
</span>
|
||||||
{endDate && (
|
{endDate && (
|
||||||
<BaseButton
|
<BaseButton
|
||||||
|
@ -26,7 +26,7 @@ import {
|
|||||||
getCorrectDate,
|
getCorrectDate,
|
||||||
getCreatedDate,
|
getCreatedDate,
|
||||||
hourOfNum
|
hourOfNum
|
||||||
} from "../Calendar/calendarHelper";
|
} from "../../utils/calendarHelper";
|
||||||
import "./reportForm.scss";
|
import "./reportForm.scss";
|
||||||
|
|
||||||
registerLocale("ru", ru);
|
registerLocale("ru", ru);
|
||||||
|
@ -1,8 +1,13 @@
|
|||||||
.report-form {
|
.report-form {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
max-width: 1160px;
|
max-width: 1160px;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ import {
|
|||||||
getCorrectDate,
|
getCorrectDate,
|
||||||
getCreatedDate,
|
getCreatedDate,
|
||||||
hourOfNum
|
hourOfNum
|
||||||
} from "@components/Calendar/calendarHelper";
|
} from "@utils/calendarHelper";
|
||||||
import { Loader } from "@components/Common/Loader/Loader";
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
|
|
||||||
import "./shortReport.scss";
|
import "./shortReport.scss";
|
||||||
|
@ -6,7 +6,7 @@ import { urlForLocal } from "@utils/helper";
|
|||||||
|
|
||||||
import { apiRequest } from "@api/request";
|
import { apiRequest } from "@api/request";
|
||||||
|
|
||||||
import { getCorrectDate } from "@components/Calendar/calendarHelper";
|
import { getCorrectDate } from "@utils/calendarHelper";
|
||||||
import TrackerTaskSubComment from "@components/TrackerTaskComment/TrackerTaskComment";
|
import TrackerTaskSubComment from "@components/TrackerTaskComment/TrackerTaskComment";
|
||||||
|
|
||||||
import del from "assets/icons/delete.svg";
|
import del from "assets/icons/delete.svg";
|
||||||
|
@ -13,7 +13,7 @@ import { urlForLocal } from "@utils/helper";
|
|||||||
|
|
||||||
import { apiRequest } from "@api/request";
|
import { apiRequest } from "@api/request";
|
||||||
|
|
||||||
import { getCorrectDate } from "@components/Calendar/calendarHelper";
|
import { getCorrectDate } from "@utils/calendarHelper";
|
||||||
import { Footer } from "@components/Common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
import { Loader } from "@components/Common/Loader/Loader";
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import ModalLayout from "@components/Common/ModalLayout/ModalLayout";
|
import ModalLayout from "@components/Common/ModalLayout/ModalLayout";
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -7,7 +7,7 @@ import { getRequestDates, setRequestDate } from "@redux/reportSlice";
|
|||||||
|
|
||||||
import { apiRequest } from "@api/request";
|
import { apiRequest } from "@api/request";
|
||||||
|
|
||||||
import { getReports } from "@components/Calendar/calendarHelper";
|
import { getReports } from "@utils/calendarHelper";
|
||||||
import { Footer } from "@components/Common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
import { Loader } from "@components/Common/Loader/Loader";
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -167,6 +167,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -378,6 +378,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -144,6 +144,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -2,7 +2,9 @@ import React from "react";
|
|||||||
|
|
||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
||||||
import { Footer } from "@components/common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
|
|
||||||
|
import "./payouts.scss";
|
||||||
|
|
||||||
export const Payouts = () => {
|
export const Payouts = () => {
|
||||||
return (
|
return (
|
||||||
|
13
src/pages/Payouts/payouts.scss
Normal file
13
src/pages/Payouts/payouts.scss
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
.payouts {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
min-height: 100vh;
|
||||||
|
background: #f1f1f1;
|
||||||
|
|
||||||
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
}
|
@ -4,6 +4,7 @@
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
&__container {
|
&__container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
margin: 0 auto 42px auto;
|
margin: 0 auto 42px auto;
|
||||||
|
@ -58,7 +58,7 @@ import accept from "assets/images/accept.png";
|
|||||||
import archive from "assets/images/archiveIcon.png";
|
import archive from "assets/images/archiveIcon.png";
|
||||||
import avatarMok from "assets/images/avatarMok.png";
|
import avatarMok from "assets/images/avatarMok.png";
|
||||||
|
|
||||||
import { getCorrectDate } from "../../components/Calendar/calendarHelper";
|
import { getCorrectDate } from "../../utils/calendarHelper";
|
||||||
|
|
||||||
export const ProjectTracker = () => {
|
export const ProjectTracker = () => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
@ -76,6 +77,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
@ -98,6 +100,8 @@
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
|
max-width: 1160px;
|
||||||
|
flex-direction: column;
|
||||||
display: flex;
|
display: flex;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
@ -136,6 +140,7 @@
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
|
@ -9,6 +9,7 @@ import { copyProjectLink } from "@utils/helper";
|
|||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs";
|
import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs";
|
||||||
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
||||||
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
|
|
||||||
import arrow from "assets/icons/arrows/arrowCalendar.png";
|
import arrow from "assets/icons/arrows/arrowCalendar.png";
|
||||||
import emailImg from "assets/icons/emailStatistics.svg";
|
import emailImg from "assets/icons/emailStatistics.svg";
|
||||||
@ -71,136 +72,137 @@ const Statistics = () => {
|
|||||||
/>
|
/>
|
||||||
<h2 className="tracker__title">Управление проектами с трекером</h2>
|
<h2 className="tracker__title">Управление проектами с трекером</h2>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div className="tracker__tabs">
|
||||||
<div className="tracker__tabs">
|
<div className="tracker__tabs__head">
|
||||||
<div className="tracker__tabs__head">
|
<Link
|
||||||
<Link
|
to="/profile/tracker"
|
||||||
to="/profile/tracker"
|
className="tab active-tab"
|
||||||
className="tab active-tab"
|
onClick={() => toggleTabs(1)}
|
||||||
onClick={() => toggleTabs(1)}
|
>
|
||||||
>
|
<img src={project} alt="img" />
|
||||||
<img src={project} alt="img" />
|
<p>Проекты </p>
|
||||||
<p>Проекты </p>
|
</Link>
|
||||||
</Link>
|
<Link
|
||||||
<Link
|
to="/profile/tracker"
|
||||||
to="/profile/tracker"
|
className="tab"
|
||||||
className="tab"
|
onClick={() => toggleTabs(2)}
|
||||||
onClick={() => toggleTabs(2)}
|
>
|
||||||
>
|
<img src={tasks} alt="img" />
|
||||||
<img src={tasks} alt="img" />
|
<p>Все мои задачи</p>
|
||||||
<p>Все мои задачи</p>
|
</Link>
|
||||||
</Link>
|
<Link
|
||||||
<Link
|
to="/profile/tracker"
|
||||||
to="/profile/tracker"
|
className="tab"
|
||||||
className="tab"
|
onClick={() => toggleTabs(3)}
|
||||||
onClick={() => toggleTabs(3)}
|
>
|
||||||
>
|
<img src={archive} alt="img" />
|
||||||
<img src={archive} alt="img" />
|
<p>Архив</p>
|
||||||
<p>Архив</p>
|
</Link>
|
||||||
</Link>
|
</div>
|
||||||
</div>
|
<div className="tracker__tabs__content">
|
||||||
<div className="tracker__tabs__content">
|
<div className="tracker__tabs__content__wrapper statistics-body">
|
||||||
<div className="tracker__tabs__content__wrapper statistics-body">
|
<div className="statistics-header">
|
||||||
<div className="statistics-header">
|
<div className="statistics-header__menu">
|
||||||
<div className="statistics-header__menu">
|
<h1>Статистика проекта</h1>
|
||||||
<h1>Статистика проекта</h1>
|
<img src={link} alt="#" />
|
||||||
<img src={link} alt="#" />
|
<span
|
||||||
<span
|
className="return-text"
|
||||||
className="return-text"
|
onClick={() => copyProjectLink("62")}
|
||||||
onClick={() => copyProjectLink("62")}
|
>
|
||||||
>
|
ссылка на проект
|
||||||
ссылка на проект
|
</span>
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div className="statistics-header__return">
|
|
||||||
<img src={arrow} alt="#" />
|
|
||||||
|
|
||||||
<Link to={`/profile/tracker`} className="return-text">
|
|
||||||
К списку проектов
|
|
||||||
</Link>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div className="statistics-info">
|
|
||||||
<div className="statistics-info__head">
|
|
||||||
<p>Проект: </p>
|
|
||||||
<h1>{"Разработка трекера"}</h1>
|
|
||||||
</div>
|
|
||||||
<div className="statistics-info__team">
|
|
||||||
<div className="project-info">
|
|
||||||
<div className="project-info__creator">
|
|
||||||
<span className="return-text">Создатель проекта:</span>
|
|
||||||
<div>
|
|
||||||
<p>{"Василий Тарасов"}</p>{" "}
|
|
||||||
<img src={mockAvatar} alt="#" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div className="project-info__tasks">
|
|
||||||
<div className="task-quantity">
|
|
||||||
<p>Открытые задачи</p>
|
|
||||||
<span className="task-quantity_open">{4}</span>
|
|
||||||
</div>
|
|
||||||
<div className="task-quantity">
|
|
||||||
<p>Задач в работе</p>
|
|
||||||
<span className="task-quantity_work">{5}</span>
|
|
||||||
</div>
|
|
||||||
<div className="task-quantity">
|
|
||||||
<p>Закрыто задач</p>
|
|
||||||
<span className="task-quantity_closed">{434}</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div className="list-team">
|
|
||||||
<div className="list-team__title">
|
|
||||||
<span className="return-text">Участники проекта:</span>
|
|
||||||
</div>
|
|
||||||
<div className="list-team__head">
|
|
||||||
<p>Имя</p>
|
|
||||||
<p>Почта</p>
|
|
||||||
<p>Роль</p>
|
|
||||||
<p>Статус</p>
|
|
||||||
</div>
|
|
||||||
<div className="list-team__body">
|
|
||||||
{teams.map((item) => {
|
|
||||||
return (
|
|
||||||
<>
|
|
||||||
<div className="list-team__item">
|
|
||||||
<div className="person-name">
|
|
||||||
<img src={item.avatar} alt="#" />
|
|
||||||
<p>{item.name}</p>
|
|
||||||
</div>
|
|
||||||
<div className="person-email">
|
|
||||||
<img src={emailImg} alt="#" />
|
|
||||||
<p>{item.email}</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p className="person-type">{item.role}</p>
|
<div className="statistics-header__return">
|
||||||
{/* <span className="status status-active"> */}
|
<img src={arrow} alt="#" />
|
||||||
|
|
||||||
<span
|
<Link to={`/profile/tracker`} className="return-text">
|
||||||
className={
|
К списку проектов
|
||||||
item.status
|
</Link>
|
||||||
? "status status-active"
|
|
||||||
: "status status-none"
|
|
||||||
}
|
|
||||||
>
|
|
||||||
{item.status ? "Активно" : "Не активно"}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</>
|
|
||||||
);
|
|
||||||
})}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div className="add-person">
|
</div>
|
||||||
<span className="add-person__button">+</span>
|
<div className="statistics-info">
|
||||||
<p>Добавить участника</p>
|
<div className="statistics-info__head">
|
||||||
|
<p>Проект: </p>
|
||||||
|
<h1>{"Разработка трекера"}</h1>
|
||||||
|
</div>
|
||||||
|
<div className="statistics-info__team">
|
||||||
|
<div className="project-info">
|
||||||
|
<div className="project-info__creator">
|
||||||
|
<span className="return-text">Создатель проекта:</span>
|
||||||
|
<div>
|
||||||
|
<p>{"Василий Тарасов"}</p>{" "}
|
||||||
|
<img src={mockAvatar} alt="#" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="project-info__tasks">
|
||||||
|
<div className="task-quantity">
|
||||||
|
<p>Открытые задачи</p>
|
||||||
|
<span className="task-quantity_open">{4}</span>
|
||||||
|
</div>
|
||||||
|
<div className="task-quantity">
|
||||||
|
<p>Задач в работе</p>
|
||||||
|
<span className="task-quantity_work">{5}</span>
|
||||||
|
</div>
|
||||||
|
<div className="task-quantity">
|
||||||
|
<p>Закрыто задач</p>
|
||||||
|
<span className="task-quantity_closed">{434}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="list-team">
|
||||||
|
<div className="list-team__title">
|
||||||
|
<span className="return-text">Участники проекта:</span>
|
||||||
|
</div>
|
||||||
|
<div className="list-team__head">
|
||||||
|
<p>Имя</p>
|
||||||
|
<p>Почта</p>
|
||||||
|
<p>Роль</p>
|
||||||
|
<p>Статус</p>
|
||||||
|
</div>
|
||||||
|
<div className="list-team__body">
|
||||||
|
{teams.map((item) => {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<div className="list-team__item">
|
||||||
|
<div className="person-name">
|
||||||
|
<img src={item.avatar} alt="#" />
|
||||||
|
<p>{item.name}</p>
|
||||||
|
</div>
|
||||||
|
<div className="person-email">
|
||||||
|
<img src={emailImg} alt="#" />
|
||||||
|
<p>{item.email}</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p className="person-type">{item.role}</p>
|
||||||
|
{/* <span className="status status-active"> */}
|
||||||
|
|
||||||
|
<span
|
||||||
|
className={
|
||||||
|
item.status
|
||||||
|
? "status status-active"
|
||||||
|
: "status status-none"
|
||||||
|
}
|
||||||
|
>
|
||||||
|
{item.status ? "Активно" : "Не активно"}
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="add-person">
|
||||||
|
<span className="add-person__button">+</span>
|
||||||
|
<p>Добавить участника</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -4,6 +4,13 @@
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
|
|
||||||
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
&-header {
|
&-header {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
|
@ -510,6 +510,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -10,7 +10,7 @@ import {
|
|||||||
getCorrectDate,
|
getCorrectDate,
|
||||||
getCreatedDate,
|
getCreatedDate,
|
||||||
hourOfNum
|
hourOfNum
|
||||||
} from "@components/Calendar/calendarHelper";
|
} from "@utils/calendarHelper";
|
||||||
import { Footer } from "@components/Common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
import { Loader } from "@components/Common/Loader/Loader";
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
max-width: 1160px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user