Wonky.Client/Wonky.Entity/DTO/TaskItemDto.cs

87 lines
2.5 KiB
C#
Raw Permalink Normal View History

2022-07-04 11:14:24 +02:00
// 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]
//
2022-07-09 17:43:52 +02:00
using System.ComponentModel.DataAnnotations;
2022-06-21 17:05:21 +02:00
namespace Wonky.Entity.DTO;
2023-03-19 10:05:44 +01:00
public class TaskItemDto
2022-06-21 17:05:21 +02:00
{
2022-07-01 10:02:29 +02:00
/// <summary>
2022-07-09 17:43:52 +02:00
/// Task item entity id
2022-07-01 10:02:29 +02:00
/// </summary>
2022-07-09 17:43:52 +02:00
[MaxLength(36)]
2022-06-21 17:05:21 +02:00
public string TaskItemId { get; set; } = "";
2022-07-01 10:02:29 +02:00
/// <summary>
2022-07-09 17:43:52 +02:00
/// User entity id
2022-07-01 10:02:29 +02:00
/// </summary>
2022-07-09 17:43:52 +02:00
[MaxLength(36)]
2022-06-21 17:05:21 +02:00
public string ErpUserId { get; set; } = "";
2022-07-09 17:43:52 +02:00
/// <summary>
/// Reference entity id
/// </summary>
[Required(ErrorMessage = "Reference id skal angives")]
public string ReferenceId { get; set; } = "";
2022-07-01 10:02:29 +02:00
/// <summary>
/// Task name
/// </summary>
2022-07-09 17:43:52 +02:00
[Required(ErrorMessage = "Opgaven skal have et navn.")]
[MaxLength(128, ErrorMessage = "Der kan bruges 128 tegn.")]
2022-06-21 17:05:21 +02:00
public string Name { get; set; } = "";
2022-07-01 10:02:29 +02:00
/// <summary>
/// Task description
/// </summary>
2022-07-09 17:43:52 +02:00
[MaxLength(1000, ErrorMessage = "Der kan højst bruges 1000 tegn.")]
public string Description { get; set; } = "";
2022-07-01 10:02:29 +02:00
/// <summary>
2022-07-09 17:43:52 +02:00
/// Task due date / time
2022-07-01 10:02:29 +02:00
/// </summary>
2022-07-09 17:43:52 +02:00
/// <remarks>Format "yyyy-MM-dd'T'HH:mm"</remarks>
2022-06-21 17:05:21 +02:00
public string DueTimestamp { get; set; } = "";
2022-07-01 10:02:29 +02:00
2022-07-09 17:43:52 +02:00
/// <summary>
/// Task type enum as string
/// </summary>
/// <value>None,Recall,Revision,Reminder</value>
public string TaskTypeEnum { get; set; } = "";
2022-07-01 10:02:29 +02:00
/// <summary>
/// Task interval
/// </summary>
2022-06-21 17:05:21 +02:00
public int Interval { get; set; }
2022-07-01 10:02:29 +02:00
/// <summary>
/// Flag completed
/// </summary>
2022-06-21 17:05:21 +02:00
public bool IsCompleted { get; set; }
2022-07-01 10:02:29 +02:00
/// <summary>
/// Flag overdue
/// </summary>
2022-06-21 17:05:21 +02:00
public bool OverDue { get; set; }
2022-07-01 10:02:29 +02:00
/// <summary>
/// Recurring flag
/// </summary>
/// <value>Interval != 0</value>
2022-07-09 17:43:52 +02:00
public bool Recurring { get; set; }
2022-06-21 17:05:21 +02:00
}