.portalpart
WebPart на C# — UI и логика страниц. Hot deploy: обновление без остановки портала.
Расширения Portal
Готовые расширения для Portal: чат, шаблоны разделов и другое. Установка из админки портала — без ручной сборки инфраструктуры. Ниже также есть материалы для разработчиков, которые делают свои пакеты.
Portal поддерживает функциональные модули — ZIP-архивы .portalmod, в которых вы описываете всё необходимое для развёртывания решения у заказчика одним действием.
Не нужно отдельно создавать узлы, списки и библиотеки в админке и по очереди загружать расширения: платформа прочитает module.json и развернёт инфраструктуру автоматически.
В каталоге ниже — готовые демо-модули с исходниками. Их можно установить как есть или использовать как шаблон для своих решений.
.portalpartWebPart на C# — UI и логика страниц. Hot deploy: обновление без остановки портала.
.portaleventEvent Receiver — реакция на создание, изменение и удаление элементов списков.
.portaltimerTimer Job — фоновые задачи по расписанию: синхронизация, отчёты, уведомления.
Разделы портала, пункты бокового меню, страницы с WebPart — декларативно в module.json.
Поля, lookup-связи, библиотеки документов и изображений — схема данных создаётся при установке.
Демо-записи, файлы в библиотеках, пользователи — через seed/ или C# provisioner для сложных сценариев.
my-solution.portalmod (ZIP)
├── module.json # манифест: узлы, списки, зависимости
├── packages/
│ ├── widget.portalpart
│ ├── on-change.portalevent
│ └── nightly.portaltimer
├── seed/ # опционально: начальные данные
└── provisioner/ # опционально: C# для сложной логики
.portalmod локально или скачайте готовый из каталога.POST /api/v1/modules/install).
Зависимости между модулями задаются в requires — например, модуль «Дни рождения» требует предварительно установленную «Адресную книгу».
Каталог
Бесплатные модули — скачивание и установка с korport.ru. Платные — разовая лицензия модуля; на карточке — цена и покупка онлайн.
Показываем весь каталог. Можно оставить только бесплатные или только платные.
demo.banners · v1.0.0 · .portalmod
Карусель баннеров с демо-изображениями
Карусель баннеров с демо-слайдами. Модуль для тех, кто смотрит, как устроен .portalmod: поставили один файл — появились список, библиотека картинок и веб-часть на странице.
contoso.hello-widget · v2.0.2 · .portalpart
Минимальный пример C# WebPart с настраиваемым заголовком и цветом
Минимальный WebPart на C#: заголовок и цвет акцента задаются в свойствах веб-части. С него начинают, когда собирают свой .portalpart и хотят увидеть горячую замену без остановки портала.
contoso.list-change-handler · v2.0.3 · .portalevent
Логирует изменения элементов списка; context.GetListItemAsync / GetListItemSnapshotAsync
Пример Event Receiver: пишет в журнал создание, изменение и удаление элемента. В обработчике текущий список и элемент берутся из контекста, без отдельного запроса по UUID. Удобно как образец, когда свой приёмник только начинается.
contoso.heartbeat · v1.0.1 · .portaltimer
Пример Timer Job — лог + опциональный PortalListItem по sampleListId
Пример Timer Job. По расписанию пишет строку в журнал и, если указан список, создаёт в нём элемент. Нужен, чтобы посмотреть, как фоновая служба модуля регистрируется и где смотреть её лог.
korport.helpdesk · v3.0.19 · .portalmod
Заявки IT, канбан, база знаний, справочники и уведомления службы поддержки
Ссылки на создание заявки, базу знаний и карточку заявки открываются от корня сайта. Префикс /portal из адресов убран, закладки со старым путём после обновления лучше поправить.
korport.base.address-book · v1.3.3 · .portalmod
Оргструктура и сотрудники из AD-профилей; фото — аватары пользователей портала
Раздел открывается по адресу /address-book. Старый префикс /portal в ссылках меню и карточки больше не используется.
korport.base.org-structure · v1.0.3 · .portalmod
Дерево подразделений из адресной книги с ленивой загрузкой и переходом из карточки сотрудника
Пакет пересобран, когда обучение начало назначать курсы на отделы. Само дерево, ленивая подгрузка и переход из карточки сотрудника не менялись.
korport.base.birthdays · v1.0.6 · .portalmod
Именинники из адресной книги, WebPart и виджет
Ссылки с виджета ведут на корень портала, без префикса /portal. Карусель и состав именинников те же, что в 1.0.5.
korport.base.meeting-rooms · v1.0.9 · .portalmod
Бронирование переговорных комнат, виджет занятости и полноразмерный таймлайн
Пакет собран под корень сайта «/». Бронирование комнат и таймлайн работают как в 1.0.8, адреса без префикса /portal.
korport.base.tasks · v1.1.4 · .portalmod
Планирование задач: таймлайн и канбан с цветными колонками, приоритеты-бейджи, задачи подчинённых по полю «Руководитель»
Пакет перенумеровали вместе с переходом портала на адреса без /portal. Канбан, таймлайн и поле руководителя те же, что в 1.1.3.
korport.base.comms-shell · v1.0.2 · .portalmod
Корневой узел новостей и объявлений (без отдельной landing-страницы — виджеты на главной портала)
Каркас оставили родителем коммуникаций, когда рядом появились Helpdesk и переговорные. Своей ленты у него по-прежнему нет.
korport.base.news · v1.0.3 · .portalmod
Лента корпоративных новостей с рубриками
Лента и рубрики не менялись. Версию собрали вместе с обновлением каталога, чтобы пакет на сайте совпадал с остальными модулями базы.
korport.base.announcements · v1.0.3 · .portalmod
Важные объявления с подтверждением прочтения
Подтверждение прочтения работает как в 1.0.2. Версию подняли при сборке каталога, отдельных сценариев не добавляли.
korport.base.home-widgets · v1.0.0 · .portalmod
Погода и курсы валют для домашней страницы портала
Два виджета для главной: погода и курсы валют. Ставятся модулем и садятся на домашнюю страницу портала, отдельный раздел в меню не обязателен.
korport.base.portal-home · v1.0.26 · .portalmod
Домашняя страница портала с поиском, именинниками, задачами, заявками Helpdesk, переговорными, новостями и объявлениями
Все ссылки «ещё» с главной идут без префикса /portal: адресная книга, именинники, заявки, переговорные, новости и объявления. Раскладка виджетов та же.
korport.comms.chat · v0.2.0 · .portalmod
Мессенджер внутри Portal: личные и групповые чаты, каналы отделов, файлы и звонки. Если собеседник не в сети, личный звонок остаётся в переписке как пропущенный. Переписка хранится на вашей инфраструктуре.
Если собеседник не в сети, личный звонок остаётся в переписке как пропущенный, а не пропадает. Чат открывается со страницы узла. В закрытом контуре модуль можно поставить файлом, если он уже есть в локальной лицензии. Для кнопок звонка по-прежнему нужен LiveKit.
korport.workflows · v1.1.0 · .portalmod
Portal Flows: визуальная автоматизация списков и библиотек — триггеры элементов и файлов, условия, согласования, email и уведомления, права, HTTP, расписание. Требует платформу Portal с движком workflows (миграции 063+, 085).
Процесс можно повесить на библиотеку, не только на список. Срабатывает на файл: загрузка, изменение, те же условия и действия. Поля библиотеки при этом настраиваются так же, как поля списка.
korport.forms · v1.0.1 · .portalmod
Portal Forms: визуальный конструктор layout форм элементов списка (new/view/edit), кастомные JS-скрипты и веб-часть встраивания формы.
Конструктор форм элемента списка: отдельные макеты для создания, просмотра и правки. На форму можно повесить свой скрипт и встроить её веб-частью на другую страницу, не только в стандартное окно списка.
korport.kedo · v2.0.39 · .portalmod
Кадровый ЭДО без КриптоПро и токенов: корпоративная УНЭП на ГОСТ, подпись и ознакомление с ЛНА. При отправке выбирается работодатель из справочника юрлиц. Архив с подписями содержит отсоединённый PKCS#7 (.p7s): его проверяют КриптоПро и OpenSSL с ГОСТ. Отзыв УНЭП в UI и напоминания админам об истечении сертификата. Данные процесса — списки Portal; криптография — platform SDK. Маршрут: parallel/sequential, forward/decline/cancel. Portal Flows: отправка, ожидание подписи, ветки.
Если в компании несколько юрлиц, работодателя выбирают при отправке документа и ЛНА. Он остаётся на пакете, в цифровом следе и в архиве. Удостоверяющий центр по-прежнему один на портал: его можно перевыпустить, когда сменилось название или подходит десятилетний срок. Старый сертификат центра сохраняется для уже подписанных документов, действующие УНЭП сотрудников при этом перевыпускаются.
korport.vacations · v2.0.5 · .portalmod
График отпусков на год, заявки, согласование руководителем и HR, таймлайн по отделам, учёт остатков и приказы в КЭДО на подпись. Данные — списки Portal; логика — WebPart, Event Receivers и Timer Job модуля.
Приказ уходит в КЭДО с работодателем. Если юрлицо одно, оно подставляется само. Если их несколько, берётся организация из настроек отпусков, а не пустое поле в пакете.
korport.learning · v1.0.9 · .portalmod
Курсы со слайдами и тестом прямо в Portal: полки с обложками, назначение людям и отделам, сертификат и повтор, когда срок вышел.
Курсы со слайдами и тестом прямо в портале. Полки с обложками, назначение человеку или целому отделу, сертификат по итогам. Когда срок вышел, курс назначают пройти снова. Отдельный учебный сервер не нужен.
korport.sales · v1.0.15 · .portalmod
Воронка сделок, следующий шаг и тишина, KPI, личный зачёт и кубок отделов продаж. Настройки — списки Portal.
Утреннее напоминание по сделкам приходит один раз, а не пачкой на каждый тихий шаг. Любую запись уведомления или журнала можно удалить. Старт модуля больше не пишет ложную ошибку, если напоминать в этот час было некому.
В этой категории пока нет модулей.