forked from ddrilling/AsbCloudServer
62 lines
2.0 KiB
C#
62 lines
2.0 KiB
C#
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Linq;
|
|
|
|
namespace AsbCloudApp.Data
|
|
{
|
|
/// <summary>
|
|
/// DTO состояния формирования программы бурения
|
|
/// </summary>
|
|
public class DrillingProgramStateDto
|
|
{
|
|
/// <summary>
|
|
/// 0 - не инициировано
|
|
/// 1 - загрузка и согласование
|
|
/// 2 - формируется (несколько минут)
|
|
/// 3 - готова
|
|
/// </summary>
|
|
[Required]
|
|
public int IdState { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ошибка при формировании
|
|
/// </summary>
|
|
public DrillingProgramCreateError? Error { get; set; }
|
|
|
|
/// <summary>
|
|
/// Файл сформированной программы бурения
|
|
/// </summary>
|
|
public FileInfoDto? Program { get; set; }
|
|
|
|
/// <summary>
|
|
/// Разрешение редактировать части программы бурения
|
|
/// </summary>
|
|
[Required]
|
|
public bool PermissionToEdit { get; set; }
|
|
|
|
/// <summary>
|
|
/// Список частей программы бурения
|
|
/// </summary>
|
|
[Required]
|
|
public IEnumerable<DrillingProgramPartDto> Parts { get; set; } = Enumerable.Empty<DrillingProgramPartDto>();
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO ошибки при создании программы бурения
|
|
/// </summary>
|
|
public class DrillingProgramCreateError
|
|
{
|
|
/// <summary>
|
|
/// Текст ошибки для отображения пользователю
|
|
/// </summary>
|
|
[Required]
|
|
public string Message { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// Текст ошибки для разработчика
|
|
/// </summary>
|
|
[Required]
|
|
public string Exception { get; set; } = string.Empty;
|
|
}
|
|
}
|