---
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
- Доп. проверка: каждый установленный статус должен существовать.