]> git.llucax.com Git - z.facultad/75.10/miklolife.git/commitdiff
nuevo met en autorizacion ctller : obtener(codigo)
authorSebastian Lavena <sjlavena@gmail.com>
Thu, 7 Jul 2005 03:33:04 +0000 (03:33 +0000)
committerSebastian Lavena <sjlavena@gmail.com>
Thu, 7 Jul 2005 03:33:04 +0000 (03:33 +0000)
y saracatunga por doquier

demo/src/Controlador/AutorizacionController.cs
demo/src/Tests/TestsAutorizacion.cs
demo/src/VSProject.csproj

index c43e71ff02fab5e52cb1af836c570396a21d4e64..33e036a293305dd5f52653370c13c9537e97daad 100644 (file)
@@ -7,6 +7,7 @@ using System.Collections;
 using Dominio;\r
 using Dominio.Autorizaciones;\r
 using Dominio.Afiliados;\r
+\r
 
 using com.db4o;
 using com.db4o.query;
@@ -54,39 +55,65 @@ namespace Controlador
                {\r
                        bool codigosOk = true;\r
                        \r
+                       //solo para testing--------------------\r
+                       this.InsertarDatosNecesarios();\r
+                       //------------------------------------\r
+\r
                        AutorizacionManual aut = new AutorizacionManual(DateTime.Now);\r
                        \r
-\r
-\r
+                       #region Se insancia prestador, prestacion y afiliado, y se asocia a aut\r
                        //Seteo prestacion\r
-                       Prestacion prestacion = new Prestacion();\r
-                       prestacion.Codigo=codPrestacion;\r
-                       if (null==(aut.Prestacion = (Prestacion)this.ObjectSetToArrayList( this.Db.get(prestacion) )[0]))\r
-                               codigosOk = false;\r
+                       \r
+                       ArrayList al = this.ObjectSetToArrayList( this.Db.get( new Prestacion(codPrestacion) ) );\r
+                       if (null==(aut.Prestacion = ( (al.Count == 0)? null : al[0] ) as Prestacion))\r
+                               codigosOk=false;\r
 \r
                        //Seteo prestador\r
-                       Prestador prestador = new Prestador();\r
-                       prestador.Cuit=cuitPrestador;\r
-                       if (null==(aut.Prestador = (Prestador)this.ObjectSetToArrayList( this.Db.get(prestador) )[0]))\r
+                       al = this.ObjectSetToArrayList( this.Db.get( new Prestador(cuitPrestador) ) );\r
+                       if (null==(aut.Prestador = ( (al.Count == 0)? null : al[0] ) as Prestador))\r
                                codigosOk=false;\r
-                       \r
+\r
+                               \r
 \r
                        //Seteo afiliado\r
-                       Afiliado afiliado = new Afiliado(codAfiliado);                  \r
-                       if (null==(aut.Afiliado = ((Afiliado)this.ObjectSetToArrayList( this.Db.get(afiliado) )[0])))\r
+                       al = this.ObjectSetToArrayList( this.Db.get( new Afiliado(codAfiliado) ) );\r
+                       if (null==(aut.Afiliado = ( (al.Count == 0)? null : al[0] ) as Afiliado))\r
                                codigosOk=false;\r
-                       \r
+       \r
+                       #endregion Se insancia prestador, prestacion y afiliado, y se asocia a aut\r
                        //Seteo fecha de vencimiento como dentro de 60 días\r
                        aut.FechaVencimiento = DateTime.Now.AddDays(60);\r
 \r
 \r
-                       aut.Observaciones = observaciones;\r
+                       aut.Observaciones = observaciones;                      \r
 \r
-                       #warning Grabar en autorizacionController:ver manejo de codigos!!!!\r
+                       //Signo prox codigo para autorizacion\r
+                       AutoIncrementable c = new AutoIncrementable ();\r
+                       using (c)\r
+                       {\r
+                               aut.Codigo = c.NextAutorizacion();\r
+                       }\r
 \r
                        if (codigosOk) this.Db.set(aut);\r
 \r
                        return codigosOk;                       \r
+               \r
+               }\r
+\r
+               //PRE: No hay autorizaciones manuales y automaticas con mismo codigo!!\r
+               public Autorizacion obtener(int codigo)\r
+               {                       \r
+                       //Busco manual\r
+                       ArrayList al = this.ObjectSetToArrayList( this.Db.get( new AutorizacionManual(codigo) ) );\r
+                       Autorizacion a = ((al.Count == 0)? null : al[0] ) as Autorizacion;\r
+                       \r
+                       if (null==a)\r
+                       //Busco automatica, si no hay manual para ese codigo\r
+                       {\r
+                               al = this.ObjectSetToArrayList( this.Db.get( new AutorizacionAutomatica(codigo) ) );\r
+                               a = ((al.Count == 0)? null : al[0] ) as Autorizacion;\r
+                       }\r
+                       return a;\r
                }\r
 \r
                public float evaluarAutorizacionAutomatica(String cuitPrestador, String codPrestacion, int codAfiliado, out int codAutorizacion)
