feat: Сервисы и модели RabbitMq разнесены согласно архитектуры
This commit is contained in:
22
PARR.Domain/Common/Rabbit/Messages/AihitDataMq.cs
Normal file
22
PARR.Domain/Common/Rabbit/Messages/AihitDataMq.cs
Normal file
@@ -0,0 +1,22 @@
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, данные из АИХИТ
|
||||
/// </summary>
|
||||
public class AihitDataMq
|
||||
{
|
||||
public required string EK { get; set; }
|
||||
public string? IP { get; set; }
|
||||
public string? DB { get; set; }
|
||||
public string? APP { get; set; }
|
||||
public string? CKBS { get; set; }
|
||||
public string? IB { get; set; }
|
||||
public string? SI { get; set; }
|
||||
public string? SM { get; set; }
|
||||
public string? OS { get; set; }
|
||||
public string? WorkGroup { get; set; }
|
||||
public required string Status { get; set; }
|
||||
public required string ResponseArea { get; set; }
|
||||
public required string WorkGroupResponseArea { get; set; }
|
||||
}
|
||||
}
|
||||
18
PARR.Domain/Common/Rabbit/Messages/AihitMainDataMq.cs
Normal file
18
PARR.Domain/Common/Rabbit/Messages/AihitMainDataMq.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, данные из АИХИТ для любой ХП
|
||||
/// </summary>
|
||||
public class AihitMainDataMq
|
||||
{
|
||||
/// <summary>
|
||||
/// ЭК
|
||||
/// </summary>
|
||||
public required string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Список полей ЭК, в формате - имя поля / значение
|
||||
/// </summary>
|
||||
public Dictionary<string, string?> Properties { get; set; } = new Dictionary<string, string?>();
|
||||
}
|
||||
}
|
||||
50
PARR.Domain/Common/Rabbit/Messages/GeneratorTemplateMq.cs
Normal file
50
PARR.Domain/Common/Rabbit/Messages/GeneratorTemplateMq.cs
Normal file
@@ -0,0 +1,50 @@
|
||||
using PARR.Domain.Entities.Base.History;
|
||||
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, запрос на генерацию шаблона
|
||||
/// </summary>
|
||||
public class GeneratorTemplateMq
|
||||
{
|
||||
/// <summary>
|
||||
/// Id работы
|
||||
/// </summary>
|
||||
public Guid WorkId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Id приложения
|
||||
/// </summary>
|
||||
public Guid ApplicationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Действие: create, deactivate
|
||||
/// </summary>
|
||||
public required string Action { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ЭК, принимает регулярное выражение. Например: *, ВРТ-*-ДВС
|
||||
/// </summary>
|
||||
public required string Ek { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Статус ЭК. Допустимые значения: 0 - все статусы, 1,2,3,4,5,6,7,9
|
||||
/// </summary>
|
||||
public int StatusEk { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Активировать шаблон
|
||||
/// </summary>
|
||||
public bool? IsActiveTemplate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Активировать расписание
|
||||
/// </summary>
|
||||
public bool? IsActiveSchedule { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Инициатор запроса к генератору
|
||||
/// </summary>
|
||||
public HistoryInitiator? HistoryInitiator { get; set; }
|
||||
}
|
||||
}
|
||||
14
PARR.Domain/Common/Rabbit/Messages/NextRunUpdateMq.cs
Normal file
14
PARR.Domain/Common/Rabbit/Messages/NextRunUpdateMq.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
using PARR.Domain.Entities.Base.History;
|
||||
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Запрос на обновление всех nextRun для JobGroup
|
||||
/// </summary>
|
||||
public class NextRunUpdateMq
|
||||
{
|
||||
public Guid JobGroupId { get; set; }
|
||||
|
||||
public required HistoryInitiator Initiator { get; set; }
|
||||
}
|
||||
}
|
||||
10
PARR.Domain/Common/Rabbit/Messages/OrderManageMq.cs
Normal file
10
PARR.Domain/Common/Rabbit/Messages/OrderManageMq.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, запрос на изменение Наряда в ЕСПП
|
||||
/// </summary>
|
||||
public class OrderManageMq
|
||||
{
|
||||
public Guid OrderId { get; set; }
|
||||
}
|
||||
}
|
||||
43
PARR.Domain/Common/Rabbit/Messages/TemplateActivatorMq.cs
Normal file
43
PARR.Domain/Common/Rabbit/Messages/TemplateActivatorMq.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
using PARR.Domain.Entities.Base.History;
|
||||
using PARR.Domain.Enums;
|
||||
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, активация/деактивация шаблонов/расписаний
|
||||
/// </summary>
|
||||
public class TemplateActivatorMq
|
||||
{
|
||||
/// <summary>
|
||||
/// ИД объекта, JobGroupId, JobId, TemplateId
|
||||
/// </summary>
|
||||
public Guid Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Тип объекта
|
||||
/// </summary>
|
||||
public SyncTaskEntityTypeEnum EntityType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Учитывать неиспользованные шаблоны
|
||||
/// </summary>
|
||||
public bool AllowUnused { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// Объект воздейстивя (шаблон, расписание)
|
||||
/// </summary>
|
||||
public TemplateActivatorEsppObjectTypesEnum EsppObject { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Новое состояние объекта
|
||||
/// </summary>
|
||||
public bool NewState { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Инициатор изменений
|
||||
/// </summary>
|
||||
public required HistoryInitiator HistoryInitiator { get; set; }
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
14
PARR.Domain/Common/Rabbit/Messages/TemplateDistributorMq.cs
Normal file
14
PARR.Domain/Common/Rabbit/Messages/TemplateDistributorMq.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
using PARR.Domain.Entities.Base.History;
|
||||
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, распределить шаблоны для JobGroupId (для TemplateDistributor)
|
||||
/// </summary>
|
||||
public class TemplateDistributorMq
|
||||
{
|
||||
public Guid JobGroupId { get; set; }
|
||||
|
||||
public required HistoryInitiator Initiator { get; set; }
|
||||
}
|
||||
}
|
||||
46
PARR.Domain/Common/Rabbit/Messages/TemplateGeneratorMq.cs
Normal file
46
PARR.Domain/Common/Rabbit/Messages/TemplateGeneratorMq.cs
Normal file
@@ -0,0 +1,46 @@
|
||||
using PARR.Domain.Entities.Base.History;
|
||||
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, простого создания Template
|
||||
/// </summary>
|
||||
public class TemplateGeneratorMq
|
||||
{
|
||||
/// <summary>
|
||||
/// Id регламентной работы
|
||||
/// </summary>
|
||||
public Guid JobId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Id Юнита(единицы обслуживания)/ЭК
|
||||
/// </summary>
|
||||
public Guid UnitId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Актировать шаблон при инициализации
|
||||
/// </summary>
|
||||
public bool? IsActiveTemplate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Актировать расписание при инициализации
|
||||
/// </summary>
|
||||
public bool? IsActiveSchedule { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Инициатор запроса к генератору
|
||||
/// </summary>
|
||||
public HistoryInitiator? HistoryInitiator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Связанные ЭК для сгруппированного типа JobGroup
|
||||
/// </summary>
|
||||
public required List<Guid> UnitsInTemplate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Индекс, используется в групповых шаблонах
|
||||
/// </summary>
|
||||
public int? Index { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
13
PARR.Domain/Common/Rabbit/Messages/TemplateMatcherMq.cs
Normal file
13
PARR.Domain/Common/Rabbit/Messages/TemplateMatcherMq.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using PARR.Domain.Entities.Base.History;
|
||||
using PARR.Domain.Enums;
|
||||
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
public class TemplateMatcherMq
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
public SyncTaskEntityTypeEnum EntityType { get; set; }
|
||||
public TemplateMatcherActionEnum Action { get; set; }
|
||||
public required HistoryInitiator Initiator { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// Модель в MQ, генератора заданий на генерацию шаблонов
|
||||
/// </summary>
|
||||
public class TemplateTaskGeneratorMq
|
||||
{
|
||||
/// <summary>
|
||||
/// Id регламентной работы
|
||||
/// </summary>
|
||||
public Guid JobId { get; set; }
|
||||
}
|
||||
}
|
||||
58
PARR.Domain/Common/Rabbit/Messages/TemplateUpdaterMq.cs
Normal file
58
PARR.Domain/Common/Rabbit/Messages/TemplateUpdaterMq.cs
Normal file
@@ -0,0 +1,58 @@
|
||||
using PARR.Domain.Entities.Base.History;
|
||||
using PARR.Domain.Enums;
|
||||
|
||||
namespace PARR.Domain.Common.Rabbit.Messages
|
||||
{
|
||||
public class TemplateUpdaterMq
|
||||
{
|
||||
public Guid TemplateId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Id регламентной работы
|
||||
/// </summary>
|
||||
public Guid JobId { get; set; }
|
||||
|
||||
public required string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Актировать шаблон при инициализации
|
||||
/// </summary>
|
||||
public bool IsActiveTemplate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Актировать расписание при инициализации
|
||||
/// </summary>
|
||||
public bool IsActiveSchedule { get; set; }
|
||||
|
||||
//public DateTimeOffset? LastRun { get; set; }
|
||||
|
||||
//public DateTimeOffset NextRun { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Это новый шаблон? (true - перемещаем существующий в новый Job) (false - шаблон остается в своем Job)
|
||||
/// </summary>
|
||||
public bool IsNew { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Id Юнита(единицы обслуживания)/ЭК
|
||||
/// </summary>
|
||||
public Guid UnitId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Индекс, используется в групповых шаблонах
|
||||
/// </summary>
|
||||
public int? Index { get; set; }
|
||||
|
||||
public TemplateStatusTypeEnum StatusTypeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Инициатор запроса к генератору
|
||||
/// </summary>
|
||||
public required HistoryInitiator Initiator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Связанные ЭК для сгруппированного типа JobGroup
|
||||
/// </summary>
|
||||
public required List<Guid> UnitsInTemplate { get; set; }
|
||||
}
|
||||
}
|
||||
18
PARR.Domain/Common/Rabbit/RabbitSendResult.cs
Normal file
18
PARR.Domain/Common/Rabbit/RabbitSendResult.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
namespace PARR.Domain.Common.Rabbit
|
||||
{
|
||||
/// <summary>
|
||||
/// Результат отправки очереди в MQ
|
||||
/// </summary>
|
||||
public record RabbitSendResult
|
||||
{
|
||||
/// <summary>
|
||||
/// Результат отправки
|
||||
/// </summary>
|
||||
public bool IsSuccess { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Неотправленные сообщения
|
||||
/// </summary>
|
||||
public string[]? NotSendMessages { get; init; }
|
||||
}
|
||||
}
|
||||
44
PARR.Domain/Common/Roles/ParrRoles.cs
Normal file
44
PARR.Domain/Common/Roles/ParrRoles.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
namespace PARR.Domain.Common.Roles
|
||||
{
|
||||
/// <summary>
|
||||
/// Роли ПАРР
|
||||
/// </summary>
|
||||
public static class ParrRoles
|
||||
{
|
||||
// Подробнее о авторизации в документации в разделе Авторизация
|
||||
|
||||
private const string Base = Administrator.Role + ",";
|
||||
|
||||
/// <summary>
|
||||
/// Роль: Администратор
|
||||
/// </summary>
|
||||
public static class Administrator
|
||||
{
|
||||
public const string Role = "administrator";
|
||||
|
||||
public const string Description = "Администратор";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Роль: agent Агент
|
||||
/// </summary>
|
||||
public static class Agent
|
||||
{
|
||||
public const string Role = "agent";
|
||||
public const string RoleOrAdmin = Base + Role;
|
||||
|
||||
public const string Description = "Агент";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Роль: espp-robot Робот ЕСПП
|
||||
/// </summary>
|
||||
public static class EsppRobot
|
||||
{
|
||||
public const string Role = "espp-robot";
|
||||
public const string RoleOrAdmin = Base + Role;
|
||||
|
||||
public const string Description = "Робот ЕСПП";
|
||||
}
|
||||
}
|
||||
}
|
||||
14
PARR.Domain/DTOs/RabbitApi/RabbitApiResult.cs
Normal file
14
PARR.Domain/DTOs/RabbitApi/RabbitApiResult.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
namespace PARR.Domain.DTOs.RabbitApi
|
||||
{
|
||||
/// <summary>
|
||||
/// Ответ от API RabbitMQ
|
||||
/// </summary>
|
||||
public record RabbitApiResult
|
||||
{
|
||||
public bool IsSuccess { get; init; }
|
||||
|
||||
public object? Response { get; init; }
|
||||
|
||||
public Exception? Exception { get; init; }
|
||||
}
|
||||
}
|
||||
13
PARR.Domain/Enums/DistributionPeriodTypeEnum.cs
Normal file
13
PARR.Domain/Enums/DistributionPeriodTypeEnum.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Тип периода распределения РР
|
||||
/// </summary>
|
||||
public enum DistributionPeriodTypeEnum
|
||||
{
|
||||
Day,
|
||||
Month,
|
||||
Year
|
||||
//TimeSpan
|
||||
}
|
||||
}
|
||||
33
PARR.Domain/Enums/OrderStatusEnum.cs
Normal file
33
PARR.Domain/Enums/OrderStatusEnum.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Статус Наряда в ЕСПП
|
||||
/// </summary>
|
||||
public enum OrderStatusEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// 1-Направлен в группу
|
||||
/// </summary>
|
||||
New = 1,
|
||||
|
||||
/// <summary>
|
||||
/// 2-В работе
|
||||
/// </summary>
|
||||
InWork = 2,
|
||||
|
||||
/// <summary>
|
||||
/// 3-Приостановлен
|
||||
/// </summary>
|
||||
Stop = 3,
|
||||
|
||||
/// <summary>
|
||||
/// 4-Выполнен
|
||||
/// </summary>
|
||||
Complete = 4,
|
||||
|
||||
/// <summary>
|
||||
/// 5-Закрыт
|
||||
/// </summary>
|
||||
Closed = 5
|
||||
}
|
||||
}
|
||||
28
PARR.Domain/Enums/RobotsAllEnum.cs
Normal file
28
PARR.Domain/Enums/RobotsAllEnum.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Список всех роботов (в бд нет 3, 4)
|
||||
/// </summary>
|
||||
public enum RobotsAllEnum //: RobotsEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Робот по созданию/изменению шаблона наряда ЕСПП
|
||||
/// </summary>
|
||||
TemplateOrder = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Робот по созданию/изменению расписания шаблона наряда в ЕСПП
|
||||
/// </summary>
|
||||
ScheduleOrder = 2,
|
||||
|
||||
/// <summary>
|
||||
/// Робот экспорта шаблонов из ЕСПП в ПАРР
|
||||
/// </summary>
|
||||
TemplatesExport = 3,
|
||||
|
||||
/// <summary>
|
||||
/// Робот экспорта расписаний из ЕСПП в ПАРР
|
||||
/// </summary>
|
||||
ScheduleExport = 4
|
||||
}
|
||||
}
|
||||
18
PARR.Domain/Enums/RobotsEnum.cs
Normal file
18
PARR.Domain/Enums/RobotsEnum.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Список роботов
|
||||
/// </summary>
|
||||
public enum RobotsEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Робот по созданию/изменению шаблона наряда ЕСПП
|
||||
/// </summary>
|
||||
TemplateOrder = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Робот по созданию/изменению расписания шаблона наряда в ЕСПП
|
||||
/// </summary>
|
||||
ScheduleOrder = 2
|
||||
}
|
||||
}
|
||||
15
PARR.Domain/Enums/ShortcodeTypeEnum.cs
Normal file
15
PARR.Domain/Enums/ShortcodeTypeEnum.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum ShortcodeTypeEnum
|
||||
{
|
||||
Static,
|
||||
Standard,
|
||||
Relationship,
|
||||
FieldValue,
|
||||
GroupValue,
|
||||
Transform
|
||||
}
|
||||
}
|
||||
13
PARR.Domain/Enums/SyncTaskEntityTypeEnum.cs
Normal file
13
PARR.Domain/Enums/SyncTaskEntityTypeEnum.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum SyncTaskEntityTypeEnum
|
||||
{
|
||||
Job,
|
||||
JobGroup,
|
||||
Template
|
||||
}
|
||||
|
||||
}
|
||||
70
PARR.Domain/Enums/TemplateActivatorActionsEnum.cs
Normal file
70
PARR.Domain/Enums/TemplateActivatorActionsEnum.cs
Normal file
@@ -0,0 +1,70 @@
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
//todo: удалить!!!
|
||||
|
||||
/// <summary>
|
||||
/// Действия с шаблонами/расписаниями для TemplateActivator
|
||||
/// </summary>
|
||||
public enum TemplateActivatorActionsEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Активировать все шаблоны
|
||||
/// </summary>
|
||||
ActivateAllTemplates = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Активировать шаблоны у которых активировано расписание
|
||||
/// </summary>
|
||||
ActivateTemplatesWithActiveSchedules = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Деактивировать все шаблоны
|
||||
/// </summary>
|
||||
DeactivateAllTemplates = 2,
|
||||
|
||||
/// <summary>
|
||||
/// Деактивировать шаблоны у которынх деактивировано расписание
|
||||
/// </summary>
|
||||
DeactivateTemplatesWithDeactivationSchedules = 3,
|
||||
|
||||
/// <summary>
|
||||
/// Активировать все расписания
|
||||
/// </summary>
|
||||
ActivateAllSchedules = 4,
|
||||
|
||||
/// <summary>
|
||||
/// Деактивировать все расписания
|
||||
/// </summary>
|
||||
DeactivateAllSchedules = 5,
|
||||
|
||||
/// <summary>
|
||||
/// Активировать все расписания у которых активированы шаблоны
|
||||
/// </summary>
|
||||
ActivateSchedulesWithActiveTemplates = 6,
|
||||
|
||||
/// <summary>
|
||||
/// Деактивировать все расписания у которых деактивированы шаблоны
|
||||
/// </summary>
|
||||
DeactivateSchedulesWithDeactivationTemplates = 7,
|
||||
|
||||
/// <summary>
|
||||
/// Деактивировать расписания у которых шаблоны синхронизированы с ошибкой
|
||||
/// </summary>
|
||||
DeactivateSchedulesWithTemplateSyncErrors = 8,
|
||||
|
||||
/// <summary>
|
||||
/// Деактивировать в соответствии с настройками авто-контроля
|
||||
/// </summary>
|
||||
DeactivateAllForAutoControl = 9,
|
||||
|
||||
/// <summary>
|
||||
/// Активировать в соответствии с настройками авто-контроля
|
||||
/// </summary>
|
||||
ActivateAllForAutoControl = 10
|
||||
|
||||
//только в интерфейсе:
|
||||
//активировать все шаблоны и расписания (отправлю 2 запроса)
|
||||
//деактивировать все шаблоны и расписания (отправлю 2 запроса)
|
||||
|
||||
}
|
||||
}
|
||||
21
PARR.Domain/Enums/TemplateActivatorEsppObjectTypesEnum.cs
Normal file
21
PARR.Domain/Enums/TemplateActivatorEsppObjectTypesEnum.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Объект воздействия активатора
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum TemplateActivatorEsppObjectTypesEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Шаблон
|
||||
/// </summary>
|
||||
Template=0,
|
||||
|
||||
/// <summary>
|
||||
/// Расписание
|
||||
/// </summary>
|
||||
Schedule =1,
|
||||
}
|
||||
}
|
||||
20
PARR.Domain/Enums/TemplateMatcherActionEnum.cs
Normal file
20
PARR.Domain/Enums/TemplateMatcherActionEnum.cs
Normal file
@@ -0,0 +1,20 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum TemplateMatcherActionEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Только сгенерировать недостающие шаблоны(можно использовать IsUnused).
|
||||
/// Создать недостающие шаблоны, перепривязать к нужному Job в рамках одного JobGroup.
|
||||
/// Выключить+включить в соответствии с настройками фильтров.
|
||||
/// Полное соответвие Template к Job.
|
||||
/// </summary>
|
||||
Sync = 0,
|
||||
/// <summary>
|
||||
/// Только меняет имя шаблона
|
||||
/// </summary>
|
||||
Update = 1
|
||||
}
|
||||
}
|
||||
25
PARR.Domain/Enums/TemplateStatusTypeEnum.cs
Normal file
25
PARR.Domain/Enums/TemplateStatusTypeEnum.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
namespace PARR.Domain.Enums
|
||||
{
|
||||
public enum TemplateStatusTypeEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Шаблон используется
|
||||
/// </summary>
|
||||
Used = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Шаблон не используется
|
||||
/// </summary>
|
||||
Unused = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Шаблон в статусе обновления
|
||||
/// </summary>
|
||||
Updating = 2,
|
||||
|
||||
/// <summary>
|
||||
/// Шаблон в статусе ошибки
|
||||
/// </summary>
|
||||
Error = 3
|
||||
}
|
||||
}
|
||||
@@ -7,9 +7,8 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="DTOs\" />
|
||||
<Folder Include="Common\Rabbit\Events\" />
|
||||
<Folder Include="Exceptions\" />
|
||||
<Folder Include="Settings\" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
27
PARR.Domain/Settings/IMqSettings.cs
Normal file
27
PARR.Domain/Settings/IMqSettings.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
namespace PARR.Domain.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Поля настроек MQ, используется для appsettings.json
|
||||
/// </summary>
|
||||
public interface IMqSettings
|
||||
{
|
||||
string HostName { get; init; }
|
||||
string QueueName { get; init; }
|
||||
string User { get; init; }
|
||||
string Password { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Кол-во сообщений которые может принимать consumer за один раз. 0 или null - без ограничений
|
||||
/// </summary>
|
||||
ushort? PrefetchCount { get; init; }
|
||||
}
|
||||
|
||||
public record MqSettingsBase : IMqSettings
|
||||
{
|
||||
public string HostName { get; init; } = string.Empty;
|
||||
public string QueueName { get; init; } = string.Empty;
|
||||
public string User { get; init; } = string.Empty;
|
||||
public string Password { get; init; } = string.Empty;
|
||||
public ushort? PrefetchCount { get; init; } = 0;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user