Хелперы namespace ITino.ELMA.Common.Helpers ModelHelper /// /// Прописано ли свойство в конфигурации /// /// Метаданные свойства /// public static bool IsConfigProperty(PropertyMetadata pm) /// /// Получить Uid значения перечисления /// /// Значение перечисления /// public static Guid GetEnumUid(object value) /// /// Получить отображаемое описание значения перечисления /// /// Значение перечисления /// public static string GetEnumDescription(object value) /// /// Название типа сущности /// /// Сущность /// public static string GetEntityDisplayName(IEntity entity) /// /// Описание типа сущности /// /// Сущность /// public static string GetEntityDescription(IEntity entity) /// /// Проверить наличие элемента справочника и создать при необходимости /// /// Uid элемента справочника /// Значения свойств /// Тип сущности public static void CheckEntityPresent(Guid uid, object values) where T : IEntity /// /// Удалить элемент справочника (если есть) /// /// Uid элемента справочника /// Тип сущности public static void RemoveEntityIfPresent(Guid uid) where T : IEntity ELMA4 /// /// Обрезать часть даты и времени /// /// /// /// public static DateTime Truncate(this DateTime dateTime, TimeSpan timeSpan) /// /// Обрезать миллисекунды /// /// /// public static DateTime TruncateMs(this DateTime dateTime) ListenerHelper /// Получить старое значение /// Тип /// Событие /// Название свойства /// Старое значение public static T GetOldValue(PostUpdateEvent @event, string propertyName) /// Получить старое значение /// Тип /// Событие /// Название свойства /// Старое значение public static T GetOldValue(PreUpdateEvent @event, string propertyName) /// Получить значение свойства /// Тип /// Событие /// Название свойства /// Значение public static T GetValue(PostUpdateEvent @event, string propertyName) /// Присвоить значение свойству /// Событие /// Название свойства /// Значение public static void SetValue(PreUpdateEvent @event, string propertyName, object value) /// Получить значение свойства /// Тип /// Событие /// Название свойства /// Значение public static T GetValue(PostInsertEvent @event, string propertyName) /// Присвоить значение свойству /// Событие /// Название свойства /// Значение public static void SetValue(PreInsertEvent @event, string propertyName, object value) ServerHelper /// /// Получить среднее время запуска сервера /// public static string AverageStartTime /// /// Версия компонентов IEE /// public static string IEEVersion /// /// Возвращает признак что система в режиме тестирования /// public static bool IsTesting /// /// Перезапустить сервер /// public static void RestartServer() /// /// Логгер импорта /// public static ILog ImportLogger /// /// Запись в протокол импорта данных в справочник /// /// Имя справочника /// Всего записей /// Новых записей /// Обновлений /// Удалений public static void ImportLogCatalog(string name, int total, int @new = 0, int update = 0, int delete = 0) /// /// Запись в протокол импорта что данные для справочника отсутствуют /// /// Имя справочника public static void ImportLogCatalogNone(string name) /// /// Время работы сервера /// /// public static TimeSpan UpTime /// /// Логгер обновления БД /// public static ILog DbUpdateLogger /// /// Логер пакетной обработки /// public static ILog ProcessLogger   UserHelper /// /// Системный пользователь /// public static IUser SystemUser /// /// Пользователь подсистемы обмена /// public static IUser ExchangeUser /// /// Получить непосредственного руководителя для пользователя /// /// Пользователь /// Руководитель (если есть, иначе null) public static IUser GetImmediateChiefByUser(IUser user) /// /// Получить всех активных пользователей группы /// /// Строковый Uid группы /// Список пользователей public static IEnumerable GetUsersInGroup(string gUidStr) /// /// Получить всех активных пользователей группы /// /// Uid группы /// Список пользователей public static IEnumerable GetUsersInGroup(Guid gUid) /// /// Преобразовать полные инициалы в сокращенные /// /// Полные инициалы /// Фамилия в начале /// Сокращенные инициалы public static string ConvertToShortName(string fullName, bool lastNameOrder = true) /// /// Входит ли пользователь в группу Администраторы /// /// public static bool IsAdmin Только ELMA4 /// /// Отправить push уведомление текущему пользователю /// /// Заголовок уведомления /// Сообщение /// Ссылка в браузере при нажатии /// Тэг (для группировки) /// public static bool WebPush(string message, string title = null, string clickUrl = null, string tag = null) /// /// Отправить push уведомление пользователю /// /// Пользователь /// Заголовок уведомления /// Сообщение /// Ссылка в браузере при нажатии /// Тэг (для группировки) /// public static bool WebPush(IUser user, string message, string title = null, string clickUrl = null, string tag = null) WorkflowHelper /// /// Получить запускаемые процессы по входному типу сущности /// /// UID типа сущности /// Список процессов Workflow public static IEnumerable GetStartableProcessesByInputEntity(Guid typeUid) /// /// Комментарий для процессной задачи /// /// Uid элемента задачи на схеме /// Задача /// Автор комментария /// Дата комментария /// Комментарий /// Тип комментария public static void CommentForTask(Guid element, ITaskBase task, IUser author, DateTime date, string comment, EOWorkflowTaskCommentType type = EOWorkflowTaskCommentType.Info) /// /// Сохранить уведомление для последующего показа /// /// Текст сообщения /// Тип сообщения public static void Notify(string message, NotifyType type = NotifyType.Info) /// /// Убрать замещение у задачи процесса /// /// Задача процесса /// Uid задачи на схеме /// Список игнорируемых пользователей public static void RemoveReplacement([NotNull] this ITaskBase task, Guid uid, IEnumerable ignoreUsers = null) /// /// Завершить процесс с выводом ошибки пользователю /// /// /// public static void CompleteWithError(object context, string error) /// /// Выполнить длительное действие в отдельном потоке при создании задачи /// /// Id задачи на диаграмме /// Созданная задача в OnTaskCreate /// Действие public static void ProcessLongAction(Guid element, ITaskBase task, Action action)