---
# System prepended metadata

title: Создание объекта недвижимости
tags: [+AgentCRM]

---

---
tags: +AgentCRM
---

# Создание объекта недвижимости

## Основные концепции

В первую очередь пользователь выбирает **тип** объекта и **категорию** объявления. После этого идёт запрос на сервер и загружаются разделы и поля для данного типа и категории и в результате рендерится постраничная форма. Пользователь заполняет поля в разделе; перед переходом к следующему происходит валидация. К предыдущим разделам можно вернуться с помощью кнопок навигации по форме (далее и назад).

## Разделы и поля

Разделы:

- [Основное](#Поля-в-разделе-“Основное”)
- [Собственники](#Поля-в-разделе-“Собственник”)
- [Об объекте](#Поля-в-разделе-“Об-объекте”)
- [Отделка и мебель](#Поля-в-разделе-“Отделка-и-мебель”) | *Квартира, комната, частный дом*
- [О здании](#Поля-в-разделе-“О-здании”) | *Квартира, комната, частный дом*
- [Объявление](#Поля-в-разделе-“Объявление”)

### Поля в разделе "Основное"

1. Адрес
    - Тип: *Адрес*
    - Обязательное
1. Размер доли | *Доля в квартире*
    - Тип: *Доля*
    - Обязательное
1. Номер квартиры | *Квартира*, *Доля в квартире*, *Комната* 
    - Тип: строка
    - Ограничения: рег. `/^\d{1,5}[A-zА-я/]{0,5}$/`
    - Пояснение: “Номер квартиры в системе не видит никто, кроме участников объявления”.
1. Номер комнаты | *Квартира*, *Комната* 
    - Тип: строка
    - Ограничения: рег. `/^\d{1,5}[A-zА-я/]{0,5}$/`
    - Пояснение: “Номер комнаты в системе не видит никто, кроме участников объявления”.
1. Номер подъезда | *Квартира*, *Доля в квартире*, *Комната* 
    - Тип: число
    - Ограничения: целое, больше 0, меньше 1000
1. Номер | *Гараж*
    - Тип: строка
    - Ограничения: рег. `/^\d{1,5}[A-zА-я/]{0,5}$/`
1. Кадастровый номер
    - Тип: строка
    - Ограничения: рег. `/[0-9:]{16,24}/`
    - Пояснение: “Кадастровый номер всегда можно найти на сайте ЕГРП 365”.

### Поля в разделе "Собственник"

1. Имя
    - Тип: строка
    - Обязательное
    - Ограничения: не менее 2, не более 256
1. Фамилия
    - Тип: строка
    - Ограничения: не менее 2, не более 256
1. Отчество
    - Тип: строка
    - Ограничения: не менее 2, не более 256
1. Дата рождения
    - Тип: дата
1. Контактные телефоны:
    - Тип: *СписокТелефонов*
    - Обязательное
    - Пояснение: “Добавьте больше номеров, если у собственника есть дополнительные контактные лица.”
1. Электронная почта
    - Тип: строка
    - Ограничения: email
1. Тип собственника
    - Тип: выбор одного
    - Обязательное
    - Варианты:
        - Физ. лицо
        - Юр. лицо
        - Агентство
1. Название компании
    - Тип: [*НазваниеКомпании*](#НазваниеКомпании) (не показывается для типа собственника "Физ. лицо")
1. ОГРН предприятия:
    - Тип: [*ОгрнПредприятия*](#ОгрнПредприятия) (показывается только для типа собственника "Юр. лицо")
1. ИНН предприятия:
    - Тип: [*ИннПредприятия*](#ИннПредприятия) (показывается только для типа собственника "Юр. лицо")

### Поля в разделе "Об объекте"

1. Подтип объекта:
    - Тип: ПодтипОбъекта
    - Обязательное
1. Площадь объекта | *все, кроме Участка*
    - Тип: число
    - Обязательное
    - Ограничения: больше 0, менее 10,000,000
1. Площадь участка, сот | *Участок*
    - Тип: число
    - Обязательное
    - Ограничения: больше 0, менее 10,000,000
1. Площадь участка, сот | *Частный дом*
    - Тип: число
    - Ограничения: больше 0, менее 10,000,000
1. Жилая площадь | *Квартира*, *Доля в квартире*
    - Тип: число
    - Обязательное
    - Ограничения: больше 0, менее 10,000,000
1. Количесто комнат | *Квартира*, *Доля в квартире*
    - Тип: [*КоличествоКомнат*](#КоличествоКомнат)
    - Обязательное
1. Кухня гостинная | *Квартира*, *Доля в квартире*
    - Тип: [*КухняГостинная*](#КухняГостинная)
    - Обязательное
1. Количесто спален | *Частный дом*
    - Тип: число
    - Обязательное
    - Ограничения: целое, больше 0, меньше 1000
1. Кухня-гостинная | *Квартира*, *Доля в квартире*
    - Тип: логический
    - Обязательное
1. Комнат в секции | *Комната*
    - Тип: число
    - Обязательное
    - Ограничения: целое, больше 0, менее 1000
1. Этаж | *Квартира*, *Доля в квартире*, *Комната*
    - Тип: число
    - Обязательное
    - Ограничения: целое, больше 0, менее 1000
1. Этажей в квартире | *Квартира*, *Доля в квартире*
    - Тип: число
    - Обязательное
    - Ограничения: целое, больше 0, менее 100
    - По умолчанию: 1
1. Санузел | *Квартира*, *Доля в квартире*, *Комната*, *Частный дом*
    - Тип: выбор одного
    - Обязательное
    - Варианты:
        - Совмещенный
        - Раздельный
        - Несколько
1. Балкон | *Квартира
    - Тип: выбор одного
    - Обязательное
    - Варианты:
        - Нет
        - Есть балкон
        - Есть лоджия
        - Несколько
1. Куда выходят окна | *Квартира*, *Доля в квартире*, *Комната*
    - Тип: выбор одного
    - Обязательное
    - Варианты:
        - Двор
        - Улица
        - Во двор и на улицу
1. Высота потолков | *Квартира*, *Доля в квартире*, *Комната*, *Частный дом*, *Гараж*
    - Тип: число
    - Ограничения: больше 0, не менее 10,000,000
1. Сделана перепланировка | *Квартира*, *Доля в квартире*
    - Тип: логический
    - Обязательное
    - Пояснение: “Перепланировка – когда планировка в квартире отличается от технического плана.”
1. Планировка комнат | *Квартира*, *Доля в квартире*
    - Тип: выбор одного
    - Варианты:
        - Изолированные
        - Проходные
        - Смешанные
        - Свободная
1. Планировка | *Квартира*, *Доля в квартире*
    - Тип: [*Изображение*](#Изображение)
1. Статус земли | *Участок*, *Частный дом*
    - Тип: выбор одного
    - Варианты:
        - Индивидуальное жилищное строительство (ИСЖ)
        - Фермерское хозяйство (КХФ)
        - Личное подсобное хозяйство (ЛПХ)
        - Садоводство
        - Дачное строительство
        - Промышленное назначение
1. Газоснабжение | *Участок*
    - Тип: логический
1. Электричество | *Участок*
    - Тип: логический
1. Водоснабжение | *Участок*
    - Тип: логический
1. Канализация | *Участок*
    - Тип: логический

### Поля в разделе "Отделка и мебель"

1. Отделка
    - Тип: выбор нескольких
    - Обязательное
    - Пояснение: “Выберите несколько вариантов, если в разных помещениях выполнена разная отделка.”
    - Варианты:
        - Черновая отделка
        - Требуется ремонт
        - Косметический ремонт
        - Евроремонт
        - Дизайнерский ремонт
1. Материал окон
    - Тип: выбор нескольких
    - Пояснение: “Выберите несколько вариантов, если в разных помещениях установлены разные типы окон.”
    - Варианты:
        - Алюминиевые
        - Деревянные
        - Евро окна
        - Пластиковые
        - Комбинированные
1. Мебель
    - Тип: выбор одного
    - Обязательное
    - Варианты:
        - Нет мебели
        - Есть только необходимое
        - Остаётся часть мебели
        - Остаётся вся мебель
1. Стоимость и состояние мебели:
    - Тип: выбор одного
    - Пояснение: `Оцените стоимость мебели на данный момент с учётом её состояния.`
    - Варианты:
        - Бюджетная
        - Стандартная
        - Дорогая
        - Элитная
1. Техника:
    - Тип: выбор одного
    - Обязательное
    - Варианты:
        - Нет мебели
        - Есть только необходимое
        - Остаётся часть техники
        - Остаётся вся техника
1. Стоимость и состояние техники:
    - Тип: выбор одного
    - Пояснение: `Оцените стоимость техники на данный момент с учётом её состояния.`
    - Варианты:
        - Бюджетная
        - Стандартная
        - Дорогая

### Поля раздела "О здании"

1. Количество этажей
    - Тип: число
    - Обязательное
    - Ограничения: целое, больше 0, менее 1000
1. Проект | *Квартира*, *Доля в квартире*
    - Тип: асинхронный выбор одного с поиском
1. Здание сдано? | "Квартира", *Доля в квартире*
    - Тип: логический
    - Обязательное
1. Год сдачи дома:
    - Тип: число
    - Ограничения: целое, больше 1600, менее 10000
1. Материал стен:
    - Тип: выбор одного
    - Варианты:
        - Блочный
        - Щитовой
        - Кирпичный
        - Монолитный
        - Монолитно-кирпичный
        - Панельный
        - Каркасный
        - Деревянный
1. Количество подъездов | *Квартира*, *Доля в квартире*, *Комната*
    - Тип: число
    - Ограничения: целое, больше 0, менее 1000
1. Пассажирские лифты | *Квартира*, *Доля в квартире*, *Комната*:
    - Обязательное: да
    - Тип: логический
1. Грузовые лифты | *Квартира*, *Доля в квартире*, *Комната*:
    - Обязательное: да
    - Тип: логический
1. Отопление
    - Тип: логический
1. Холодное водоснабжение
    - Тип: логический
1. Горячее водоснабжение
    - Тип: логический
1. Электроснабжение
    - Тип: логический
1. Газоснабжение:
    - Тип: логический
1. Канализация
    - Тип: логический
1. Видеонаблюдение
    - Тип: логический
1. Консьерж | *Квартира*, *Доля в квартире*, *Комната*
    - Тип: логический
1. Мусоропровод | *Квартира*, *Доля в квартире*, *Комната*
    - Тип: логический
1. Парковка
    - Тип: выбор одного
    - Варианты:
        - Отсутствует
        - Подземная
        - Придомовая
        - На крыше

### Поля раздела "Объявление"

1. Цена
    - Тип: число
    - Обязательное
    - Ограничения: целое, больше 0
    - Доп. проверка: если категория объявления "Продажа", проверить, что цена больше 10000
1. Ликвидность цены
    - Тип: [*Ликвидность*](#Ликвидность)
    - Обязательное
    - Пояснение: `Оцените соотношение цены-качества этого объекта`
    - Варианты:
        - Отличная (Зеленая)
        - Хорошая (Синяя)
        - Нормальная (Оранжевая)
1. Размер залога | *Аренда*
    - Тип: число
    - Обязательное
    - Ограничения: целое, больше 0
1. Срок сдачи | *Аренда*
    - Тип: выбор одного
    - Обязательное
    - Варианты:
        - Посучточно
        - На несколько месяцев
        - Длительный
1. Обременение | *Продажа*
    - Тип: логический
    - Обязательный
1. Описание
    - Тип: текст
    - Обязательное
    - Ограничения: больше 40 символов
1. Дополнительные статусы
    - Тип: [*ДопСтатусы*](#ДопСтатусы)
1. Фотографии
    - Тип: [*Фотографии*](#Фотографии)
    - Ограничения: не менее двух
1. Видео YouTube
    - Тип: строка
    - Ограничение: url
1. Администратор объявления:
    - Тип: [*ВыборСпециалиста*](#ВыборСпециалиста)
1. Администратор объявления:
    - Тип: [*ВыборСпециалиста*](#ВыборСпециалиста)
1. Дополнительные специалисты:
    - Тип: [*ВыборСпециалиста*](#ВыборСпециалиста) (с возможностью выбора нескольких)

### Типы полей

#### Адрес

Реализация этого поля является отдельной задачей ввиду его крайне высокой сложности и не раскрывается в данном документе. 

#### НазваниеКомпании
- Описание: представляет собой поле с вводом строки. Показывается только для типа собственника "Юр. лицо" и "Агентство")
- Ограничения: не короче 2 символов, не длинее 512

#### ОгрнПредприятия
- Описание: представляет собой поле с вводом строки. Показывается только для типа собственника "Юр. лицо")
- Ограничения: не короче 2 символов, не длинее 512

#### ИннПредприятия
- Описание: представляет собой поле с вводом строки. Показывается только для типа собственника "Юр. лицо")
- Ограничения: не короче 2 символов, не длинее 512

#### КоличествоКомнат
- Описание: представляет собой поле с вводом числа. Не показывается, если выбран подтип объекта "Студия"
- Ограничения: целое; больше 0, менее 1000
- Доп. параметры:
    - Наименование поля с подтипом

#### КухняГостинная
- Описание: представляет собой логическое поле; не показывается, если выбран подтип объекта "Студия"
- Доп. параметры:
    - Наименование поля с подтипом
- По умолчанию: ложь

#### Изображение
- **Сложное поле**
- Универсальное поле
- Описание: загрузка одного изображения.
- Особое поведение: должно быть ограничение на максимальный размер файла: 16 мегабайт.

#### Ликидность
- Описание: представляет собой выбор одного элемента; варианты имеют цвет текста

#### Фотографии
- **Сложное поле**
- Универсальное поле
- Описание: загрузка нескольких изображений с возможностью изменения порядка
- Особое поведение: изображение на сервере должно быть сжато до 1200 пикселей по длинной стороне (если длинная сторона больше этого размера). Должно быть ограничение на максимальный размер файла: 16 мегабайт.
- Доп. параметры:
    - Ограничение на минимальное количество фото
    - Ограничение на максимальное количество фото

#### ВыборСпециалиста
- **Сложное поле**
- Описание: представляет собой асинхронный выбор одного или несколько элементов с поиском. У каждого элемента есть аватар. Невозможно отменить выбор поля с выбором одного.
- Особое поведение: если пользователь - администратор, то устанавливается автоматически в поле "Администратор"; если пользователь - агент, то устанавливается автоматически в поле "Главный агент".
- Доп. параметры:
    - Адрес получения вариантов по поиску
    - Выбор одного или нескольких (логический)
- Ограничения: максимальное количество выбранных элементов в режиме выбора нескольких: 10
- Доп. проверка: должно быть установлено либо поле "Администратор", либо поле "Главный агент". Специалист, установленный в поле "Главный агент" должен быть агентом, а специалист, установленный в поле "Администратор" должен быть администратором. Каждый специалист в поле "Дополнительные агенты" должны быть агентами.

#### ДопСтатусы
- **Сложное поле**
- Описание: представляет выбор нескольких с поиском с ограничением количества выбранных элементов; варианты имеют точку с определённым цветом.
- Ограничения: максимальное количество выбранных элементов: 5
- Доп. проверка: каждый установленный статус должен существовать.