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

30 lines
1.8 KiB
C#

namespace Deal.Modules.Kanban.Application.Models;
/// <summary>
/// Вход создания контейнера — параметр ContainersService.CreateAsync (POST /api/containers).
/// </summary>
/// <remarks>
/// <see cref="Name"/> — обязательный (пробельное/пустое значение сервис заменяет на «Новая колонка»);
/// <see cref="Color"/> — null/пустая строка означают «взять цвет палитры по позиции».
/// <see cref="Space"/>/<see cref="Kind"/> задают пространство и вид контейнера (по умолчанию —
/// пользовательская колонка дашборда <c>board</c>/<c>dashboard</c>). Правила — необязательны;
/// <see cref="Suggested"/>/<see cref="Note"/> использует эвристика ИИ-предложений. Wire — camelCase.
/// </remarks>
/// <param name="Name">Имя колонки (пустое → «Новая колонка»).</param>
/// <param name="Description">Описание колонки.</param>
/// <param name="Color">Цвет (hex) либо null — из палитры.</param>
/// <param name="Space">Пространство (по умолчанию dashboard).</param>
/// <param name="Kind">Вид контейнера (по умолчанию board).</param>
/// <param name="Suggested">Признак ИИ-предложения.</param>
/// <param name="Rules">Правила попадания.</param>
/// <param name="Note">Заметка/обоснование.</param>
public sealed record ContainerCreateDto(
string Name,
string Description = "",
string? Color = null,
string Space = "dashboard",
string Kind = "board",
bool Suggested = false,
ContainerRulesDto? Rules = null,
string Note = "");