select priority column, project persons avatars, copy links on button, executor on task

This commit is contained in:
2023-06-27 17:12:58 +03:00
parent 30353e45e5
commit e24a08210a
7 changed files with 315 additions and 200 deletions

View File

@ -43,6 +43,7 @@ import filesBoard from "assets/icons/filesBoard.svg";
import project from "assets/icons/trackerProject.svg";
import tasks from "assets/icons/trackerTasks.svg";
import accept from "assets/images/accept.png";
import avatarMok from "assets/images/avatarMok.png";
export const ProjectTracker = () => {
const dispatch = useDispatch();
@ -323,6 +324,13 @@ export const ProjectTracker = () => {
<span className="countPersons">
{projectBoard.projectUsers?.length}
</span>
<div className='projectPersons'>
{projectBoard.projectUsers?.length &&
projectBoard.projectUsers.slice(0, projectBoard.length > 3 ? 3 : projectBoard.length).map((person) => {
return <img key={person.user_id} src={person.user?.avatar ? urlForLocal(person.user.avatar) : avatarMok} alt='avatar' />
})
}
</div>
<span
className="addPerson"
onClick={() => {
@ -515,6 +523,17 @@ export const ProjectTracker = () => {
}}
className="tasks__board__item__description"
></p>
<div className="tasks__board__item__executor">
<span>{task.executor?.fio ? task.executor?.fio : 'Исполнитель не назначен'}</span>
{task.executor?.avatar &&
<img
src={
task.executor?.avatar ? urlForLocal(task.executor?.avatar) : avatarMok
}
alt="avatar"
/>
}
</div>
<div className="tasks__board__item__info">
<div className="tasks__board__item__info__more">
<img src={commentsBoard} alt="commentsImg" />

View File

@ -255,14 +255,27 @@
cursor: pointer;
align-items: center;
img {
.projectPersons {
display: flex;
position: relative;
width: 32px;
height: 32px;
}
left: -10px;
img {
position: relative;
display: flex;
width: 32px;
height: 32px;
}
img:nth-child(2) {
right: 12px;
img:nth-child(1) {
left: -5px;
}
img:nth-child(2) {
left: -10px;
}
img:nth-child(3) {
left: -15px;
}
}
span {
@ -282,15 +295,14 @@
color: #252c32;
border: 1px solid #dde2e4;
background: white;
left: -18px;
z-index: 2;
left: -5px;
}
.addPerson {
background: #00c5a8;
color: white;
font-size: 14px;
left: -30px;
left: -28px;
z-index: 2;
}
@ -586,7 +598,7 @@
}
&__description {
margin: 8px 0 15px;
margin: 8px 0 4px;
color: #5c6165;
font-weight: 400;
font-size: 14px;
@ -629,6 +641,28 @@
}
}
}
&__executor {
display: flex;
justify-content: space-between;
align-items: center;
margin: 10px 0 15px;
padding-right: 10px;
font-size: 14px;
font-weight: 500;
span {
max-width: 210px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
img {
width: 25px;
height: 25px;
}
}
}
.openItems {