Agencia.cs
1 using System;
2 using System.Collections.Generic;
3 using sage.ew.ewbase;
4 using System.ComponentModel;
6 using System.ComponentModel.DataAnnotations;
8 using sage.ew.interficies;
9 using sage.ew.enumerations;
10 
11 namespace sage.ew.cliente
12 {
16  public class Agencia : ewMante, INotifyPropertyChanged, ISageReportsFilterProvider
17  {
18  //Cumplimiento de interficie
19  #region INotifyPropertyChanged
20 
24  public event PropertyChangedEventHandler PropertyChanged;
25 
30  private void NotifyPropertyChanged(string info)
31  {
32  PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(info));
33  }
34 
35  #endregion INotifyPropertyChanged
36 
37  #region Constructores
38 
42  public Agencia()
43  {
44  _CargaPropiedades();
45  }
46 
51  public Agencia(string tcCodigo)
52  {
53  _CargaPropiedades();
54  _Codigo = tcCodigo;
55  }
56 
57  #endregion Constructores
58 
59  #region Propiedades
60 
61 
65  public override string _Codigo
66  {
67  get { return base._Codigo; }
68  set
69  {
70  if (!String.IsNullOrEmpty(value) && value.Length < 3) value = value.PadLeft(3, '0');
71  base._Codigo = value;
72  }
73  }
74 
79  [FieldName("DIRECCION")]
80  [DisplayName("Direccion")]
81  public string _Direccion
82  {
83  get { return Convert.ToString(_Campo(GetFieldName(nameof(_Direccion)))); }
84  set
85  {
86  _Campo(GetFieldName(nameof(_Direccion)), value);
87  NotifyPropertyChanged(nameof(_Direccion));
88  }
89  }
90 
95  [FieldName("CODPOST")]
96  [DisplayName("CPostal")]
97  public string _CPostal
98  {
99  get { return Convert.ToString(_Campo(GetFieldName(nameof(_CPostal)))); }
100  set
101  {
102  _Campo(GetFieldName(nameof(_CPostal)), value);
103  NotifyPropertyChanged(nameof(_CPostal));
104  }
105  }
106 
111  [FieldName("POBLACION")]
112  [DisplayName("Poblacion")]
113  public string _Poblacion
114  {
115  get { return Convert.ToString(_Campo(GetFieldName(nameof(_Poblacion)))); }
116  set
117  {
118  _Campo(GetFieldName(nameof(_Poblacion)), value);
119  NotifyPropertyChanged(nameof(_Poblacion));
120  }
121  }
122 
127  [FieldName("PROVINCIA")]
128  [DisplayName("Provincia")]
129  public string _Provincia
130  {
131  get { return Convert.ToString(_Campo(GetFieldName(nameof(_Provincia)))); }
132  set
133  {
134  _Campo(GetFieldName(nameof(_Provincia)), value);
135  NotifyPropertyChanged(nameof(_Provincia));
136  }
137  }
138 
143  [FieldName("TELEFON")]
144  [DisplayName("Telefono")]
145  public string _Telefono
146  {
147  get { return Convert.ToString(_Campo(GetFieldName(nameof(_Telefono)))); }
148  set
149  {
150  _Campo(GetFieldName(nameof(_Telefono)), value);
151  NotifyPropertyChanged(nameof(_Telefono));
152  }
153  }
154 
159  [FieldName("PAIS")]
160  [DisplayName("Pais")]
161  public string _Pais
162  {
163  get
164  {
165  return Convert.ToString(_Campo(GetFieldName(nameof(_Pais))));
166  }
167  set
168  {
169  _Campo(GetFieldName(nameof(_Pais)), value);
170  NotifyPropertyChanged(nameof(_Pais));
171  }
172  }
173 
178  [FieldName("EMAIL")]
179  [DisplayName("Email")]
180  [EmailFormat("La dirección de correo introducida no es correcta")]
181  public string _Email
182  {
183  get
184  {
185  return Convert.ToString(_Campo(GetFieldName(nameof(_Email))));
186  }
187  set
188  {
189  _Campo(GetFieldName(nameof(_Email)), value);
190  NotifyPropertyChanged(nameof(_Email));
191  }
192  }
193 
198  [FieldName("HTTP")]
199  [DisplayName("Http")]
200  public string _Http
201  {
202  get
203  {
204  return Convert.ToString(_Campo(GetFieldName(nameof(_Http))));
205  }
206  set
207  {
208  _Campo(GetFieldName(nameof(_Http)), value);
209  NotifyPropertyChanged(nameof(_Http));
210  }
211  }
212 
216  public override AccionTraspasoUltimoEjercicio _TraspasoUltimoEjercicio { get; } = AccionTraspasoUltimoEjercicio.Informar;
217 
218  #endregion Propiedades
219 
220  #region Métodos privados
221 
225  private void _CargaPropiedades()
226  {
227  // Asignamos las propiedades para la agencia
228  _lTodos = true;
229  _Clave = "CODIGO";
230  _DataBase = "GESTION";
231  _Tabla = "AGENCIA";
232  _TituloMantenimiento = "Mantenimiento de agencias de transporte";
233  _TituloCabecera = "Agencias de transporte";
234  _TituloMenu = "Agencia de transporte";
235 
236  _Pantalla = "AGENCIA";
237  _FormManteBaseType = typeof(Forms.frmAgencia);
238  }
239 
240  #endregion Métodos privados
241 
242  #region Métodos Override
243 
248  public override bool _Delete()
249  {
250  //PE-97115 Error an la definición de los campos
251  if (!_Existen_Registros("GESTION", new List<string>() { "CLIENTES" }, "AGENCIA"))
252  {
253  return base._Delete();
254  }
255  else
256  {
257  _Error_Message = String.Format("Existen registros vinculados a la agencia de transporte {0} ({1})", _Nombre, _Codigo);
258  return false;
259  }
260 
261  }
262 
263  #endregion Métodos Override
264 
265  #region ISageReportsFilterProvider
266 
272  public Dictionary<String, object> _Obtener_Filtros_SageReports(Dictionary<string, object> tdicParametros = null)
273  {
274  String lcTipo = "";
275  Dictionary<string, object> loDicResult = new Dictionary<String, object>();
276 
277  if (tdicParametros is Dictionary<string, object> && tdicParametros.ContainsKey("ParamKey"))
278  {
279  lcTipo = Convert.ToString(tdicParametros["ParamKey"]).Trim();
280  }
281 
282  loDicResult.Add(String.Format("wc_CodigoAgencia{0}", lcTipo), _Codigo);
283  loDicResult.Add(String.Format("wc_NombreAgencia{0}", lcTipo), _Nombre);
284 
285  return loDicResult;
286  }
287 
288  #endregion ISageReportsFilterProvider
289  }
290 }
Agencia(string tcCodigo)
Constructor
Definition: Agencia.cs:51
Clase de negocio base para mantenimientos
Definition: clsEwBase.cs:1643
Dictionary< String, object > _Obtener_Filtros_SageReports(Dictionary< string, object > tdicParametros=null)
Obtienes los datos para la impresión de la agencia
Definition: Agencia.cs:272
Definición de la interficie que han de cumplir aquellas clases que quieran proveer de información de ...
Definition: IDocPrint.cs:444
AccionTraspasoUltimoEjercicio
Indica la acción a arealizar si hay que traspasar los datos al siguiente ejercicio ...
Definition: generales.cs:1001
PropertyChangedEventHandler PropertyChanged
Evento de propiedad cambiada
Definition: Agencia.cs:24
Agencias de transportes
Definition: Agencia.cs:16
Agencia()
Constructor vacío
Definition: Agencia.cs:42
override bool _Delete()
Borra la agencia de transporte
Definition: Agencia.cs:248