Compare commits

...

2 Commits

Author SHA1 Message Date
Victor Batischev
a7ceb942a8 start tags rework 2024-02-09 20:59:44 +03:00
Victor Batischev
5450400315 style fix 2024-02-09 20:34:29 +03:00
13 changed files with 82 additions and 43 deletions

View File

@ -73,7 +73,7 @@
.add-person { .add-person {
background: #00c5a8; background: #00c5a8;
color: white; color: white;
font-size: 14px; font-size: 18px;
transition: all 0.15s ease; transition: all 0.15s ease;
left: -28px; left: -28px;
z-index: 2; z-index: 2;

View File

@ -66,6 +66,7 @@
margin-left: 15px; margin-left: 15px;
&__category { &__category {
height: 22px;
margin-right: 5px; margin-right: 5px;
} }

View File

@ -61,7 +61,7 @@ export const Navigation = () => {
}, },
{ {
path: "/treaties", path: "/treaties",
name: "Договора" name: "Договоры"
}, },
{ {
path: "/settings", path: "/settings",

View File

@ -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

View File

@ -436,7 +436,7 @@ export const PartnerAddRequest = () => {
</div> </div>
<p> <p>
В Личном кабинете платформы получайте отчеты выполненных работ и В Личном кабинете платформы получайте отчеты выполненных работ и
счета на согласование и оплату счеты на согласование и оплату
</p> </p>
</div> </div>
</div> </div>

View File

@ -79,10 +79,10 @@ export const PartnerRequests = () => {
})} })}
</div> </div>
<div className="partner-requests__section__info"> <div className="partner-requests__section__info">
<h3>Инструкция: подачи заявки</h3> <h3>Инструкция по подаче заявки</h3>
<p> <p>
Оператор компании заводит заявку и указывает необходимые Оператор компании создает заявку и указывает необходимые
параметры количество сотрудников, стек, уровень специалиста параметры: количество сотрудников, стек, уровень специалиста
</p> </p>
<BaseButton> <BaseButton>
<Link to={"/profile/add-request"}> <Link to={"/profile/add-request"}>
@ -107,10 +107,10 @@ export const PartnerRequests = () => {
</BaseButton> </BaseButton>
</div> </div>
<div className="partner-requests__no-items__create__instruction"> <div className="partner-requests__no-items__create__instruction">
<h3>Инструкция: подачи заявки</h3> <h3>Инструкция по подаче заявки</h3>
<p> <p>
Оператор компании заводит заявку и указывает необходимые Оператор компании создает заявку и указывает необходимые
параметры количество сотрудников, стек, уровень специалиста параметры: количество сотрудников, стек, уровень специалиста
</p> </p>
</div> </div>
</div> </div>

View File

@ -31,10 +31,10 @@ export const PartnerTreaties = () => {
<ProfileBreadcrumbs <ProfileBreadcrumbs
links={[ links={[
{ name: "Главная", link: "/profile" }, { name: "Главная", link: "/profile" },
{ name: "Договора и отчетность", link: "/profile/treaties" } { name: "Договоры и отчетность", link: "/profile/treaties" }
]} ]}
/> />
<h2 className="treaties__title">Договора и отчетность</h2> <h2 className="treaties__title">Договоры и отчетность</h2>
<div className="treaties__tabs"> <div className="treaties__tabs">
<div className="treaties__tabs__head"> <div className="treaties__tabs__head">
<div <div
@ -56,7 +56,7 @@ export const PartnerTreaties = () => {
onClick={() => toggleTabs(3)} onClick={() => toggleTabs(3)}
> >
<img src={checkImg} alt="img" /> <img src={checkImg} alt="img" />
<p>Счета</p> <p>Счеты</p>
</div> </div>
</div> </div>
<div className="treaties__tabs__content"> <div className="treaties__tabs__content">

View File

@ -173,7 +173,7 @@ export const PartnerCategories = () => {
); );
}) })
) : ( ) : (
<span className="partnerCategories__empty"> <span className="partner-categories__empty">
У вас нет нанятого персонала У вас нет нанятого персонала
</span> </span>
)} )}

