1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
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;
}
}
|