vacancy #38
| @@ -1,17 +1,19 @@ | ||||
| import React from "react"; | ||||
|  | ||||
| import { Link } from "react-router-dom"; | ||||
|  | ||||
| import titleImg from "assets/images/VacancyItemImg.svg"; | ||||
|  | ||||
| import "./vacancyItem.scss"; | ||||
|  | ||||
| export const VacancyItem= ({ vacancy: { name, description, level, price, location, count } }) => { | ||||
| export const VacancyItem = ({ | ||||
|   vacancy: { name, description, level, price, location, count } | ||||
| }) => { | ||||
|   return ( | ||||
|     <div className="vacancy__item"> | ||||
|       <div className="vacancy__item__head"> | ||||
|         <div className="vacancy__item__title"> | ||||
|           <span className="vacancy__item__img"> | ||||
|           <img src={titleImg} alt="img" /> | ||||
|             <img src={titleImg} alt="img" /> | ||||
|           </span> | ||||
|           <h4>{name}</h4> | ||||
|         </div> | ||||
| @@ -27,7 +29,12 @@ export const VacancyItem= ({ vacancy: { name, description, level, price, locatio | ||||
|             <span>Ставка:</span> | ||||
|             <p>{price}</p> | ||||
|           </div> | ||||
|           <Link to={"/profile/open-requests/12"} className="vacancy__item__more">Все требования по вакансии</Link> | ||||
|           <Link | ||||
|             to={"/profile/open-requests/12"} | ||||
|             className="vacancy__item__more" | ||||
|           > | ||||
|             Все требования по вакансии | ||||
|           </Link> | ||||
|         </div> | ||||
|         <div className="vacancy__item__block--right"> | ||||
|           <div className="vacancy__item__info"> | ||||
| @@ -43,4 +50,4 @@ export const VacancyItem= ({ vacancy: { name, description, level, price, locatio | ||||
|       <button className="vacancy__item__btn">Откликнуться</button> | ||||
|     </div> | ||||
|   ); | ||||
| }; | ||||
| }; | ||||
|   | ||||
| @@ -4,9 +4,14 @@ import "./vacancyTab.scss"; | ||||
|  | ||||
| export const VacancyTab = ({ title, active, count, setActive }) => { | ||||
|   return ( | ||||
|     <div className={active === title ? "vacancy__tab vacancy__tab--active" : "vacancy__tab"} onClick={setActive}> | ||||
|     <div | ||||
|       className={ | ||||
|         active === title ? "vacancy__tab vacancy__tab--active" : "vacancy__tab" | ||||
|       } | ||||
|       onClick={setActive} | ||||
|     > | ||||
|       <p className="vacancy__tab__title">{title}</p> | ||||
|       <span className="vacancy__tabtab__count">{count}</span> | ||||
|     </div> | ||||
|   ); | ||||
| }; | ||||
| }; | ||||
|   | ||||
| @@ -4,286 +4,316 @@ import { Footer } from "@components/Common/Footer/Footer"; | ||||
| import { Navigation } from "@components/Navigation/Navigation"; | ||||
| import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs"; | ||||
| import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader"; | ||||
| import { VacancyTab } from "@components/VacancyTab/VacancyTab"; | ||||
| import { VacancyItem } from "@components/VacancyItem/VacancyItem"; | ||||
| import { VacancyTab } from "@components/VacancyTab/VacancyTab"; | ||||
|  | ||||
| import "./OpenRequest.scss"; | ||||
|  | ||||
| export const OpenRequest = () => { | ||||
|   const vacancy = [ | ||||
|     { | ||||
|       name: 'Frontend', | ||||
|       name: "Frontend", | ||||
|       count: 15, | ||||
|       items: [ | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 1', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 1", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 2', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 2", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 3', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 3", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 4', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 4", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 5', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 5", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 6', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 6", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         } | ||||
|       ] | ||||
|     }, | ||||
|     { | ||||
|       name: 'Backend', | ||||
|       name: "Backend", | ||||
|       count: 8, | ||||
|       items: [ | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 7', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 7", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 8', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 8", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         } | ||||
|       ] | ||||
|     }, | ||||
|     { | ||||
|       name: 'Дизайн', | ||||
|       name: "Дизайн", | ||||
|       count: 0, | ||||
|       items: [ | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 9', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 9", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 10', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 10", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         } | ||||
|       ] | ||||
|     }, | ||||
|     { | ||||
|       name: 'Аналитика', | ||||
|       name: "Аналитика", | ||||
|       count: 0, | ||||
|       items: [ | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 11', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 11", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 12', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 12", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 13', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 13", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         } | ||||
|       ] | ||||
|     }, | ||||
|     { | ||||
|       name: 'Тестирование', | ||||
|       name: "Тестирование", | ||||
|       count: 0, | ||||
|       items: [ | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 14', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 14", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 15', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 15", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior 16', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior 16", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         }, | ||||
|         { | ||||
|           name: 'Laravel Middle+/Senior', | ||||
|           description: 'Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы', | ||||
|           level: 'Middle+/Senior', | ||||
|           location: 'РФ, РБ', | ||||
|           price: '1500 руб. час', | ||||
|           count: '1 сотрудник' | ||||
|           name: "Laravel Middle+/Senior", | ||||
|           description: | ||||
|             "Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы", | ||||
|           level: "Middle+/Senior", | ||||
|           location: "РФ, РБ", | ||||
|           price: "1500 руб. час", | ||||
|           count: "1 сотрудник" | ||||
|         } | ||||
|       ] | ||||
|     } | ||||
|   ] | ||||
|   ]; | ||||
|  | ||||
|   const [activeTab, setActiveTab] = useState('Frontend') | ||||
|   const [activeTab, setActiveTab] = useState("Frontend"); | ||||
|   return ( | ||||
|     <div className="open-request"> | ||||
|       <ProfileHeader /> | ||||
| @@ -302,19 +332,25 @@ export const OpenRequest = () => { | ||||
|           <h2 className="summary__title">Работа в IT открытые запросы</h2> | ||||
|           <div className="vacancy__tabs"> | ||||
|             {vacancy.map((item, index) => { | ||||
|               return <VacancyTab title={item.name} count={item.count} active={activeTab} | ||||
|                                  setActive={() => setActiveTab(item.name)} key={index} /> | ||||
|             }) | ||||
|             } | ||||
|               return ( | ||||
|                 <VacancyTab | ||||
|                   title={item.name} | ||||
|                   count={item.count} | ||||
|                   active={activeTab} | ||||
|                   setActive={() => setActiveTab(item.name)} | ||||
|                   key={index} | ||||
|                 /> | ||||
|               ); | ||||
|             })} | ||||
|           </div> | ||||
|           <div className="vacancy__items"> | ||||
|             {vacancy.map((item) => { | ||||
|               if (item.name === activeTab) { | ||||
|                 return item.items.map((vacancy, index) => { | ||||
|                   return <VacancyItem key={index} vacancy={vacancy}/> | ||||
|                   return <VacancyItem key={index} vacancy={vacancy} />; | ||||
|                 }); | ||||
|               } | ||||
|               return null | ||||
|               return null; | ||||
|             })} | ||||
|           </div> | ||||
|         </div> | ||||
|   | ||||
| @@ -1,4 +1,3 @@ | ||||
|  | ||||
| import React from "react"; | ||||
|  | ||||
| import { Footer } from "@components/Common/Footer/Footer"; | ||||
| @@ -11,7 +10,6 @@ import titleImg from "assets/images/VacancyItemImg.svg"; | ||||
| import "./vacancy.scss"; | ||||
|  | ||||
| export const Vacancy = () => { | ||||
|  | ||||
|   return ( | ||||
|     <div className="vacancy"> | ||||
|       <ProfileHeader /> | ||||
| @@ -31,23 +29,46 @@ export const Vacancy = () => { | ||||
|           <div className="opening"> | ||||
|             <div className="opening__head"> | ||||
|               <span className="opening__img"> | ||||
|                 <img src={titleImg} alt='img' /> | ||||
|                 <img src={titleImg} alt="img" /> | ||||
|               </span> | ||||
|               <h4 className="opening__name">Проект представляет из себя монолит с большим техдолгом, нужен php разработчик с опытом распила монолита на модули/микросервисы</h4> | ||||
|               <h4 className="opening__name"> | ||||
|                 Проект представляет из себя монолит с большим техдолгом, нужен | ||||
|                 php разработчик с опытом распила монолита на модули/микросервисы | ||||
|               </h4> | ||||
|             </div> | ||||
|             <div className="opening__info"> | ||||
|               <div className="opening__description"> | ||||
|                 <span>Требования :</span> | ||||
|                 <ul> | ||||
|                   <li>Опыт разработки на Golang 2+ года и общий опыт разработки 3+ года;</li> | ||||
|                   <li>Понимание устройства языка Go (многопоточность, шедулер, кодогенерация);</li> | ||||
|                   <li>Опыт работы с брокерами сообщений (Kafka, RabbitMQ, Nuts и etc);</li> | ||||
|                   <li>Опыт работы с реляционными БД (PostgreSQL, ClickHouse и etc);</li> | ||||
|                   <li>Знание сетевого стека и основных сетевых протоколов на высоком уровне;</li> | ||||
|                   <li>Опыт работы с различными средствами автоматизации для процессов разработки (Nexus, Gitlab registry | ||||
|                     etc) (необходимо для понимания предметной области); | ||||
|                   <li> | ||||
|                     Опыт разработки на Golang 2+ года и общий опыт разработки 3+ | ||||
|                     года; | ||||
|                   </li> | ||||
|                   <li> | ||||
|                     Понимание устройства языка Go (многопоточность, шедулер, | ||||
|                     кодогенерация); | ||||
|                   </li> | ||||
|                   <li> | ||||
|                     Опыт работы с брокерами сообщений (Kafka, RabbitMQ, Nuts и | ||||
|                     etc); | ||||
|                   </li> | ||||
|                   <li> | ||||
|                     Опыт работы с реляционными БД (PostgreSQL, ClickHouse и | ||||
|                     etc); | ||||
|                   </li> | ||||
|                   <li> | ||||
|                     Знание сетевого стека и основных сетевых протоколов на | ||||
|                     высоком уровне; | ||||
|                   </li> | ||||
|                   <li> | ||||
|                     Опыт работы с различными средствами автоматизации для | ||||
|                     процессов разработки (Nexus, Gitlab registry etc) | ||||
|                     (необходимо для понимания предметной области); | ||||
|                   </li> | ||||
|                   <li> | ||||
|                     Понимание работы прокси и опыт работы с различными решениями | ||||
|                     (Nginx, Haproxy, Squid). | ||||
|                   </li> | ||||
|                   <li>Понимание работы прокси и опыт работы с различными решениями (Nginx, Haproxy, Squid).</li> | ||||
|                 </ul> | ||||
|               </div> | ||||
|               <div className="opening__blocks"> | ||||
|   | ||||
| @@ -2,7 +2,6 @@ import React from "react"; | ||||
| import { Route, Routes } from "react-router-dom"; | ||||
|  | ||||
| import { OpenRequest } from "@pages/OpenRequests/OpenRequest"; | ||||
| import { Vacancy } from "@pages/Vacancy/Vacancy" | ||||
| import { PartnerSettings } from "@pages/PartnerSettings/PartnerSettings"; | ||||
| import { PartnerTreaties } from "@pages/PartnerTreaties/PartnerTreaties"; | ||||
| import { Payouts } from "@pages/Payouts/Payouts"; | ||||
| @@ -14,6 +13,7 @@ import { QuizReportPage } from "@pages/Quiz/QuizReportPage"; | ||||
| import Statistics from "@pages/Statistics/Statistics"; | ||||
| import { Summary } from "@pages/Summary/Summary"; | ||||
| import { Tracker } from "@pages/Tracker/Tracker"; | ||||
| import { Vacancy } from "@pages/Vacancy/Vacancy"; | ||||
| import { ViewReport } from "@pages/ViewReport/ViewReport"; | ||||
|  | ||||
| import TicketFullScreen from "@components/Modal/Tracker/TicketFullScreen/TicketFullScreen"; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user