@@ -98,33 +125,35 @@ namespace Controlador
                        \r
                        AutorizacionAutomatica aut = new AutorizacionAutomatica(DateTime.Now);\r
                        \r
-\r
-                       #region Se insancia prestador, prestacion y afiliado, y se asocia a aut\r
+                       #region Se insancia prestador, prestacion y afiliado, y se asocia a aut\r
                        //Seteo prestacion\r
-                       Prestacion prestacion = new Prestacion();\r
-                       prestacion.Codigo=codPrestacion;\r
-                       if (null==(aut.Prestacion = (Prestacion)this.ObjectSetToArrayList( this.Db.get(prestacion) )[0]))\r
-                               codigosOk = false;\r
+                       \r
+                       ArrayList al = this.ObjectSetToArrayList( this.Db.get( new Prestacion(codPrestacion) ) );\r
+                       if (null==(aut.Prestacion = ( (al.Count == 0)? null : al[0] ) as Prestacion))\r
+                               codigosOk=false;\r
 \r
                        //Seteo prestador\r
-                       Prestador prestador = new Prestador();\r
-                       prestador.Cuit=cuitPrestador;\r
-                       if (null==(aut.Prestador = (Prestador)this.ObjectSetToArrayList( this.Db.get(prestador) )[0]))\r
+                       al = this.ObjectSetToArrayList( this.Db.get( new Prestador(cuitPrestador) ) );\r
+                       if (null==(aut.Prestador = ( (al.Count == 0)? null : al[0] ) as Prestador))\r
                                codigosOk=false;\r
-                       \r
+\r
+                               \r
 \r
                        //Seteo afiliado\r
-                       Afiliado afiliado = new Afiliado(codAfiliado);                  \r
-                       if (null==(aut.Afiliado = ((Afiliado)this.ObjectSetToArrayList( this.Db.get(afiliado) )[0])))\r
+                       al = this.ObjectSetToArrayList( this.Db.get( new Afiliado(codAfiliado) ) );\r
+                       if (null==(aut.Afiliado = ( (al.Count == 0)? null : al[0] ) as Afiliado))\r
                                codigosOk=false;\r
-                       #endregion      Se insancia prestador, prestacion y afiliado, y se asocia a aut\r
+       \r
+                       #endregion Se insancia prestador, prestacion y afiliado, y se asocia a aut\r
+                       //Seteo fecha de vencimiento como dentro de 60 días\r
+                       \r
 \r
                        //Seteo fecha de vencimiento como dentro de 60 días\r
                        aut.FechaVencimiento = DateTime.Now.AddDays(60);\r
 \r
                        try\r
                        {
-                               porcentajeDeCobertura = afiliado.VerificarCobertura(codPrestacion);
+                               porcentajeDeCobertura = aut.Afiliado.VerificarCobertura(codPrestacion);
                        }\r
                        catch\r
                        {
@@ -172,6 +201,63 @@ namespace Controlador
                /// </summary>\r
                /// <param name="ip">Reporte del cual se porcesarán las lineas</param>\r
                \r
+               private void InsertarDatosNecesarios()\r
+               {\r
+                       //PRESTADOR\r
+                       Prestador pre = new Prestador();\r
+                       pre.Cuit = "11-11111111-1";\r
+                       ObjectSet os = this.Db.get( pre );\r
+                       if ( (os == null) || (os.size() == 0) )\r
+                       {\r
+                               Dominio.SDireccion dir;\r
+                               dir.Calle = "Gaona"; dir.CodigoPostal = "AB1504"; dir.Departamento = "";\r
+                               dir.Numero = 1234; dir.Piso = 0;  dir.Provincia = Dominio.EProvincia.CAPITAL_FEDERAL;\r
+                               dir.Telefono = "5056-4567";\r
+                               pre.Direccion = dir;\r
+                               pre.Email = @"roberto@sancamilo.com";\r
+                               pre.FechaBaja = DateTime.MinValue;\r
+                               pre.Nombre = "Clinica San Camilo";\r
+                               pre.Password = "camilo";\r
+                               pre.Zona = new SZona( "Caballito", "Zona de Caballito" );\r
+                               this.Db.set( pre );\r
+                       }\r
+\r
+                       Prestacion p = new Prestacion();\r
+                       p.Codigo = "mierda" ;\r
+\r
+                       Categoria c = new Categoria();\r
+                       c.Codigo=10;\r
+                       c.Nombre="categoria 1";\r
+               \r
+                       p.Categoria = c;\r
+                       p.Nombre= "hospital de clinicas";\r
+                       this.Db.set(c);\r
+\r
+                       Afiliado a = new Afiliado(69);\r
+                       a.Apellido = "apellido";\r
+                       a.EMail = "afiliado@aaa.com";\r
+\r
+                       this.Db.set(a);\r
+                       \r
+\r
+                       //AUTORIZACIONES\r
+                       /*AutorizacionAutomatica a = new AutorizacionAutomatica();\r
+                       a.Codigo = 123;\r
+                       os = this.Db.get( a );\r
+                       if ( (os == null) || (os.size() == 0) )\r
+                       {\r
+                               a.Afiliado = new Dominio.Afiliados.Afiliado( 987 );\r
+                               a.Prestacion = new Prestacion( "B01AC06" );\r
+                               a.Prestador = pre;\r
+                               a.FechaSolicitud = new DateTime( 2005, 5, 20 ); // 20 de mayo\r
+                               a.FechaRealizacion = DateTime.MinValue;\r
+                               a.FechaVencimiento = a.FechaSolicitud.AddMonths( 2 ); // 20 de julio, aprox\r
+                               a.Aprobada = true;\r
+                               a.PorcentajeCobertura = 12.5F;\r
+                               this.Db.set( a );\r
+                       }*/\r
+               }\r
+\r
                #endregion Métodos Privados\r
 \r
        }\r
