Мы продемонстрируем процесс создания собственной сущности «Инвестиционный проект» в Битрикс24.
Процесс будет разделён на несколько частей:
- Список инвестиционных проектов.
- Фильтр для main.ui.grid.
- Детальная страница инвестиционного проекта.
- REST API для получения инвестиционного проекта.
- Улучшенное открытие инвестиционного проекта в слайдере.
- Сохранение и отображение истории изменения инвестиционного проекта.
Общий план реализации такой:
- Создать класс, описывающий таблицу сущности в БД.
- Поля таблицы:
                                - id - первичный ключ
- Наименование - строка
- Дата создания - дата/время
- Предполагаемая дата окончания - дата/время
- Реальная дата окончания - дата/время
- Описание - текст
- Ответственный - число (идентификатор пользователя)
- Комментарий - текст
- Доход - строка
 
- Создать класс, описывающий таблицу, хранящую список изменений по инвестпроектам:
                                - Поля таблицы:
                                        - id - первичный ключ
- кто изменил - число (идентификатор пользователя)
- поле - строка
- предыдущее значение - строка
- новое значение - строка
- дата - дата/время
 
 
- Поля таблицы:
                                        
- Добавить миграции для создания таблиц инвестпроектов и истории:
                                - Создавать таблицы через sql-команды;
 
- Используя ORM, разработать функции для выполнения CRUD операций над инвестпроектами:
                                - Получение списка;
- Получение конкретной записи;
- Создание новой записи;
- Обновление существующей записи.
 
- Разработать аналогичные функции для истории инвестпроектов.
- Создать на портале раздел для инвестпроектов.
- Создать комплексный компонент для маршрутизации запросов.
- Создать компонент списка инвестпроектов:
                                - Компонент должен получать данные из соответствующих таблиц;
- Для получения данных необходимо использовать разработанные ранее функции;
- Список должен отображаться с помощью компонента bitrix:main.ui.grid.
- Добавить фильтр:
                                        - Доступные поля:
                                                - Название
- Дата создания
- Ответственный
- Планируемая дата окончания
- Реальная дата окончания
 
 
- Доступные поля:
                                                
- Добавить постраничную навигацию - 20 элементов на странице.
 
- С помощью компонента bitrix:ui.form создать компонент карточки редактирования инвестпроекта:
                                - Карточка должна открываться в слайдере;
- В карточке должно быть:
                                        - Основная информация.
- История редактирования выбранного инвестпроекта.
 
 
- Создание REST API для получения данных об инвестиционных проектов:
                                - Создать метод для получения списка данных.
- Создать метод для получения одного инвестпроекта.
 
Список ресурсов
Материалы для практики
- Исходный код (.zip)