diff --git a/src/app/ocenka/page.tsx b/src/app/ocenka/page.tsx index 30bf92f..641123a 100644 --- a/src/app/ocenka/page.tsx +++ b/src/app/ocenka/page.tsx @@ -1,3 +1,5 @@ +import { OcenkaCategory } from '@/views'; + export default function OcenkaPage() { - return
Ocenka
; + return ; } diff --git a/src/shared/const/menu.ts b/src/shared/const/menu.ts index 9af04a4..8d88c5a 100644 --- a/src/shared/const/menu.ts +++ b/src/shared/const/menu.ts @@ -66,6 +66,7 @@ export const baseMenu: TMenu = [ }, { name: 'Оценка', + link: ROUTES.OCENKA, children: [ { name: 'По ситуации', @@ -269,6 +270,7 @@ export const baseMenu: TMenu = [ }, { name: 'Юрист', + link: ROUTES.JURIST, children: [ { name: 'Решение споров', diff --git a/src/views/expertise/category/model/links.ts b/src/views/expertise/category/model/links.ts index 8080d65..85d09c4 100644 --- a/src/views/expertise/category/model/links.ts +++ b/src/views/expertise/category/model/links.ts @@ -1,30 +1,36 @@ import { ROUTES } from '@shared/const/route'; -export const linksData = { - blockA: [ - { name: 'Автотехническая', link: ROUTES.EXPERTIZA_AUTOTECH }, - { name: 'Трасологическая', link: ROUTES.EXPERTIZA_TRASOLOGIA }, - { name: 'Оценочная', link: ROUTES.EXPERTIZA_OCENKI }, - { name: 'Пожарно-техническая', link: ROUTES.EXPERTIZA_POZHAR }, - { name: 'Товароведческая', link: ROUTES.EXPERTIZA_TOVAR }, - { - name: 'Рецензирование и проверка экспертизы', - link: ROUTES.EXPERTIZA_RECENZII, - }, - ], - blockB: [ - { name: 'Документарная', link: ROUTES.EXPERTIZA_DOCUMENT }, - { name: 'Бухгалтерская', link: ROUTES.EXPERTIZA_BUHGALTER }, - { name: 'Финансово-экономическая', link: ROUTES.EXPERTIZA_FINANS }, - { name: 'Земле-устроительная', link: ROUTES.EXPERTIZA_ZEM_STROY }, - { name: 'Кадастровая', link: ROUTES.EXPERTIZA_KADASTR }, - { name: 'Строительно-техническая', link: ROUTES.EXPERTIZA_STROIT }, - ], - blockC: [ - { name: 'Компьютерно-техническая', link: ROUTES.EXPERTIZA_COPMPUTER }, - { name: 'Почерковедческая', link: ROUTES.EXPERTIZA_POCHERK }, - { name: 'Судебно-биологическая', link: undefined }, - { name: 'Судебно-психологическая', link: undefined }, - { name: 'Технико-криминалистическая', link: ROUTES.EXPERTIZA_TECH_CRIM }, - ], -}; +export const linksData = [ + { + block: [ + { name: 'Автотехническая', link: ROUTES.EXPERTIZA_AUTOTECH }, + { name: 'Трасологическая', link: ROUTES.EXPERTIZA_TRASOLOGIA }, + { name: 'Оценочная', link: ROUTES.EXPERTIZA_OCENKI }, + { name: 'Пожарно-техническая', link: ROUTES.EXPERTIZA_POZHAR }, + { name: 'Товароведческая', link: ROUTES.EXPERTIZA_TOVAR }, + { + name: 'Рецензирование и проверка экспертизы', + link: ROUTES.EXPERTIZA_RECENZII, + }, + ], + }, + { + block: [ + { name: 'Документарная', link: ROUTES.EXPERTIZA_DOCUMENT }, + { name: 'Бухгалтерская', link: ROUTES.EXPERTIZA_BUHGALTER }, + { name: 'Финансово-экономическая', link: ROUTES.EXPERTIZA_FINANS }, + { name: 'Земле-устроительная', link: ROUTES.EXPERTIZA_ZEM_STROY }, + { name: 'Кадастровая', link: ROUTES.EXPERTIZA_KADASTR }, + { name: 'Строительно-техническая', link: ROUTES.EXPERTIZA_STROIT }, + ], + }, + { + block: [ + { name: 'Компьютерно-техническая', link: ROUTES.EXPERTIZA_COPMPUTER }, + { name: 'Почерковедческая', link: ROUTES.EXPERTIZA_POCHERK }, + { name: 'Судебно-биологическая', link: undefined }, + { name: 'Судебно-психологическая', link: undefined }, + { name: 'Технико-криминалистическая', link: ROUTES.EXPERTIZA_TECH_CRIM }, + ], + }, +]; diff --git a/src/views/expertise/category/ui.tsx b/src/views/expertise/category/ui.tsx index f86f87c..0ad665c 100644 --- a/src/views/expertise/category/ui.tsx +++ b/src/views/expertise/category/ui.tsx @@ -12,33 +12,17 @@ function ExpertiseCategory() {

Судебная экспертиза

-
-
    - {linksData.blockA.map(({ name, link }, index) => ( -
  • - {link ? {name} : name} -
  • - ))} -
-
-
-
    - {linksData.blockB.map(({ name, link }, index) => ( -
  • - {link ? {name} : name} -
  • - ))} -
-
-
-
    - {linksData.blockC.map(({ name, link }, index) => ( -
  • - {link ? {name} : name} -
  • - ))} -
-
+ {linksData.map(({ block }, index) => ( +
+
    + {block.map(({ name, link }, idx) => ( +
  • + {link ? {name} : name} +
  • + ))} +
+
+ ))}
diff --git a/src/views/index.ts b/src/views/index.ts index d4ab4c5..d5a0c37 100644 --- a/src/views/index.ts +++ b/src/views/index.ts @@ -16,3 +16,6 @@ export * from './expertise/tech-crim'; export * from './expertise/tovar'; export * from './expertise/trasologia'; export * from './expertise/zem-stroy'; + +//Ocenka +export * from './ocenka/category'; diff --git a/src/views/ocenka/category/index.ts b/src/views/ocenka/category/index.ts new file mode 100644 index 0000000..5ecdd1f --- /dev/null +++ b/src/views/ocenka/category/index.ts @@ -0,0 +1 @@ +export * from './ui'; diff --git a/src/views/ocenka/category/model/breadcrums.ts b/src/views/ocenka/category/model/breadcrums.ts new file mode 100644 index 0000000..6574ed9 --- /dev/null +++ b/src/views/ocenka/category/model/breadcrums.ts @@ -0,0 +1,14 @@ +import { ROUTES } from '@shared/const/route'; + +export const PAGE_NAME = 'Оценка'; + +export const breadcrumbData = [ + { + name: 'Оценка', + path: ROUTES.EXPERTIZA, + }, + { + name: PAGE_NAME, + path: '', + }, +]; diff --git a/src/views/ocenka/category/model/links.ts b/src/views/ocenka/category/model/links.ts new file mode 100644 index 0000000..22d54c8 --- /dev/null +++ b/src/views/ocenka/category/model/links.ts @@ -0,0 +1,112 @@ +import { ROUTES } from '@shared/const/route'; + +export const linksData = [ + { + title: 'По ситуации', + block: [ + { name: 'Независимая оценка', link: ROUTES.OCENKA_NEZAVISIM }, + { name: 'Оценка для опеки', link: ROUTES.OCENKA_OPEKA }, + { name: 'Оценка для нотариуса', link: ROUTES.OCENKA_NOTARIUS }, + { + name: 'Оценка для вступления в наследство', + link: ROUTES.OCENKA_NASLEDSTVO, + }, + { name: 'Оценка для страхования', link: ROUTES.OCENKA_STRAHOVANIE }, + { + name: 'Оценка для определения стоимости ущерба', + link: ROUTES.OCENKA_USCHERB, + }, + { name: 'Оценка имущества при разводе', link: ROUTES.OCENKA_RAZVOD }, + { name: 'Оценка недвижимости для суда', link: ROUTES.OCENKA_SUD }, + { + name: 'Оценка для внесения в уставный капитал', + link: ROUTES.OCENKA_USTAV_KAPITAL, + }, + { name: 'Оценка для ипотеки', link: ROUTES.OCENKA_IPOTEKA }, + { name: 'Оценка для банка', link: ROUTES.OCENKA_BANK }, + { + name: 'Оценка имущества для банкротства', + link: ROUTES.OCENKA_BANKROTSTV, + }, + ], + }, + { + title: 'Жилая недвижимость', + block: [ + { name: 'Оценка квартиры', link: ROUTES.OCENKA_KVARTIRA }, + { name: 'Оценка жилого дома', link: ROUTES.OCENKA_DOM }, + { name: 'Оценка земельного участка', link: ROUTES.OCENKA_UCHASTOK }, + { name: 'Оценка гаража', link: ROUTES.OCENKA_GARAZH }, + { name: 'Оценка ущерба недвижимости', link: ROUTES.OCENKA_NEDVIGA }, + { name: 'Оценка ущерба от залива', link: ROUTES.OCENKA_ZATOPLENIE }, + { name: 'Оценка ущерба от пожара', link: ROUTES.OCENKA_POZHAR }, + ], + }, + { + title: 'Коммерческая недвижимость', + block: [ + { name: 'Оценка стоимости арендной ставки', link: ROUTES.OCENKA_ARENDA }, + { name: 'Оценка здания', link: ROUTES.OCENKA_ZDANIE }, + { name: 'Оценка земель', link: ROUTES.OCENKA_ZEMLYA }, + { name: 'Оценка нежилого помещения', link: ROUTES.OCENKA_POMESCHENIE }, + { name: 'Оценка офиса', link: ROUTES.OCENKA_OFFICE }, + { name: 'Оценка сооружений', link: ROUTES.OCENKA_SOORUZHENIE }, + { + name: 'Оценка незавершенного строительства', + link: ROUTES.OCENKA_NEZAV_STROIT, + }, + ], + }, + { + title: 'Имущество', + block: [ + { name: 'Оценка недвижимости', link: ROUTES.OCENKA_NEDVIGA }, + { name: 'Оценка машин и оборудования', link: ROUTES.OCENKA_MASHINES }, + { name: 'Оценка спецтехники', link: ROUTES.OCENKA_SPECTECHNIKA }, + { name: 'Оценка нематериальных активов', link: ROUTES.OCENKA_ACTIVES }, + { name: 'Оценка стоимости предприятия', link: ROUTES.OCENKA_BUSINESS }, + { name: 'Оценка ценных бумаг', link: ROUTES.OCENKA_CENN_BUMAGI }, + { + name: 'Экспертиза и рецензирование отчета об оценке', + link: ROUTES.OCENKA_RECINSIA_OTCHETA, + }, + ], + }, + { + title: 'Ипотека', + block: [ + { + name: 'Оценка для ипотеки в Сбербанке', + link: ROUTES.OCENKA_IPOTEKA_SBER, + }, + { + name: 'Оценка для ипотеки в банке ВТБ', + link: ROUTES.OCENKA_IPOTEKA_VTB, + }, + ], + }, + { + title: 'Транспорт', + block: [ + { name: 'Оценка ущерба в ДТП', link: ROUTES.OCENKA_DTP }, + { + name: 'Оценка УТС – утраты товарной стоимости', + link: ROUTES.OCENKA_UTS, + }, + { + name: 'Оценка рыночной стоимости автомобиля', + link: ROUTES.OCENKA_RYNOCHNAYA, + }, + { name: 'Оценка автомобиля для суда', link: ROUTES.OCENKA_AUTO_SUD }, + { name: 'Оценка мотоциклов и мототехники', link: ROUTES.OCENKA_MOTO }, + { + name: 'Оценка морских и речных судов', + link: ROUTES.OCENKA_PLAVSREDSTV, + }, + { + name: 'Оценка воздушных судов и летательных аппаратов', + link: ROUTES.OCENKA_VOZDUSHNYH_SUDOV, + }, + ], + }, +]; diff --git a/src/views/ocenka/category/styles.module.scss b/src/views/ocenka/category/styles.module.scss new file mode 100644 index 0000000..2fc39a8 --- /dev/null +++ b/src/views/ocenka/category/styles.module.scss @@ -0,0 +1,78 @@ +.Container { + margin: 0 auto; + max-width: rem(1540px); + display: flex; + flex-direction: column; + gap: 0px; + padding: 10px; + + @include iftablet { + padding: 20px; + } + + @include iflaptop { + padding: 28px; + } + + @include ifdesktop { + padding: 40px; + } +} + +.Header { + font-family: $font-roboto; + font-weight: 500; + font-size: 32px; + line-height: 130%; + color: $color-text; + margin-bottom: 40px; +} + +.Grid { + display: grid; + grid-template-columns: auto; + gap: 40px 0; + + @include iftablet { + grid-template-columns: repeat(3, 1fr); + } +} + +.Block { + display: block; + + .Title { + font-family: $font-roboto; + font-weight: 500; + font-size: 24px; + line-height: 130%; + color: $color-text; + margin-bottom: 20px; + } + + .List { + display: flex; + flex-direction: column; + gap: 10px; + list-style-type: disc; + margin-left: 16px; + } + + .ListItem { + font-family: $font-roboto; + font-weight: 400; + font-size: 16px; + line-height: 130%; + color: $color-text; + list-style: unset; + + a { + color: $color-green; + } + + a:hover { + color: $color-green-hover; + text-decoration: underline; + } + } +} diff --git a/src/views/ocenka/category/ui.tsx b/src/views/ocenka/category/ui.tsx new file mode 100644 index 0000000..f00c0ff --- /dev/null +++ b/src/views/ocenka/category/ui.tsx @@ -0,0 +1,34 @@ +import s from './styles.module.scss'; +import { breadcrumbData } from './model/breadcrums'; +import { Breadcrumbs } from '@/widgets'; +import Link from 'next/link'; +import { Partners } from '@/feature/article'; +import { linksData } from './model/links'; + +function OcenkaCategory() { + return ( + <> + +
+

Услуги оценки имущества и бизнеса

+
+ {linksData.map(({ title, block }, index) => ( +
+

{title}

+
    + {block.map(({ name, link }, idx) => ( +
  • + {link ? {name} : name} +
  • + ))} +
+
+ ))} +
+
+ + + ); +} + +export { OcenkaCategory };