// Copyright (C) 2022 FCS Frede's Computer Services. // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as // published by the Free Software Foundation, either version 3 of the // License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html] // using System.ComponentModel.DataAnnotations; namespace Wonky.Entity.DTO; public class TaskItemDto { /// /// Task item entity id /// [MaxLength(36)] public string TaskItemId { get; set; } = ""; /// /// User entity id /// [MaxLength(36)] public string ErpUserId { get; set; } = ""; /// /// Reference entity id /// [Required(ErrorMessage = "Reference id skal angives")] public string ReferenceId { get; set; } = ""; /// /// Task name /// [Required(ErrorMessage = "Opgaven skal have et navn.")] [MaxLength(128, ErrorMessage = "Der kan bruges 128 tegn.")] public string Name { get; set; } = ""; /// /// Task description /// [MaxLength(1000, ErrorMessage = "Der kan højst bruges 1000 tegn.")] public string Description { get; set; } = ""; /// /// Task due date / time /// /// Format "yyyy-MM-dd'T'HH:mm" public string DueTimestamp { get; set; } = ""; /// /// Task type enum as string /// /// None,Recall,Revision,Reminder public string TaskTypeEnum { get; set; } = ""; /// /// Task interval /// public int Interval { get; set; } /// /// Flag completed /// public bool IsCompleted { get; set; } /// /// Flag overdue /// public bool OverDue { get; set; } /// /// Recurring flag /// /// Interval != 0 public bool Recurring { get; set; } }