using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using static MP.TaskMan.Objects.Enums;
#nullable disable
//
// This is here so CodeMaid doesn't reorganize this document
//
namespace MP.TaskMan.Models
{
[Table("TaskList")]
public partial class TaskListModel
{
#region Public Properties
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int TaskId { get; set; } = 0;
///
/// Gruppo task (per gestione precedenze e semaforo exec)
///
public int Group { get; set; } = 1;
///
/// Ordinale x esecuzione
///
public int Ordinal { get; set; } = 0;
///
/// Stato Task abilitato / disabilitato
///
public bool Enabled { get; set; } = false;
///
/// Nome Task
///
public string Name { get; set; } = "";
///
/// Descrizione Task
///
public string Descript { get; set; } = "";
///
/// Tipo Task
///
public Task2ExeType TType { get; set; } = Task2ExeType.ALL;
///
/// Comando da invocare
///
public string Command { get; set; } = "";
///
/// Elenco argomenti (json)
///
public string Args { get; set; } = "";
///
/// Frequenza esecuzione da enum
///
public TaskFreqType Freq { get; set; } = TaskFreqType.ND;
///
/// Cadenza esecuzione
///
public int Cad { get; set; } = 1;
///
/// DataOra ultima esecuzione
///
public DateTime DtLastExec { get; set; } = DateTime.Today.AddYears(-10);
///
/// DataOra prossima esecuzione (prevista)
///
public DateTime DtNextExec { get; set; } = DateTime.Today.AddYears(-9);
///
/// Durata ultima esecuzione in secondi
///
public double LastDuration { get; set; } = 0;
///
/// Esito ultima esecuzione in Errore
///
public bool LastIsError { get; set; } = false;
///
/// Ultimo risultato registrato
///
public string LastResult { get; set; } = "";
#endregion Public Properties
///
/// Equals solo su chiave!
///
///
///
public override bool Equals(object obj)
{
if (!(obj is TaskListModel item))
return false;
if (TaskId != item.TaskId)
return false;
return true;
}
public override int GetHashCode()
{
return base.GetHashCode();
}
}
}