+
Проект : {projectBoard.name}
-
+
-
- {/*
*/}
- {/*
*/}
-
{projectBoard.projectUsers?.length}
-
{
- setPersonListOpen(true)
- }}
- >
- +
-
-
добавить участника
- {personListOpen &&
-
-
setPersonListOpen(false)} />
-
{projectBoard.projectUsers?.length}участник
-
В проекте - “{projectBoard.name}”
-
- {projectBoard.projectUsers?.map((person) => {
- return
-
-
{person.user.fio}
-
deletePerson(person.user_id)}/>
+
+ {/*
*/}
+ {/*
*/}
+
+ {projectBoard.projectUsers?.length}
+
+
{
+ setPersonListOpen(true);
+ }}
+ >
+ +
+
+
добавить участника
+ {personListOpen && (
+
+
setPersonListOpen(false)}
+ />
+
+ {projectBoard.projectUsers?.length}
+ участник
+
+
+ В проекте - “{projectBoard.name}”
+
+
+ {projectBoard.projectUsers?.map((person) => {
+ return (
+
+
+
{person.user.fio}
+
deletePerson(person.user_id)}
+ />
+
+ );
+ })}
+
+
{
+ dispatch(modalToggle("addWorker"));
+ setModalAddWorker(true);
+ setPersonListOpen(false);
+ }}
+ >
+
+
+
Добавить участников
+
- })
- }
+ )}
-
{
- dispatch(modalToggle("addWorker"));
- setModalAddWorker(true);
- setPersonListOpen(false)
- }}
- >
-
+
-
Добавить участников
+
+
Учавствую
+
-
- }
-
-
-
Учавствую
-
-
-
-
Мои
-
-
-
-
-
Вернуться на проекты
-
-
-
-
-
-
-
-
-
-
Задача
- {editOpen ?
{
- setInputsValue((prevValue) => ({...prevValue, title: e.target.value}))
- }} /> :
{inputsValue.title}
}
-
- {editOpen ?
{
- setInputsValue((prevValue) => ({...prevValue, description: e.target.value}))
- }}/> :
{inputsValue.description}
}
- {/*
*/}
-
-
-
-
-
-
-
- {0}
- Файлов
-
-
-
-
{
- setInputsValue((prevValue) => ({...prevValue, comment: e.target.value}))
- }} />
-
-
-
- {comments.map((comment) => {
- return
-
-
{getCorrectDate(comment.created_at)}
-
-
{
- if (commentsEditOpen[comment.id]) {
- editComment(comment.id)
- }
- setCommentsEditOpen((prevValue) => ({...prevValue, [comment.id]: !prevValue[comment.id]}))
- }} />
-
-
deleteComment(comment.id)} />
+
+
Мои
+
+
+
+
+
Вернуться на проекты
+
- {commentsEditOpen[comment.id] ?
{
- setCommentsEditText((prevValue) => ({...prevValue, [comment.id]: e.target.value}))
- }} /> :
{commentsEditText[comment.id]}
}
+
+
+
+
+
+
+
+
Задача
+ {editOpen ? (
+
{
+ setInputsValue((prevValue) => ({
+ ...prevValue,
+ title: e.target.value,
+ }));
+ }}
+ />
+ ) : (
+
{inputsValue.title}
+ )}
+
+ {editOpen ? (
+
{
+ setInputsValue((prevValue) => ({
+ ...prevValue,
+ description: e.target.value,
+ }));
+ }}
+ />
+ ) : (
+
{inputsValue.description}
+ )}
+ {/*
*/}
- })
-
- }
-
-
-
-
-
-
- Создатель : {taskInfo.user?.fio}
-
-
- {Boolean(taskInfo.taskUsers?.length) &&
- taskInfo.taskUsers.map((worker, index) => {
- return (
-
-
-
{worker.name}
-
- );
- })}
+
+
+
+
+
+
+ {0}
+ Файлов
+
+
+
+
{
+ setInputsValue((prevValue) => ({
+ ...prevValue,
+ comment: e.target.value,
+ }));
+ }}
+ />
+
+
+
+ {comments.map((comment) => {
+ return (
+
+
+
{getCorrectDate(comment.created_at)}
+
+
{
+ if (commentsEditOpen[comment.id]) {
+ editComment(comment.id);
+ }
+ setCommentsEditOpen((prevValue) => ({
+ ...prevValue,
+ [comment.id]: !prevValue[comment.id],
+ }));
+ }}
+ />
+
+
deleteComment(comment.id)}
+ />
+
+ {commentsEditOpen[comment.id] ? (
+
{
+ setCommentsEditText((prevValue) => ({
+ ...prevValue,
+ [comment.id]: e.target.value,
+ }));
+ }}
+ />
+ ) : (
+
{commentsEditText[comment.id]}
+ )}
+
+ );
+ })}
+
+
+
+
+
+ Создатель : {taskInfo.user?.fio}
+
+
+ {Boolean(taskInfo.taskUsers?.length) &&
+ taskInfo.taskUsers.map((worker, index) => {
+ return (
+
+
+
{worker.name}
+
+ );
+ })}
+
-
-
+
+ {
+ dispatch(modalToggle("addWorker"));
+ setModalAddWorker(true);
+ }}
+ >
+ +
+
+ Добавить участников
+
+
+
+
+
+
+
Длительность :
+
{"0:00:00"}
+
+
+
+ Начать делать
+
+
+
+
+
{
- dispatch(modalToggle("addWorker"));
- setModalAddWorker(true);
+ if (editOpen) {
+ setEditOpen(!editOpen);
+ editTask();
+ } else {
+ setEditOpen(!editOpen);
+ }
}}
- >
- +
-
- Добавить исполнителя
-
-
-
{
- dispatch(modalToggle("addWorker"));
- setModalAddWorker(true);
- }}
- >
- +
-
-
Добавить участников
+ >
+
+
{editOpen ? "сохранить" : "редактировать"}
+
+
+
+
ссылка на проект
+
+
+
+
в архив
+
+
+
+
удалить
+
+
-
-
-
-
-
Длительность :
-
{"0:00:00"}
-
-
-
- Начать делать
-
-
-
-
-
{
- if(editOpen) {
- setEditOpen(!editOpen)
- editTask()
- } else {
- setEditOpen(!editOpen)
- }
- }}>
-
-
{editOpen ? 'сохранить' : 'редактировать'}
-
-
-
-
ссылка на проект
-
-
-
-
в архив
-
-
-
-
удалить
-
-
-
-
- >
- }
+ >
+ )}
diff --git a/src/components/UI/TrackerModal/TrackerModal.jsx b/src/components/UI/TrackerModal/TrackerModal.jsx
index 2d23bab6..a9645a2b 100644
--- a/src/components/UI/TrackerModal/TrackerModal.jsx
+++ b/src/components/UI/TrackerModal/TrackerModal.jsx
@@ -1,8 +1,8 @@
-import React, {useEffect, useState} from "react";
+import React, { useEffect, useState } from "react";
import { useDispatch, useSelector } from "react-redux";
import { apiRequest } from "../../../api/request";
-import { urlForLocal } from '../../../helper'
+import { urlForLocal } from "../../../helper";
import {
setColumnName,
getProjectBoard,
@@ -13,10 +13,10 @@ import {
editColumnName,
getColumnName,
getColumnId,
- addPersonToProject
+ addPersonToProject,
} from "../../../redux/projectsTrackerSlice";
-import arrowDown from "../../../images/selectArrow.png"
+import arrowDown from "../../../images/selectArrow.png";
import "./trackerModal.scss";
@@ -27,12 +27,12 @@ export const TrackerModal = ({
defautlInput,
titleProject,
projectId,
- priorityTask
+ priorityTask,
}) => {
const dispatch = useDispatch();
const projectBoard = useSelector(getProjectBoard);
const columnName = useSelector(getColumnName);
- const columnId = useSelector(getColumnId)
+ const columnId = useSelector(getColumnId);
const modalType = useSelector(getValueModalType);
const [projectName, setProjectName] = useState(defautlInput);
@@ -40,9 +40,9 @@ export const TrackerModal = ({
const [nameProject, setNameProject] = useState("");
const [valueTiket, setValueTiket] = useState("");
const [descriptionTicket, setDescriptionTicket] = useState("");
- const [workers, setWorkers] = useState([])
- const [selectWorkersOpen, setSelectWorkersOpen] = useState(false)
- const [selectedWorker, setSelectedWorker] = useState(null)
+ const [workers, setWorkers] = useState([]);
+ const [selectWorkersOpen, setSelectWorkersOpen] = useState(false);
+ const [selectedWorker, setSelectedWorker] = useState(null);
function createTab() {
if (!valueColumn) {
@@ -76,7 +76,7 @@ export const TrackerModal = ({
status: 1,
user_id: localStorage.getItem("id"),
column_id: selectedTab,
- priority: priorityTask
+ priority: priorityTask,
},
}).then((res) => {
dispatch(setProjectBoardFetch(projectBoard.id));
@@ -105,12 +105,12 @@ export const TrackerModal = ({
method: "PUT",
data: {
column_id: columnId,
- title: columnName
- }
+ title: columnName,
+ },
}).then((res) => {
setActive(false);
- dispatch(editColumnName({id: columnId, title: columnName}))
- })
+ dispatch(editColumnName({ id: columnId, title: columnName }));
+ });
}
function createProject() {
@@ -138,34 +138,37 @@ export const TrackerModal = ({
method: "POST",
data: {
user_id: selectedWorker.user_id,
- project_id: projectBoard.id
- }
+ project_id: projectBoard.id,
+ },
}).then((el) => {
- dispatch(addPersonToProject(el))
+ dispatch(addPersonToProject(el));
setActive(false);
- setSelectedWorker('')
- setSelectWorkersOpen(false)
- })
+ setSelectedWorker("");
+ setSelectWorkersOpen(false);
+ });
}
useEffect(() => {
- modalType === "addWorker" ? apiRequest('/project/my-employee').then((el) => {
- let persons = el.managerEmployees
- let ids = projectBoard.projectUsers.map((user) => user.user_id)
- setWorkers(persons.reduce((acc, cur) => {
- if (!ids.includes(cur.user_id)) acc.push(cur)
- return acc
- }, []))
- }) : ''
- }, [active])
-
+ modalType === "addWorker"
+ ? apiRequest("/project/my-employee").then((el) => {
+ let persons = el.managerEmployees;
+ let ids = projectBoard.projectUsers.map((user) => user.user_id);
+ setWorkers(
+ persons.reduce((acc, cur) => {
+ if (!ids.includes(cur.user_id)) acc.push(cur);
+ return acc;
+ }, [])
+ );
+ })
+ : "";
+ }, [active]);
return (
{
- setActive(false)
- setSelectWorkersOpen(false)
+ setActive(false);
+ setSelectWorkersOpen(false);
}}
>
e.stopPropagation()}>
@@ -180,35 +183,49 @@ export const TrackerModal = ({
{/* onChange={(e) => setEmailWorker(e.target.value)}*/}
{/* />*/}
{/*
*/}
-
setSelectWorkersOpen(!selectWorkersOpen)}>
-
{selectedWorker ? selectedWorker.employee.fio : 'Выберите пользователя'}
-
- {Boolean(selectWorkersOpen) &&
-
- {Boolean(workers.length) ?
- workers.map((worker) => {
- if (worker === selectedWorker) {
- return
- }
- return
- {
- setSelectedWorker(worker)
- }
- }>
-
{worker.employee.fio}
-
-
- }) :
-
Нет пользователей
- }
-
+
setSelectWorkersOpen(!selectWorkersOpen)}
+ >
+
+ {selectedWorker
+ ? selectedWorker.employee.fio
+ : "Выберите пользователя"}
+
+
+ {Boolean(selectWorkersOpen) && (
+
+ {Boolean(workers.length) ? (
+ workers.map((worker) => {
+ if (worker === selectedWorker) {
+ return;
+ }
+ return (
+
{
+ setSelectedWorker(worker);
+ }}
+ >
+
{worker.employee.fio}
+
+
+ );
+ })
+ ) : (
+
Нет пользователей
+ )}
+
+ )}
-
+
Добавить
diff --git a/src/images/TgLogo.svg b/src/images/TgLogo.svg
deleted file mode 100644
index f74d1806..00000000
--- a/src/images/TgLogo.svg
+++ /dev/null
@@ -1,9 +0,0 @@
-
diff --git a/src/images/category.png b/src/images/category.png
deleted file mode 100644
index 98b4fa64..00000000
Binary files a/src/images/category.png and /dev/null differ
diff --git a/src/images/category.svg b/src/images/category.svg
new file mode 100644
index 00000000..834b2cf8
--- /dev/null
+++ b/src/images/category.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/images/right-arrow.png b/src/images/left-arrow.png
similarity index 100%
rename from src/images/right-arrow.png
rename to src/images/left-arrow.png
diff --git a/src/images/remove.png b/src/images/remove.png
deleted file mode 100644
index 23f7c9aa..00000000
Binary files a/src/images/remove.png and /dev/null differ
diff --git a/src/images/remove.svg b/src/images/remove.svg
new file mode 100644
index 00000000..436e6b38
--- /dev/null
+++ b/src/images/remove.svg
@@ -0,0 +1,8 @@
+
+
+
\ No newline at end of file
diff --git a/src/images/watch.png b/src/images/watch.png
deleted file mode 100644
index 5cbc3aef..00000000
Binary files a/src/images/watch.png and /dev/null differ
diff --git a/src/images/watch.svg b/src/images/watch.svg
new file mode 100644
index 00000000..b206961c
--- /dev/null
+++ b/src/images/watch.svg
@@ -0,0 +1,12 @@
+
diff --git a/src/pages/Article/Article.jsx b/src/pages/Article/Article.jsx
index f89bd034..9ee32d85 100644
--- a/src/pages/Article/Article.jsx
+++ b/src/pages/Article/Article.jsx
@@ -8,7 +8,7 @@ import { ProfileBreadcrumbs } from "../../components/ProfileBreadcrumbs/ProfileB
import CardArticle from "../../components/UI/CardArticle/CardArticle";
import mockImgArticle from "../../images/mockImgArticle.png";
-import rightArrow from "../../images/right-arrow.png";
+import rightArrow from "../../images/left-arrow.png";
import yandexZen from "../../images/yandexZen.svg";
import cardCalendar from "../../images/cardCalendar.svg";
import cardImg1 from "../../images/cardArticleItem.png";
diff --git a/src/pages/FormPage/FormPage.js b/src/pages/FormPage/FormPage.js
index 6675cc81..38f6d32e 100644
--- a/src/pages/FormPage/FormPage.js
+++ b/src/pages/FormPage/FormPage.js
@@ -1,29 +1,31 @@
-import React, {useEffect} from 'react'
-import {useDispatch, useSelector} from 'react-redux'
-import {useParams, useNavigate, Navigate} from 'react-router-dom'
-import SVG from 'react-inlinesvg'
+import React, { useEffect } from "react";
+import { useDispatch, useSelector } from "react-redux";
+import { useParams, useNavigate, Navigate } from "react-router-dom";
+import SVG from "react-inlinesvg";
-import Form from '../../components/Form/Form'
-import {Footer} from '../../components/Footer/Footer'
-import {LogoutButton} from "../../components/LogoutButton/LogoutButton";
+import Form from "../../components/Form/Form";
+import { Footer } from "../../components/Footer/Footer";
+import { LogoutButton } from "../../components/LogoutButton/LogoutButton";
+import arrow from "../../images/left-arrow.png";
+import rectangle from "../../images/rectangle_secondPage.png";
+import telegramIcon from "../../images/telegram-icon.svg";
-import arrow from '../../images/right-arrow.png'
-import rectangle from '../../images/rectangle_secondPage.png'
-import telegramIcon from '../../images/telegram-icon.svg'
+import { LEVELS, SKILLS } from "../../constants/constants";
-import {LEVELS, SKILLS} from '../../constants/constants'
+import {
+ currentCandidate,
+ selectCurrentCandidate,
+} from "../../redux/outstaffingSlice";
-import {currentCandidate, selectCurrentCandidate} from '../../redux/outstaffingSlice'
+import { apiRequest } from "../../api/request";
+import { urlForLocal } from "../../helper";
-import {apiRequest} from "../../api/request";
-import {urlForLocal} from "../../helper";
-
-import './formPage.scss'
+import "./formPage.scss";
const FormPage = () => {
- if(localStorage.getItem('role_status') !== '18') {
- return
+ if (localStorage.getItem("role_status") !== "18") {
+ return
;
}
const params = useParams();
const navigate = useNavigate();
@@ -31,73 +33,73 @@ const FormPage = () => {
const candidate = useSelector(selectCurrentCandidate);
const goBack = () => {
- navigate(-1)
+ navigate(-1);
};
- useEffect(()=> {
+ useEffect(() => {
if (!candidate.id) {
- apiRequest('/profile', {
- params: Number(params.id)
- })
- .then((el) => dispatch(currentCandidate(el)))
+ apiRequest("/profile", {
+ params: Number(params.id),
+ }).then((el) => dispatch(currentCandidate(el)));
}
}, []);
-
return (
-
-
-
-
-
-
-
-
- Вернуться к кандидату
-
+
+
+
+
+
+
+
+
+ Вернуться к кандидату
-
-
-
- {candidate.photo &&
}
-
-
-
+
+
+
+
+ {candidate.photo && (
+
+ )}
+
+
+
- {candidate.specification} {SKILLS[candidate.position_id]},{' '}
+ {candidate.specification} {SKILLS[candidate.position_id]},{" "}
{LEVELS[candidate.level]}
-
-
-
-
Выбранный кандидат
-
+
+
+
+
Выбранный кандидат
-
-
-
-
-
-
-
- Заявка на собеседование через телеграм
-
-
-
-
-
+
+
+
+
+
+
+
+ Заявка на собеседование через телеграм
+
+
+
+
+
+
- )
+ );
};
-export default FormPage
+export default FormPage;
diff --git a/src/pages/SingleReportPage/SingleReportPage.js b/src/pages/SingleReportPage/SingleReportPage.js
index 56a91804..b9225bdc 100644
--- a/src/pages/SingleReportPage/SingleReportPage.js
+++ b/src/pages/SingleReportPage/SingleReportPage.js
@@ -1,113 +1,112 @@
-import React from 'react'
-import arrowLeft from '../../images/right-arrow.png'
+import React from "react";
+import { useNavigate } from "react-router";
+import SVG from "react-inlinesvg";
-import SVG from 'react-inlinesvg'
+import { TaskItem } from "../../components/TaskItem/TaskItem";
+import { LogoutButton } from "../../components/LogoutButton/LogoutButton";
-import dateArrowIcon from '../../images/dateArrow.svg'
-import calendarIcon from '../../images/calendar.svg'
+import arrowLeft from "../../images/left-arrow.png";
+import dateArrowIcon from "../../images/dateArrow.svg";
+import calendarIcon from "../../images/calendar.svg";
-import { TaskItem } from '../../components/TaskItem/TaskItem'
-
-import './singleReportPage.scss'
-import {useNavigate} from "react-router";
-import {LogoutButton} from "../../components/LogoutButton/LogoutButton";
+import "./singleReportPage.scss";
const tasks = [
{
index: 1,
- text: 'Задача «67 – Навигационная система – Главное меню – Обновить иконки» заблокирована из-за отсутствия новых иконок',
- hours: 3
+ text: "Задача «67 – Навигационная система – Главное меню – Обновить иконки» заблокирована из-за отсутствия новых иконок",
+ hours: 3,
},
{
index: 2,
- text: 'Задача «83 – Навигационная система – Поиск по почтовому индексу – Добавить экран поиска по почтовому индексу» не может быть завершена, т.к. работа над задачей «82 – Навигационная система – Разработать модуль поиска по почтовому индексу» ещё не начата',
- hours: 3
- }
+ text: "Задача «83 – Навигационная система – Поиск по почтовому индексу – Добавить экран поиска по почтовому индексу» не может быть завершена, т.к. работа над задачей «82 – Навигационная система – Разработать модуль поиска по почтовому индексу» ещё не начата",
+ hours: 3,
+ },
];
const SingleReportPage = () => {
-
- const navigate= useNavigate();
+ const navigate = useNavigate();
return (
-
-
-
{navigate(-1)}} className='single-report-page__back'>
-
-
-
-
- Вернуться к списку
-
+
+
{
+ navigate(-1);
+ }}
+ className="single-report-page__back"
+ >
+
+
-
-
-
-
-
-
-
Какие задачи были выполнены?
-
- {tasks.map((task) => {
- return (
-
-
-
- )
- })}
-
-
-
-
-
-
Какие сложности возникли?
-
-
- 91 – Навигационная система – Поиск адреса – Разобраться, почему
- находятся несколько пересечений Невского пр. и Казанской ул.
-
-
-
-
-
-
-
Что планируется сделать завтра?
-
-
- 91 – Навигационная система – Поиск адреса – Разобраться, почему
- находятся несколько пересечений Невского пр. и Казанской ул.
-
-
-
-
-
+
Вернуться к списку
- )
+
+
+
+
+
+
Какие задачи были выполнены?
+
+ {tasks.map((task) => {
+ return (
+
+
+
+ );
+ })}
+
+
+
+
+
+
Какие сложности возникли?
+
+
+ 91 – Навигационная система – Поиск адреса – Разобраться, почему
+ находятся несколько пересечений Невского пр. и Казанской ул.
+
+
+
+
+
+
+
Что планируется сделать завтра?
+
+
+ 91 – Навигационная система – Поиск адреса – Разобраться, почему
+ находятся несколько пересечений Невского пр. и Казанской ул.
+
+
+
+
+
+
+ );
};
-export default SingleReportPage
+export default SingleReportPage;
diff --git a/src/pages/Summary/Summary.js b/src/pages/Summary/Summary.js
index 13590417..ef857948 100644
--- a/src/pages/Summary/Summary.js
+++ b/src/pages/Summary/Summary.js
@@ -10,7 +10,7 @@ import { urlForLocal } from "../../helper";
import { apiRequest } from "../../api/request";
import { Navigation } from "../../components/Navigation/Navigation";
-import arrow from "../../images/right-arrow.png";
+import arrow from "../../images/left-arrow.png";
import rightArrow from "../../images/arrowRight.svg";
import gitImgItem from "../../images/gitItemImg.svg";
diff --git a/src/pages/ViewReport/ViewReport.jsx b/src/pages/ViewReport/ViewReport.jsx
index df84fca4..25c6054d 100644
--- a/src/pages/ViewReport/ViewReport.jsx
+++ b/src/pages/ViewReport/ViewReport.jsx
@@ -14,7 +14,7 @@ import {
hourOfNum,
} from "../../components/Calendar/calendarHelper";
-import arrow from "../../images/right-arrow.png";
+import arrow from "../../images/left-arrow.png";
import arrowSwitchDate from "../../images/arrowViewReport.png";
import "./viewReport.scss";
@@ -103,7 +103,7 @@ export const ViewReport = () => {
Ваши отчеты -
просмотр отчета за день
-
+
Вернуться