partner-personal-area
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
import React, {useEffect} from 'react'
|
||||
import {useDispatch, useSelector} from 'react-redux'
|
||||
import {useParams, useNavigate} from 'react-router-dom'
|
||||
import {useParams, useNavigate, Navigate} from 'react-router-dom'
|
||||
import SVG from 'react-inlinesvg'
|
||||
|
||||
import Form from '../../components/Form/Form'
|
||||
@ -22,6 +22,9 @@ import {urlForLocal} from "../../helper";
|
||||
import './formPage.scss'
|
||||
|
||||
const FormPage = () => {
|
||||
if(localStorage.getItem('role_status') !== '18') {
|
||||
return <Navigate to="/profile" replace/>
|
||||
}
|
||||
const params = useParams();
|
||||
const navigate = useNavigate();
|
||||
const dispatch = useDispatch();
|
||||
|
@ -9,9 +9,13 @@ import {profiles, tags} from '../../redux/outstaffingSlice'
|
||||
|
||||
import {Header} from "../../components/Header/Header";
|
||||
import {apiRequest} from "../../api/request";
|
||||
import {Navigate} from "react-router-dom";
|
||||
|
||||
|
||||
const Home = () => {
|
||||
if(localStorage.getItem('role_status') !== '18') {
|
||||
return <Navigate to="/profile" replace/>
|
||||
}
|
||||
|
||||
const [isLoadingMore, setIsLoadingMore] = useState(false);
|
||||
const [index, setIndex] = useState(4);
|
||||
|
@ -1,17 +1,28 @@
|
||||
import React from 'react';
|
||||
|
||||
import {ProfileHeader} from "../../components/ProfileHeader/ProfileHeader";
|
||||
import {ProfileBreadcrumbs} from "../../components/ProfileBreadcrumbs/ProfileBreadcrumbs"
|
||||
import {Footer} from "../../components/Footer/Footer";
|
||||
|
||||
import arrowDown from "../../images/selectArrow.png"
|
||||
|
||||
import './partnerAddRequest.scss'
|
||||
import {Navigate} from "react-router-dom";
|
||||
|
||||
export const PartnerAddRequest = () => {
|
||||
if(localStorage.getItem('role_status') !== '18') {
|
||||
return <Navigate to="/profile" replace/>
|
||||
}
|
||||
return (
|
||||
<div className='partnerAddRequest'>
|
||||
<ProfileHeader />
|
||||
<div className='container'>
|
||||
<ProfileBreadcrumbs links={[
|
||||
{name: 'Главная', link: '/profile'},
|
||||
{name: 'Запросы и открытые позиции', link: '/profile/requests'},
|
||||
{name: 'Создание новой заявки', link: '/profile/add-request'}
|
||||
]}
|
||||
/>
|
||||
<h2 className='partnerAddRequest__title'>Страница добавления заявки</h2>
|
||||
<div className='partnerAddRequest__section'>
|
||||
<div className='partnerAddRequest__form'>
|
||||
|
@ -1,7 +1,8 @@
|
||||
import React, {useState} from 'react';
|
||||
import {Link} from "react-router-dom";
|
||||
import {Link, Navigate} from "react-router-dom";
|
||||
|
||||
import {ProfileHeader} from "../../components/ProfileHeader/ProfileHeader";
|
||||
import {ProfileBreadcrumbs} from "../../components/ProfileBreadcrumbs/ProfileBreadcrumbs"
|
||||
import {Footer} from "../../components/Footer/Footer";
|
||||
|
||||
import arrowSwitchDate from "../../images/arrowViewReport.png";
|
||||
@ -12,6 +13,9 @@ import personImg from "../../images/mokPerson.png"
|
||||
import './partnerBid.scss'
|
||||
|
||||
export const PartnerBid = () => {
|
||||
if(localStorage.getItem('role_status') !== '18') {
|
||||
return <Navigate to="/profile" replace/>
|
||||
}
|
||||
const [mokPersons] = useState([
|
||||
{
|
||||
name: 'Дмитрий, PHP Back end - разработчик, Middle',
|
||||
@ -33,6 +37,12 @@ export const PartnerBid = () => {
|
||||
<div className='partnerBid'>
|
||||
<ProfileHeader />
|
||||
<div className='container'>
|
||||
<ProfileBreadcrumbs links={[
|
||||
{name: 'Главная', link: '/profile'},
|
||||
{name: 'Запросы и открытые позиции', link: '/profile/requests'},
|
||||
{name: 'Просмотр заявки - PHP разработчик', link: '/profile/bid'}
|
||||
]}
|
||||
/>
|
||||
<h2 className='partnerBid__title'>Страница заявки </h2>
|
||||
<div className='partnerBid__qualification'>
|
||||
<h3>PHP разработчик</h3>
|
||||
@ -97,8 +107,8 @@ export const PartnerBid = () => {
|
||||
<p>Подходящие сотрудники по запросу</p>
|
||||
</div>
|
||||
<div className='partnerBid__suitable__persons'>
|
||||
{mokPersons.map((person) => {
|
||||
return <div className='partnerBid__suitable__person'>
|
||||
{mokPersons.map((person, index) => {
|
||||
return <div key={index} className='partnerBid__suitable__person'>
|
||||
<img src={person.img} alt='avatar' />
|
||||
<p>{person.name}</p>
|
||||
<Link className='partnerBid__suitable__person__more' to={person.link}>
|
||||
|
@ -1,12 +1,16 @@
|
||||
import React, {useState} from 'react';
|
||||
import {Link} from "react-router-dom";
|
||||
import {Link, Navigate} from "react-router-dom";
|
||||
|
||||
import {ProfileHeader} from "../../components/ProfileHeader/ProfileHeader";
|
||||
import {ProfileBreadcrumbs} from "../../components/ProfileBreadcrumbs/ProfileBreadcrumbs"
|
||||
import {Footer} from "../../components/Footer/Footer";
|
||||
|
||||
import './partnerRequests.scss'
|
||||
|
||||
export const PartnerRequests = () => {
|
||||
if(localStorage.getItem('role_status') !== '18') {
|
||||
return <Navigate to="/profile" replace/>
|
||||
}
|
||||
const [items] = useState([
|
||||
{
|
||||
name: 'PHP разработчик ',
|
||||
@ -29,6 +33,11 @@ export const PartnerRequests = () => {
|
||||
<div className='partnerRequests'>
|
||||
<ProfileHeader />
|
||||
<div className='container'>
|
||||
<ProfileBreadcrumbs links={[
|
||||
{name: 'Главная', link: '/profile'},
|
||||
{name: 'Запросы и открытые позиции', link: '/profile/requests'}
|
||||
]}
|
||||
/>
|
||||
<h2 className='partnerRequests__title'>Запросы</h2>
|
||||
<div className='partnerRequests__section'>
|
||||
<div className='partnerRequests__section__items'>
|
||||
|
@ -3,6 +3,7 @@ import {useSelector} from "react-redux";
|
||||
import {Link} from "react-router-dom";
|
||||
|
||||
import {ProfileHeader} from "../../components/ProfileHeader/ProfileHeader";
|
||||
import {ProfileBreadcrumbs} from "../../components/ProfileBreadcrumbs/ProfileBreadcrumbs"
|
||||
import {Footer} from "../../components/Footer/Footer";
|
||||
|
||||
import {getProfileInfo} from "../../redux/outstaffingSlice";
|
||||
@ -22,7 +23,7 @@ import './profile.scss'
|
||||
export const Profile = () => {
|
||||
|
||||
const profileInfo = useSelector(getProfileInfo);
|
||||
const [user] = useState('partner')
|
||||
const [user] = useState(localStorage.getItem('role_status') === '18' ? 'partner' : 'developer')
|
||||
const [profileItemsInfo] = useState({
|
||||
developer: [
|
||||
{
|
||||
@ -94,6 +95,7 @@ export const Profile = () => {
|
||||
<div className='profile'>
|
||||
<ProfileHeader/>
|
||||
<div className='container'>
|
||||
<ProfileBreadcrumbs links={[{name: 'Главная', link: '/profile'}]} />
|
||||
<h2 className='profile__title'>
|
||||
{user === 'developer' ?
|
||||
<span><p>Добрый день, </p>{profileInfo.fio}</span>
|
||||
|
@ -2,6 +2,7 @@ import React, {useEffect, useState} from 'react';
|
||||
import {useSelector} from "react-redux";
|
||||
import {ProfileHeader} from "../../components/ProfileHeader/ProfileHeader";
|
||||
import {getProfileInfo} from "../../redux/outstaffingSlice";
|
||||
import {ProfileBreadcrumbs} from "../../components/ProfileBreadcrumbs/ProfileBreadcrumbs"
|
||||
import {Footer} from '../../components/Footer/Footer'
|
||||
import {transformHtml, urlForLocal} from "../../helper";
|
||||
|
||||
@ -11,8 +12,12 @@ import gitImgItem from "../../images/gitItemImg.png"
|
||||
|
||||
import './summary.scss'
|
||||
import {apiRequest} from "../../api/request";
|
||||
import {Navigate} from "react-router-dom";
|
||||
|
||||
export const Summary = () => {
|
||||
if(localStorage.getItem('role_status') === '18') {
|
||||
return <Navigate to="/profile" replace/>
|
||||
}
|
||||
const profileInfo = useSelector(getProfileInfo);
|
||||
const [openGit, setOpenGit] = useState(false);
|
||||
const [gitInfo, setGitInfo] = useState([]);
|
||||
@ -26,6 +31,11 @@ export const Summary = () => {
|
||||
<ProfileHeader/>
|
||||
<div className='container'>
|
||||
<div className='summary__content'>
|
||||
<ProfileBreadcrumbs links={[
|
||||
{name: 'Главная', link: '/profile'},
|
||||
{name: 'Данные и резюме', link: '/profile/summary'}
|
||||
]}
|
||||
/>
|
||||
<h2 className='summary__title'>Ваше резюме {openGit && <span>- Git</span>}</h2>
|
||||
{openGit && <div className='summary__back' onClick={() => setOpenGit(false)}>
|
||||
<img src={arrow} alt='arrow'/>
|
||||
|
@ -1,11 +1,12 @@
|
||||
import React, {useEffect, useState} from 'react'
|
||||
import {Link} from "react-router-dom";
|
||||
import {Link, Navigate} from "react-router-dom";
|
||||
|
||||
import {useSelector} from "react-redux";
|
||||
import {getReportDate} from "../../redux/reportSlice";
|
||||
|
||||
import {Loader} from "../../components/Loader/Loader"
|
||||
import {ProfileHeader} from "../../components/ProfileHeader/ProfileHeader";
|
||||
import {ProfileBreadcrumbs} from "../../components/ProfileBreadcrumbs/ProfileBreadcrumbs"
|
||||
import {Footer} from "../../components/Footer/Footer";
|
||||
|
||||
import arrow from "../../images/right-arrow.png";
|
||||
@ -16,6 +17,9 @@ import {getCorrectDate, getCreatedDate} from '../../components/Calendar/calendar
|
||||
import './viewReport.scss'
|
||||
|
||||
export const ViewReport = () => {
|
||||
if(localStorage.getItem('role_status') === '18') {
|
||||
return <Navigate to="/profile" replace/>
|
||||
}
|
||||
const reportDate = useSelector(getReportDate);
|
||||
|
||||
const [taskText, setTaskText] = useState([]);
|
||||
@ -76,6 +80,10 @@ export const ViewReport = () => {
|
||||
<ProfileHeader/>
|
||||
<div className='container'>
|
||||
<div className='viewReport__info'>
|
||||
<ProfileBreadcrumbs links={[{name: 'Главная', link: '/profile'},
|
||||
{name: 'Ваша отчетность', link: '/profile/calendar'},
|
||||
{name: 'Просмотр отчета за день', link: '/profile/view'}]}
|
||||
/>
|
||||
<h2 className='viewReport__title'>Ваши отчеты - <span>просмотр отчета за день</span></h2>
|
||||
<Link className='viewReport__back' to={`/profile/calendar`}>
|
||||
<img src={arrow} alt='arrow'/><p>Вернуться</p>
|
||||
|
Reference in New Issue
Block a user