DD.WellWorkover.Cloud/AsbCloudApp/Data/DrillingProgramPartDto.cs
2024-08-19 10:01:07 +05:00

62 lines
1.7 KiB
C#

using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using AsbCloudApp.Data.User;
namespace AsbCloudApp.Data;
/// <summary>
/// Часть программы бурения
/// </summary>
public class DrillingProgramPartDto
{
/// <summary>
/// Название
/// </summary>
[Required]
public string Name { get; set; } = string.Empty;
/// <summary>
/// ИД категории файла
/// </summary>
[Required]
public int IdFileCategory { get; set; }
/// <summary>
/// 0 - NoFile
/// 1 - approving
/// 2 - completely approved
/// </summary>
[Required]
public int IdState { get; set; }
/// <summary>
/// Публикаторы. Могут загружать файл этой категории
/// </summary>
[Required]
public IEnumerable<UserDto> Publishers { get; set; } = Enumerable.Empty<UserDto>();
/// <summary>
/// Согласованты. Могут согласовывать загруженные файлы этой категории
/// </summary>
[Required]
public IEnumerable<UserDto> Approvers { get; set; } = Enumerable.Empty<UserDto>();
/// <summary>
/// Разрешение для текущего пользователя согласовывать документ
/// </summary>
[Required]
public bool PermissionToApprove { get; set; }
/// <summary>
/// Разрешение для текущего пользователя загружать документ
/// </summary>
[Required]
public bool PermissionToUpload { get; set; }
/// <summary>
/// Ссылка на документ.
/// </summary>
public FileInfoDto? File { get; set; }
}