1
0
mirror of https://github.com/dns-technologies/SDMS.git synced 2025-10-08 23:01:52 +02:00
2025-07-28 18:46:45 +10:00
2025-07-28 18:43:55 +10:00
2025-07-17 12:34:14 +10:00
2025-07-28 18:43:55 +10:00
2025-07-17 12:34:14 +10:00
2025-07-17 12:34:14 +10:00
2025-07-28 18:43:55 +10:00
2025-07-17 12:34:14 +10:00
2025-07-17 12:34:14 +10:00

infostart

SDMS — корпоративная экосистема для IT-разработки: от идеи до релиза

SDMS

SDMS (Software Development Management System) — это корпоративная система учета разработки и управления проектами, созданная для эффективной организации взаимодействия между заказчиками бизнес-направлений и IT-отделами

С 2017 года SDMS эволюционировала из инструмента учета времени разработчиков в платформу, которая охватывает все этапы работы: от генерации идеи до внедрения изменений.

Сегодня это инструмент для проектных специалистов, продакт-менеджеров, аналитиков, разработчиков, тестировщиков и руководителей, обеспечивающий прозрачность, контроль и слаженность процессов.

Публикация системы

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

sdms.dt - выгрузка ИБ, пройдено первоначальное заполнение данных, заполнены все константы.
sdms.cf - конфигурация базы, при первом запуске будет автоматически выполнено заполнение данных, и запустится мастер первоначальной настройки.

Публикуемые каталоги

  1. app - основная публикация, веб-клиент запускается во фрейме сайта
  2. webclient - публикация веб-клиента 1с
  3. services - публикация http-сервисов 1с
  4. assets - дополнительные используемые системой скрипты, стили, иконки
  5. avatars - каталог хранения аватарок пользователей из системы взаимодействия
  6. avatars_delete - каталог временного хранения удаленных аватарок
  7. attachments - каталог хранения файлов
  8. attachments_delete - каталог временного хранения удаленных файлов

Apache

httpd.conf - пример конфига.

Для работы нужно включить модули:

  • headers_module
  • rewrite_module

Настройка для переадресации запросов к публикации веб-клиента с пустым заголовком Referer на публикацию app:

<Location "/webclient">
	RewriteEngine On
	RewriteCond %{HTTP_REFERER} ^$
	RewriteRule ^.*$ /app [R=301,L,QSA]
</Location>

Настройка для добавления заголовка авторизации для использования методов http-сервиса для канбана.
Значение заголовка должно быть вид "Bearer " + jwt-токен служебного пользователя системы с ролью APIКанбан.

<LocationMatch "^/services/hs/api/(kanban|elapsedTime/activities|directions|products|customerGroup|systems).*">
	RequestHeader setifempty Authorization "Bearer [jwt токен служебного пользователя]"
</LocationMatch>

IIS

Для работы понадобится установить модуль переопределения URL-адресов.
Правила описаны в web.config публикаций.
Для реализации проброса заголовка авторизации нужно добавить серверную переменную публикации HTTP_Authorization.

Публикация services

Для публикации services добавлено правило KanbanAuth - правило для проброса авторизации служебного пользователя при использовании методов канбан.

  • Шаблон URL - hs/api/(kanban/|elapsedTime/activities|directions|products|customerGroup|systems).*, поиск по регулярному выражению, без учета регистра.
  • Условие (необязательно) - {HTTP_REFERER} соответствует шаблону, значение - hostname сервера.
  • Серверные переменные - имя HTTP_Authorization,` значение заголовок авторизации служебного пользователя с ролью APIКанбан.

Публикация webclient

Для публикации веб-клиента добавлено правило редиректа запросов на публикацию app. Для перенаправления ссылок на объекты конфигурации и др. в публикацию с панелью.

  • Шаблон URL - .*(#.*)?, поиск по регулярному выражению, без учета регистра.
  • Условие - {HTTP_REFERER} соответствует шаблону, значение - ^$, чтобы не перенаправлять запросы из фрейма.
  • Действие - перенаправление, URL-адрес перенаправления - http://{HTTP_HOST}/app{R:1}, не добавлять строку запроса.

Заполнение служебных данных системы

Настройки заполняются на форме Общие настройки обработки Панель администрирования (на панели всех инструментов: Прочие - Общие настройки системы).

Адреса web-окружения

  • Корневой URL - адрес сервера на котором развернута система
  • Каталог публикации базы - имя публикации для пользователей
  • Каталог публикации файлов - каталог в котором будут храниться файлы
  • Каталог служебных данных - вспомогательный каталог для хранения скриптов, стилей, картинок

Работа с файлами

  • Каталог на сервере - каталог на сервере в котором находятся публикации веб-сервера. По умолчанию для IIS - C:\inetpub\wwwroot, для Apache - C:\Apache24\htdocs.
  • Директория файлов объектов - каталог хранения прикрепленных файлов, картинок описания и т.п.
  • Директория аватаров пользователей - каталог хранения аватаров пользователей, пока используется только в Канбане. Если используется система взаимодействия, мы подменяем стандартную форму изменения аватара, и сохраняем их к себе и в СВ.
  • Каталог временных файлов - каталог для хранения временных файлов.

Интеграция с внешними утилитами

  • Шаблон запуска WinMerge - шаблон для запуска сравнения двух текстовых файлов. "C:\Program Files\WinMerge\WinMergeU.exe" %1 %2 -minimize -noninteractive -noprefs -ignoreeol -cfg ReportFiles/ReportType=2 -cfg ReportFiles/IncludeFileCmpReport=1 -u -xq -or %3

Работа WinMerge протестирована на версии 2.16.6, на версиях выше возникали проблемы. WinMerge 2.16.6

Дополнительные настройки

  • Коэффициент минимального времени трудозатрат - коэффициент на который умножается количество рабочих часов рабочего дня для расчета необходимого минимального количества внесенных трудозатрат.
  • Ключ из настроек публикации для доступа по jwt токену - значение поля keyInformation в default.vrd публикации services.
  • Подключение к RAS серверу - Данные подключения к службе RAS. Используется для завершения неактивных сеансов.
    • Адрес, Порт - адрес, порт сервера на котором установлена служба RAS.
    • Логин, Пароль администратора кластера
    • Логин, Пароль администратора сервера

Запуск 1С во фрейме с панелью инструментов

Имя публикации веб-клиента для запуска во фрейме должно быть webclient, если это не так требуется указать корректное имя каталога публикации web-клиента в переменную publicationName в script.js и строке подключения скрипта <script src="../webclient/scripts/webclient1ce.js"></script> в index.html.

Оповещения в мессенджеры

Поддерживается работа в двух мессенджерах: Rocket.Chat и Mattermost.
Мессенджер для оповещений устанавливается в константе Основной мессенджер. Все оповещения будут отправляться только в выбранный мессенджер. Идентификаторы пользователей мессенджеров заполняется в форме элемента справочника Пользователи на странице Общие настройки.
Настройки подключения и авторизации устанавливаются в справочнике Мессенджеры.

Description
Корпоративная система учета разработки и управления проектами
Readme GPL-3.0 24 MiB
Languages
1C Enterprise 95.9%
JavaScript 2.1%
HTML 1.2%
CSS 0.8%