index 76b8092c4d9832c294f218968f78c1b0457b1ca2..a1a7469070967cde7e534ca320d23e9e57d4c3a1 100644 (file)
@@ -1,5 +1,6 @@
 using System;\r
 using Dominio.Autorizaciones;\r
+using Controlador;\r
 \r
 namespace Tests\r
 {\r
@@ -226,6 +227,36 @@ namespace Tests
                                fecha, estado);\r
                }\r
 \r
+               public void TestSeba08_Manual_Guardar()\r
+               {\r
+                       bool exitoso = false;\r
+\r
+                       // 2 de mayo, 12hs\r
+                       DateTime fecha = new DateTime( 2005, 5, 2, 12, 0, 0 );\r
+\r
+                       DateTime fechaSolicitud = new DateTime(2005,5,2, 11, 0, 0);             //2 de mayo, 11hs\r
+                       DateTime fechaResolucion = new DateTime(2005,5,2, 18, 0, 0);    //2 de mayo, 18hs\r
+                       bool aprobada = false;\r
+                       DateTime fechaVencimiento = DateTime.MinValue;  \r
+                       DateTime fechaRealizacion = DateTime.MinValue;  //No realizada\r
+\r
+                       AutorizacionManual am = this.MakeAutorizacionManual( - 1, fechaSolicitud, fechaResolucion, aprobada, \r
+                               fechaRealizacion, fechaVencimiento );\r
+\r
+                       AutorizacionController ac = new AutorizacionController(DateTime.Now);\r
+                       using (ac)\r
+                       {\r
+                               exitoso=ac.guardarAutorizacionManual("mierda", "11-11111111-1" , 69, "observo hepatitis" );\r
+                       }\r
+\r
+\r
+                       \r
+\r
+                       this.MostrarTest( System.Reflection.MethodInfo.GetCurrentMethod().Name, am, exitoso, \r
+                               fecha );\r
+               }\r
+\r
+               \r
                #endregion Tests individuales\r
 \r
                #region Muestra de los tests\r
index d7c37a6deee7142115c5548f9380a0efde540f69..3b5e3e89e66d01995236656a81af460e90647802 100644 (file)
                     SubType = "Code"\r
                     BuildAction = "Compile"\r
                 />\r
+                <File\r
+                    RelPath = "Vistas\BuscarAfiliado.cs"\r
+                    SubType = "Code"\r
+                    BuildAction = "Compile"\r
+                />\r
                 <File\r
                     RelPath = "Vistas\BuscarPrestacion.cs"\r
                     SubType = "Code"\r
                     BuildAction = "Compile"\r
                 />\r
+                <File\r
+                    RelPath = "Vistas\BuscarPrestador.cs"\r
+                    SubType = "Code"\r
+                    BuildAction = "Compile"\r
+                />\r
                 <File\r
                     RelPath = "Vistas\CalendarDialog.cs"\r
                     SubType = "Code"\r
                     SubType = "Code"\r
                     BuildAction = "Compile"\r
                 />\r
+                <File\r
+                    RelPath = "Vistas\RevisarAutorizacionManual.cs"\r
+                    SubType = "Code"\r
+                    BuildAction = "Compile"\r
+                />\r
             </Include>\r
         </Files>\r
     </CSHARP>\r