View File

@ -81,7 +81,7 @@ export const Profile = () => {
{ {
path: "profile/treaties", path: "profile/treaties",
img: paymentIcon, img: paymentIcon,
title: "Договора и отчетность", title: "Договоры и отчетность",
description: "Ключевые условия<br/> договора" description: "Ключевые условия<br/> договора"
}, },
{ {

View File

@ -44,6 +44,7 @@ import TrackerSelectColumn from "@components/TrackerSelectColumn/TrackerSelectCo
import arrow from "assets/icons/arrows/arrowCalendar.png"; import arrow from "assets/icons/arrows/arrowCalendar.png";
import arrowDown from "assets/icons/arrows/selectArrow.png"; import arrowDown from "assets/icons/arrows/selectArrow.png";
import calendarIcon from "assets/icons/calendar.svg"; import calendarIcon from "assets/icons/calendar.svg";
import category from "assets/icons/category.svg";
import close from "assets/icons/close.png"; import close from "assets/icons/close.png";
import commentsBoard from "assets/icons/commentsBoard.svg"; import commentsBoard from "assets/icons/commentsBoard.svg";
import del from "assets/icons/delete.svg"; import del from "assets/icons/delete.svg";
@ -483,8 +484,10 @@ export const ProjectTracker = () => {
<div className="tracker__tabs__content__tasks tasks active__content"> <div className="tracker__tabs__content__tasks tasks active__content">
<div className="tasks__head"> <div className="tasks__head">
<div className="tasks__head__wrapper"> <div className="tasks__head__wrapper">
<h5>{projectBoard.name}</h5> <div className="tasks__head__title">
<img src={category}></img>
<h5>{projectBoard.name}</h5>
</div>
<div className="tasks__head__add"> <div className="tasks__head__add">
<BaseButton <BaseButton
onClick={() => { onClick={() => {
@ -541,7 +544,6 @@ export const ProjectTracker = () => {
> >
+ +
</span> </span>
<p>добавить участника</p>
<ListEmployees <ListEmployees
active={personListOpen} active={personListOpen}
@ -635,7 +637,11 @@ export const ProjectTracker = () => {
}} }}
> >
<p>Список тегов</p> <p>Список тегов</p>
<span>+</span> <img
className={tags.open ? "open" : ""}
src={arrowDown}
alt="arrow"
/>
</div> </div>
{tags.open && ( {tags.open && (
<div className="tags__list"> <div className="tags__list">
@ -755,6 +761,19 @@ export const ProjectTracker = () => {
> >
{tags.add ? "Добавить" : "Изменить"} {tags.add ? "Добавить" : "Изменить"}
</button> </button>
{tags.add && (
<button
className={"form-tag__btn"}
onClick={() =>
setTags((prevState) => ({
...prevState,
add: !tags.add
}))
}
>
Отмена
</button>
)}
</div> </div>
)} )}
</div> </div>

View File

@ -27,7 +27,7 @@ import BackEndImg from "assets/images/partnerProfile/personalBackEnd.svg";
import "./quiz-page.scss"; import "./quiz-page.scss";
export const QuizPage = () => { export const QuizPage = () => {
const [questionnaires, setQuestionnaires] = useState([]); const [questionnaires, setQuestionnaires] = useState(null);
const dispatch = useDispatch(); const dispatch = useDispatch();
const [personalInfoItems] = useState([ const [personalInfoItems] = useState([
{ {
@ -129,7 +129,8 @@ export const QuizPage = () => {
{/*</div>*/} {/*</div>*/}
<div className="quiz-page__block">Доступные тесты</div> <div className="quiz-page__block">Доступные тесты</div>
<div className="quiz-page__cards-test"> <div className="quiz-page__cards-test">
{questionnaires.length ? ( {questionnaires &&
questionnaires.length > 0 &&
questionnaires.map((item, index) => ( questionnaires.map((item, index) => (
<CardAvailableTest <CardAvailableTest
description={item.description} description={item.description}
@ -139,9 +140,9 @@ export const QuizPage = () => {
passedTest={item.passedTest} passedTest={item.passedTest}
key={index} key={index}
/> />
)) ))}
) : ( {questionnaires && questionnaires.length === 0 && (
<h1>Анкет нет</h1> <h1>Нет доступных тестов</h1>
)} )}
</div> </div>
{/*<div className="block-text">*/} {/*<div className="block-text">*/}

View File

@ -74,14 +74,16 @@ export const Tracker = () => {
}); });
apiRequest( apiRequest(
`/task/get-user-tasks?user_id=${localStorage.getItem("id")}&expand=timers` `/task/get-user-tasks?user_id=${localStorage.getItem("id")}&expand=timers`
).then((el) => { )
const allTasks = el ? el.filter((item) => item.status !== 0) : []; .then((el) => {
const completedTasks = el ? el.filter((item) => item.status === 0) : []; const allTasks = el?.length ? el.filter((item) => item.status !== 0) : [];
setAllTasks(allTasks); const completedTasks = el?.length ? el.filter((item) => item.status === 0) : [];
setFilteredAllTasks(allTasks); setAllTasks(allTasks);
setAllCompletedTasks(completedTasks); setFilteredAllTasks(allTasks);
setFilterCompleteTasks(completedTasks); setAllCompletedTasks(completedTasks);
}); setFilterCompleteTasks(completedTasks);
})
.catch((err) => console.error(err));
}, []); }, []);
const toggleTabs = (index) => { const toggleTabs = (index) => {
@ -211,8 +213,7 @@ export const Tracker = () => {
> >
<img src={addProjectImg} alt="#"></img> <img src={addProjectImg} alt="#"></img>
<p className="create-project-btn__text"> <p className="create-project-btn__text">
Ставьте задачи, следите за прогрессом, ведите учёт Добавить проект
рабочего времени
</p> </p>
</BaseButton> </BaseButton>
</div> </div>

View File

@ -219,6 +219,16 @@
border-bottom: 1px solid #dde2e4; border-bottom: 1px solid #dde2e4;
padding: 0 35px 15px; padding: 0 35px 15px;
&__title {
display: flex;
align-items: center;
column-gap: 5px;
img {
margin-left: -22px;
height: 22px;
}
}
@media (max-width: 1000px) { @media (max-width: 1000px) {
padding: 0 15px 15px; padding: 0 15px 15px;
} }
@ -250,7 +260,7 @@
font-size: 22px; font-size: 22px;
line-height: 32px; line-height: 32px;
margin-bottom: 0; margin-bottom: 0;
max-width: 21%; max-width: 160px;
word-break: break-all; word-break: break-all;
overflow: hidden; overflow: hidden;
white-space: nowrap; white-space: nowrap;
@ -456,8 +466,8 @@
} }
img { img {
width: 15px; width: 20px;
height: 15px; height: 20px;
} }
&:hover { &:hover {
@ -502,6 +512,13 @@
&__tags { &__tags {
position: relative; position: relative;
img {
transition: all 0.15s ease;
margin-left: 5px;
}
.open {
transform: rotate(180deg);
}
.tags { .tags {
&__add { &__add {
display: flex; display: flex;
@ -571,8 +588,8 @@
justify-content: space-between; justify-content: space-between;
padding: 0px 8px; padding: 0px 8px;
border-radius: 8px; border-radius: 8px;
height: 50px; height: 40px;
max-height: 50px; max-height: 40px;
background: #fff; background: #fff;
&__description { &__description {
@ -676,7 +693,7 @@
border: none; border: none;
background: #252c32; background: #252c32;
color: whitesmoke; color: whitesmoke;
margin: 10px auto 0; margin: 0 auto 0;
border-radius: 10px; border-radius: 10px;
font-size: 15px; font-size: 15px;
padding: 5px 12px; padding: 5px 12px;