feat(dal,core): Перенесены оставшиеся объекты из dal в core.
This commit is contained in:
36
PARR.Domain/DTOs/Matching/MatchingStatus.cs
Normal file
36
PARR.Domain/DTOs/Matching/MatchingStatus.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using PARR.Domain.Cache.Models;
|
||||
|
||||
namespace PARR.Domain.DTOs.Matching
|
||||
{
|
||||
/// <summary>
|
||||
/// Статус matching`a
|
||||
/// </summary>
|
||||
public class MatchingStatus
|
||||
{
|
||||
/// <summary>
|
||||
/// В целом по искомому объекту, идет ли matching
|
||||
/// </summary>
|
||||
public bool IsMatchingObject => IsMatchingJobs || IsMatchingJobGroups;
|
||||
|
||||
/// <summary>
|
||||
/// Идет ли мэтчинг по Jobs
|
||||
/// </summary>
|
||||
public bool IsMatchingJobs => DetailsJobs?.Any() ?? false;
|
||||
|
||||
/// <summary>
|
||||
/// Идет ли мэтчинг по JobGroups
|
||||
/// </summary>
|
||||
public bool IsMatchingJobGroups => DetailsJobGroups?.Any() ?? false;
|
||||
|
||||
/// <summary>
|
||||
/// Детально из КЭШ по Jobs
|
||||
/// </summary>
|
||||
public List<MatchingStatusItem>? DetailsJobs { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Детально из КЭШ по JobGroups
|
||||
/// </summary>
|
||||
public List<MatchingStatusItem>? DetailsJobGroups { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
11
PARR.Domain/DTOs/Shortcode/ShortcodeInfoDto.cs
Normal file
11
PARR.Domain/DTOs/Shortcode/ShortcodeInfoDto.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
using PARR.Domain.Enums;
|
||||
|
||||
namespace PARR.Domain.DTOs.Shortcode
|
||||
{
|
||||
public class ShortcodeInfoDto
|
||||
{
|
||||
public required string Shortcode { get; set; }
|
||||
public required string Description { get; set; }
|
||||
public ShortcodeTypeEnum Type { get; set; }
|
||||
}
|
||||
}
|
||||
12
PARR.Domain/Settings/AIHTITSettings.cs
Normal file
12
PARR.Domain/Settings/AIHTITSettings.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
namespace PARR.Domain.Settings
|
||||
{
|
||||
public class AIHTITSettings
|
||||
{
|
||||
//TODO: AIHTITSettings - не используется???
|
||||
|
||||
|
||||
public const string RespAreaGroupName = "ResponsibleArea";
|
||||
public const string StatusGroupName = "Status";
|
||||
public const string Delimiters = "Delimiters";
|
||||
}
|
||||
}
|
||||
142
PARR.Domain/Settings/SettingsFromDb.cs
Normal file
142
PARR.Domain/Settings/SettingsFromDb.cs
Normal file
@@ -0,0 +1,142 @@
|
||||
using PARR.Domain.Common.Template;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Text.Encodings.Web;
|
||||
using System.Text.Json;
|
||||
using System.Text.Unicode;
|
||||
|
||||
namespace PARR.Domain.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Настройки из БД
|
||||
/// </summary>
|
||||
public class SettingsFromDb
|
||||
{
|
||||
// При добавлении свойств, добавлять в миграцию: PARR.DAL.Context.DataContext
|
||||
|
||||
/// <summary>
|
||||
/// Инициатор регламентной работы, указывается при создании шаблона в ЕСПП.
|
||||
/// </summary>
|
||||
public string Initiator { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Код закрытия регламентной работы, указывается при создании шаблона в ЕСПП.
|
||||
/// </summary>
|
||||
public string ClosingCode { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Категория создаваемого объекта в ЕСПП
|
||||
/// </summary>
|
||||
public string Category { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Префикс имени шаблона в ЕСПП с динамичным префиксом %PREFIX%-
|
||||
/// </summary>
|
||||
public string TemplatePrefixName { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Префикс имени шаблона в ЕСПП без динамичного префикса (используется для подстановки в полное описание наряда/шаблона)
|
||||
/// </summary>
|
||||
public string TemplatePrefixWithoutVariable => TemplatePrefixName.Replace("%PREFIX%-", "");
|
||||
|
||||
public string TemplateNameConstantParts { get; set; } = string.Empty;
|
||||
|
||||
[NotMapped]
|
||||
public List<TemplateNameConstantPart> TemplateNameConstantPartsList
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!string.IsNullOrEmpty(TemplateNameConstantParts))
|
||||
{
|
||||
try
|
||||
{
|
||||
return JsonSerializer.Deserialize<List<TemplateNameConstantPart>>(TemplateNameConstantParts) ?? new List<TemplateNameConstantPart>();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// В будущем можно добавить логирование ошибки десериализации
|
||||
return new List<TemplateNameConstantPart>();
|
||||
}
|
||||
}
|
||||
|
||||
return new List<TemplateNameConstantPart>();
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value != null)
|
||||
{
|
||||
//TemplateNameConstantParts = value.ToJson() ?? string.Empty;
|
||||
try
|
||||
{
|
||||
TemplateNameConstantParts = JsonSerializer.Serialize(value, new JsonSerializerOptions { Encoder = JavaScriptEncoder.Create(UnicodeRanges.All, UnicodeRanges.Cyrillic) });
|
||||
}
|
||||
catch
|
||||
{
|
||||
TemplateNameConstantParts = string.Empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Количество попыток выполнения задания роботом
|
||||
/// </summary>
|
||||
public int RobotAttemptsNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Время ожидания выполнения роботом задания
|
||||
/// </summary>
|
||||
public TimeSpan RobotWaitTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Расписание регламентной работы, В каком часовом поясе
|
||||
/// </summary>
|
||||
public string EsppScheduleTimezone { get; set; } = string.Empty;
|
||||
|
||||
///// <summary>
|
||||
///// Расписание регламентной работы - Тип исключения
|
||||
///// </summary>
|
||||
//public string ScheduleExcludeType { get; set; } = string.Empty;
|
||||
|
||||
///// <summary>
|
||||
///// Расписание регламентной работы - Календарь
|
||||
///// </summary>
|
||||
//public string ScheduleExcludeCalendar { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Расписание регламентной работы - Диапазон повторов
|
||||
/// </summary>
|
||||
public string ScheduleRepeatRange { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Промежуток времени для поиска нарядов в ЕСПП
|
||||
/// </summary>
|
||||
public TimeSpan OrderSearchDeltaDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Таймзона УЗ роботов в ЕСПП, в часах (может быть положительным и отрицательным)
|
||||
/// </summary>
|
||||
public int EsppRobotAccountTimeZoneHour { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Время хранения в кэше данных о выходных и рабочих днях
|
||||
/// </summary>
|
||||
public TimeSpan WeekendCacheTtl { get; set; } = new TimeSpan(0, 5, 0);
|
||||
|
||||
/// <summary>
|
||||
/// Префикс тега в поле ЭК "Дополнительная информация"
|
||||
/// </summary>
|
||||
public string EsppUnitTag { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Job в который перемещаем ниспользованные шаблоны
|
||||
/// </summary>
|
||||
public Guid JobIdForUnusedTemplates { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Зона ответственности для получения тайм зоны по умолчанию для расписаний
|
||||
/// </summary>
|
||||
public string DefaultResponseAreaToTimeOffset { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user