summaryrefslogtreecommitdiff
path: root/Gestor.Model/Gestor.Model.Domain.Seguros/ControleSinistro.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Gestor.Model/Gestor.Model.Domain.Seguros/ControleSinistro.cs')
-rw-r--r--Gestor.Model/Gestor.Model.Domain.Seguros/ControleSinistro.cs84
1 files changed, 84 insertions, 0 deletions
diff --git a/Gestor.Model/Gestor.Model.Domain.Seguros/ControleSinistro.cs b/Gestor.Model/Gestor.Model.Domain.Seguros/ControleSinistro.cs
new file mode 100644
index 0000000..b0b4bc6
--- /dev/null
+++ b/Gestor.Model/Gestor.Model.Domain.Seguros/ControleSinistro.cs
@@ -0,0 +1,84 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using Gestor.Model.Attributes;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Helper;
+using Gestor.Model.Resources;
+using Newtonsoft.Json;
+
+namespace Gestor.Model.Domain.Seguros;
+
+public class ControleSinistro : DomainBase, IDomain
+{
+ private DateTime? _dataSinistro;
+
+ private DateTime? _horaSinistro;
+
+ public Item Item { get; set; }
+
+ [Log(true)]
+ [Name(true)]
+ [Description("DATA SINISTRO")]
+ public DateTime? DataSinistro
+ {
+ get
+ {
+ return _dataSinistro;
+ }
+ set
+ {
+ if (value.HasValue)
+ {
+ if (!HoraSinistro.HasValue)
+ {
+ HoraSinistro = value;
+ }
+ _dataSinistro = DateTime.Parse($"{value.Value:d} {HoraSinistro.Value:T}");
+ }
+ else
+ {
+ _dataSinistro = null;
+ }
+ }
+ }
+
+ public DateTime? HoraSinistro
+ {
+ get
+ {
+ return _horaSinistro;
+ }
+ set
+ {
+ _horaSinistro = value;
+ if (value.HasValue)
+ {
+ DataSinistro = ((DataSinistro.HasValue && value.HasValue) ? new DateTime?(DateTime.Parse($"{DataSinistro.Value:d} {value:T}")) : null);
+ }
+ }
+ }
+
+ public List<Sinistro> Sinistros { get; set; }
+
+ [JsonIgnore]
+ public Func<List<KeyValuePair<string, string>>> ValidationEvent => Validate;
+
+ public List<KeyValuePair<string, string>> Validate()
+ {
+ List<KeyValuePair<string, string>> list = ValidationHelper.AddValue();
+ if (!DataSinistro.HasValue)
+ {
+ list.AddValue("DataSinistro", Messages.Obrigatorio);
+ }
+ if (DataSinistro.HasValue && (DateTime.Compare(DataSinistro.Value, new DateTime(1753, 1, 1)) < 0 || DateTime.Compare(DataSinistro.Value, new DateTime(9999, 12, 31)) > 0))
+ {
+ list.AddValue("DataSinistro", string.Format(Messages.DataInvalida));
+ }
+ if (HoraSinistro.HasValue && (DateTime.Compare(HoraSinistro.Value, new DateTime(1753, 1, 1)) < 0 || DateTime.Compare(HoraSinistro.Value, new DateTime(9999, 12, 31)) > 0))
+ {
+ list.AddValue("HoraSinistro", string.Format(Messages.DataInvalida));
+ }
+ return list;
+ }
+}