2 using System.Collections;
\r
4 using Dominio.Autorizaciones;
\r
5 using Dominio.Afiliados;
\r
13 public class PrestacionesRealizadasReport
\r
15 #region Constructores
\r
17 public PrestacionesRealizadasReport()
\r
19 XmlDeclaration xmlDeclaration = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", null);
\r
20 xmlDoc.AppendChild(xmlDeclaration);
\r
22 XmlElement root = this.xmlDoc.CreateElement( "informeAprRechazos" );
\r
23 root.SetAttribute( "fechaGeneracion", DateTime.Now.ToString( "yyyy-MM-dd" ) );
\r
25 root.AppendChild( xmlDoc.CreateElement( "lineas" ) );
\r
27 xmlDoc.AppendChild( root );
\r
30 #endregion Constructores
\r
32 private XmlDocument xmlDoc = new XmlDocument();
\r
34 #region Metodos publicos
\r
36 public void AgregarInfo( Prestador p, DateTime fechaRecepcionInfo, LineaInfoPrestacionesReport lineaIp )
\r
39 XmlElement elemLinea = this.xmlDoc.CreateElement( "linea" );
\r
40 elemLinea.SetAttribute( "codigoAutorizacion", lineaIp.CodigoAutorizacion.ToString() );
\r
41 elemLinea.SetAttribute( "aprobada", lineaIp.Aprobada.ToString().ToLower() );
\r
44 XmlElement elemTipoAut = this.xmlDoc.CreateElement( "tipoAutorizacion" );
\r
45 elemTipoAut.InnerText = lineaIp.TipoAutorizacion;
\r
46 elemLinea.AppendChild( elemTipoAut );
\r
49 XmlElement elemPrestador = this.xmlDoc.CreateElement( "prestador" );
\r
50 XmlElement elemCuit = this.xmlDoc.CreateElement( "CUIT" );
\r
51 elemCuit.InnerText = p.Cuit.ToString().Trim();
\r
52 elemPrestador.AppendChild( elemCuit );
\r
53 XmlElement elemNombrePrestador = this.xmlDoc.CreateElement( "nombre" );
\r
54 elemNombrePrestador.InnerText = p.Nombre.ToString().Trim();
\r
55 elemPrestador.AppendChild( elemNombrePrestador );
\r
57 elemLinea.AppendChild( elemPrestador );
\r
60 XmlElement elemCodPrestacion = this.xmlDoc.CreateElement( "codigoPrestacion" );
\r
61 elemCodPrestacion.InnerText = lineaIp.CodigoPrestacion.Trim();
\r
62 elemLinea.AppendChild( elemCodPrestacion );
\r
65 XmlElement elemCodAfiliado = this.xmlDoc.CreateElement( "codigoAfiliado" );
\r
66 elemCodAfiliado.InnerText = lineaIp.CodigoAfiliado.ToString().Trim();
\r
67 elemLinea.AppendChild( elemCodAfiliado );
\r
69 //porcentajeCoberturaReclamado
\r
70 XmlElement elemPorcentajeReclamado = this.xmlDoc.CreateElement( "porcentajeCoberturaReclamado" );
\r
71 elemPorcentajeReclamado.InnerText = lineaIp.PorcentajeCobertura.ToString().Trim();
\r
72 elemLinea.AppendChild( elemPorcentajeReclamado );
\r
74 //Campos a completar si es que la autorizacion existe en el sistema
\r
75 if ( lineaIp.ExisteAutorizacion )
\r
77 Autorizacion a = this.getAutorizacion( lineaIp.CodigoAutorizacion );
\r
79 //porcentajeCoberturaReal
\r
80 XmlElement elemPorcentajeReal = this.xmlDoc.CreateElement( "porcentajeCoberturaReal" );
\r
81 elemPorcentajeReal.InnerText = a.PorcentajeCobertura.ToString().Trim();
\r
82 elemLinea.AppendChild( elemPorcentajeReal );
\r
85 XmlElement elemFechaAprobacion = this.xmlDoc.CreateElement( "fechaAprobacion" );
\r
86 elemFechaAprobacion.InnerText = a.FechaSolicitud.ToString( "yyyy-MM-dd" );
\r
87 elemLinea.AppendChild( elemFechaAprobacion );
\r
90 XmlElement elemFechaVencimiento = this.xmlDoc.CreateElement( "fechaVencimiento" );
\r
91 elemFechaVencimiento.InnerText = a.FechaVencimiento.ToString( "yyyy-MM-dd" );
\r
92 elemLinea.AppendChild( elemFechaVencimiento );
\r
96 XmlElement elemFechaRealizacion = this.xmlDoc.CreateElement( "fechaRealizacion" );
\r
97 elemFechaRealizacion.InnerText = lineaIp.FechaRealizacion.ToString( "yyyy-MM-dd" );
\r
98 elemLinea.AppendChild( elemFechaRealizacion );
\r
100 //fechaRecepcionInfo
\r
101 XmlElement elemFechaRecepcionInfo = this.xmlDoc.CreateElement( "fechaRecepcionInfo" );
\r
102 elemFechaRecepcionInfo.InnerText = fechaRecepcionInfo.ToString( "yyyy-MM-dd" );
\r
103 elemLinea.AppendChild( elemFechaRecepcionInfo );
\r
105 if ( ! lineaIp.Aprobada )
\r
108 XmlElement elemMotivoRechazo = this.xmlDoc.CreateElement( "motivoRechazo" );
\r
109 elemMotivoRechazo.InnerText = lineaIp.MotivoRechazo.Trim();
\r
110 elemLinea.AppendChild( elemMotivoRechazo );
\r
114 XmlElement lineas = xmlDoc.DocumentElement["lineas"];
\r
115 lineas.AppendChild( elemLinea );
\r
118 public override string ToString()
\r
120 return xmlDoc.OuterXml;
\r
123 public void Serializar()
\r
125 XmlTextWriter writer = new XmlTextWriter("c:\\borrame.xml",null);
\r
126 writer.Formatting = Formatting.Indented;
\r
127 this.xmlDoc.Save(writer);
\r
130 #endregion Metodos publicos
\r
132 #region Metodos privados
\r
134 private Autorizacion getAutorizacion( int codigo )
\r
136 this.db = com.db4o.Db4o.openFile("os.yap");
\r
138 ArrayList al = new ArrayList();
\r
140 al = this.ObjectSetToArrayList( db.get( new AutorizacionManual(codigo) ) );
\r
141 Autorizacion a = ( (al.Count == 0)? null : al[0] ) as AutorizacionManual;
\r
145 al = this.ObjectSetToArrayList( db.get( new AutorizacionAutomatica(codigo) ) );
\r
146 a = ( (al.Count == 0)? null : al[0] ) as AutorizacionAutomatica;
\r
155 #endregion Metodos privados
\r
158 private com.db4o.ObjectContainer db = null;
160 private ArrayList ObjectSetToArrayList (ObjectSet result)
162 ArrayList lst = new ArrayList ();
167 while ((s = result.next ()) != null)
\r