4 namespace Autorizaciones
9 #region Clase Autorizacion
11 public abstract class Autorizacion
13 #region Campos privados
16 private float _porcentajeCobertura;
17 private DateTime _fechaSolicitud;
18 private DateTime _fechaRealizacion;
19 private DateTime _fechaVencimiento;
20 private bool _aprobada;
21 private string _fundamentosResolucion;
22 private Prestador _prestador;
23 private Prestacion _prestacion;
25 #endregion Campos privados
27 #region Propiedades Públicas
31 get { return this._codigo; }
32 set { this._codigo = value; }
35 public float PorcentajeCobertura
37 get { return this._porcentajeCobertura; }
38 set { this._porcentajeCobertura = value; }
41 public DateTime FechaSolicitud
43 get { return this._fechaSolicitud; }
44 set { this._fechaSolicitud = value; }
47 public DateTime FechaRealizacion
49 get { return this._fechaRealizacion; }
50 set { this._fechaRealizacion = value; }
53 public DateTime FechaVencimiento
55 get { return this._fechaVencimiento; }
56 set { this._fechaVencimiento = value; }
61 get { return this._aprobada; }
62 set { this._aprobada = value; }
65 public string FundamentosResolucion
67 get { return this._fundamentosResolucion; }
68 set { this._fundamentosResolucion = value; }
71 public Prestador Prestador
73 get { return this._prestador; }
74 set { this._prestador = value; }
77 public Prestacion Prestacion
79 get { return this._prestacion; }
80 set { this._prestacion = value; }
83 #endregion Propiedades Públicas
87 public Autorizacion (Cobertura c, Prestador p, DateTime solicitud)
91 _porcentajeCobertura = c.Porcentaje;
92 _fechaSolicitud = solicitud;
95 _prestacion = c.Prestacion;
98 public Autorizacion (Autorizacion auth)
100 _codigo = auth._codigo;
101 _porcentajeCobertura = auth._porcentajeCobertura;
102 _fechaSolicitud = auth._fechaSolicitud;
105 #endregion Constructores
107 #region Métodos Públicos
109 public Autorizacion.Estado getEstado( )
111 return getEstado( DateTime.Now );
114 public Autorizacion.Estado getEstado( DateTime fecha )
120 public void setResolucion( string fundamentosResolucion, float porcentajeCobertura )
124 #endregion Métodos Públicos
126 #region Estados de una autorización
137 #endregion Estados de una autorización
140 #endregion Clase Autorizacion
142 #region Clases derivadas de Autorizacion
144 public class AutorizacionManual : Autorizacion
146 #region Campos Privados
148 private string _observaciones;
149 private DateTime _fechaResolucion;
151 #endregion Campos Privados
153 #region Propiedades Públicas
155 public string Observaciones
157 get { return this._observaciones; }
158 set { this._observaciones = value; }
161 public DateTime FechaResolucion
163 get { return this._fechaResolucion; }
164 set { this._fechaResolucion = value; }
167 #endregion Propiedades Públicas
169 #region Constructores
171 public AutorizacionManual (Autorizacion auth):base (auth)
175 #endregion Constructores
178 public class AutorizacionAutomatica : Autorizacion
180 #region Constructores
182 public AutorizacionAutomatica (Autorizacion auth):base (auth)
186 #endregion Constructores
189 #endregion Clases derivadas de Autorizacion