Files
Deal/src/core/Deal.Modules.Kanban/Application/Models/ContainerPolicyDto.cs
T
Rustam Khalimov 9e07568ddd Инициализировать репозиторий «Дейл»
Первый коммит: модульный монолит ядра (.NET 10) и gRPC-сервисы
ai/ml/telegram, фронтенд Vue 3/Vite/Tailwind, документация (ТЗ,
инструкция пользователя, техдокументация, код-стайл), бэклог,
скрипты развёртывания и архив прототипа LeadRadar.
2026-09-11 02:50:17 +03:00

28 lines
1.4 KiB
C#

namespace Deal.Modules.Kanban.Application.Models;
/// <summary>
/// Политика контейнера: правила жизненного цикла зоны (этап 9, T4).
/// </summary>
/// <remarks>
/// Роль контейнера (не enum): можно ли вернуть карточку на доску пространства, терминальна ли зона,
/// задана ли автоочистка. Хранится JSON-объектом в Containers.PolicyJson (camelCase); значения по
/// умолчанию — «обычная колонка» (возврат разрешён, не терминальна, без автоочистки).
/// </remarks>
public sealed record ContainerPolicyDto
{
/// <summary>
/// Можно ли вернуть карточку из контейнера на доску пространства (архив/корзина — да).
/// </summary>
public bool CanRestore { get; init; } = true;
/// <summary>
/// Терминальная зона: завершение жизненного пути, только ручная очистка без возврата.
/// </summary>
public bool IsTerminal { get; init; }
/// <summary>
/// Срок автоочистки карточек контейнера в днях; null — автоочистки нет.
/// </summary>
public int? RetentionDays { get; init; }
}