示例#1
0
 public Procesamiento(IConexionVivanto vivanto, IConexionIRDCOL ird, ParametrosProcesamiento parProcesamiento)
 {
     this.vivanto          = vivanto;
     this.ird              = ird;
     this.parProcesamiento = parProcesamiento;
     IgnorarExcepciones    = true;
 }
 public Procesamiento(IConexionVivanto vivanto, IConexionIRDCOL ird, ParametrosProcesamiento parProcesamiento)
 {
     this.vivanto = vivanto;
     this.ird = ird;
     this.parProcesamiento = parProcesamiento;
     IgnorarExcepciones = true;
 }
        static void Main(string[] args)
        {
            string archivoPorProcesar = null;

            if (args.Length > 0) {
                archivoPorProcesar = args [0];
                Console.WriteLine (archivoPorProcesar);
            }

            var appSettings = new AppSettings();

            var fechaRadicacionInicial = appSettings.Get<DateTime>("FechaRadicacionInicial", new DateTime(2015, 1, 7));
            var fechaRadicacionFinal = appSettings.Get<DateTime>("FechaRadicacionFinal", DateTime.Today);
            var urlBaseVivanto = appSettings.Get<string>("UrlBaseVivanto", "http://190.60.70.149:82");
            var varConexionBD = appSettings.Get<string>("ConexionBD", "APP_CONEXION_IRD");
            var varUsuarioVivanto = appSettings.Get<string>("UsuarioVivanto", "APP_USUARIO_VIVANTO");
            var varClaveVivanto = appSettings.Get<string>("ClaveVivanto", "APP_CLAVE_VIVANTO");

            var conexionBD = Environment.GetEnvironmentVariable(varConexionBD);
            var usuarioVivanto = Environment.GetEnvironmentVariable(varUsuarioVivanto);
            var claveVivanto = Environment.GetEnvironmentVariable(varClaveVivanto);

            Console.WriteLine(fechaRadicacionInicial);
            Console.WriteLine(fechaRadicacionFinal);
            Console.WriteLine(urlBaseVivanto);
            Console.WriteLine(varConexionBD);
            Console.WriteLine(varUsuarioVivanto);
            Console.WriteLine(varClaveVivanto);
            Console.WriteLine(conexionBD);
            Console.WriteLine(usuarioVivanto);
            Console.WriteLine(claveVivanto);

            var login = new LoginVivanto { Usuario = usuarioVivanto, Clave = claveVivanto };

            var par = new ParametrosServicio() { UrlBase = urlBaseVivanto };
            var parProcesamiento = new ParametrosProcesamiento()
            {
                FechaRadicacionInicial = fechaRadicacionInicial,
                FechaRadicacionFinal = fechaRadicacionFinal
            };

            using (IConexionVivanto cliente = new ConexionVivanto (par, login)) {

                var dbfactory = new OrmLiteConnectionFactory (conexionBD, SqlServerDialect.Provider);
                var dbcliente = new ConexionIRDCOL (dbfactory);
                cliente.IniciarSesion ();
                var proc = new Procesamiento (cliente, dbcliente, parProcesamiento);
                var np = proc.Iniciar (archivoPorProcesar);
                Console.WriteLine ("Listo primera fase");
                Console.WriteLine ("esperando 5 segundos para iniciar con los no procesados");
                System.Threading.Thread.Sleep (5 * 1000);
                Console.WriteLine ("Iniciando ahora con los no procesados...");
                //proc = new Procesamiento (cliente, dbcliente, parProcesamiento);
                proc.Iniciar (np);
                cliente.CerrarSession ();
            }

            return;
        }
示例#4
0
        static bool BuscarHecho(RuvConsultaNoValorados nv, List <DatosDetallados> hechos,
                                ParametrosProcesamiento parProcesamiento,
                                out DatosDetallados hecho)
        {
            hecho = null;

            foreach (var h in hechos)
            {
                if (!FnVal.ValidarHechoDesplazamentForzado(h, parProcesamiento))
                {
                    continue;
                }
                if (FnVal.NumeroDeclaracion(nv, h) ||
                    FnVal.ValidarHechoPorFechaDeclaracion(h, nv) ||
                    FnVal.ValidarHechoPorFechaValoracion(h, nv))
                {
                    hecho = h;
                    break;
                }
            }

            return(hecho != null);
        }
示例#5
0
        public static void RegistrarProcesado(DirectoryInfo dir, RuvConsultaNoValorados nv, List <DatosBasicos> basicos,
                                              List <DatosDetallados> hechos,
                                              DatosDetallados hecho, bool insertado, ParametrosProcesamiento parProcesamiento)
        {
            // valorados
            // actualizado, id_declaracion, regional, TI, documento, declaracion, fecha_declaracion,  fecha_radicacion, fecha_desplazamiento, fecha_atencion,
            // RUV_ESTADO, RUV_FECHA_VALORACION, RUV_FECHA_DECLARACION, RUV_FECHA_SINIESTRO, OK_FechaDeclaracion, OK_numero_declaracion
            // no valorados
            //id_declaracion, regional, TI, documento, declaracion, fecha_declaracion,  fecha_radicacion, fecha_desplazamiento, fecha_atencion

            string fn;
            string encabezado;
            var    linea = "{0};{1};{2};{3};{4};{5};{6};{7};{8}".Fmt(nv.Id_Declaracion,
                                                                     parProcesamiento.ObtenerRegional(nv.Id_Regional),
                                                                     nv.Id_Tipo_Identificacion,
                                                                     nv.Identificacion,
                                                                     nv.Numero_Declaracion,
                                                                     nv.Fecha_Declaracion.CsvFecha(),
                                                                     nv.Fecha_Radicacion.CsvFecha(),
                                                                     nv.Fecha_Desplazamiento.CsvFecha(),
                                                                     nv.Fecha_Valoracion.CsvFecha());

            if (hecho == null)
            {
                fn         = "No_Valorados.txt";
                encabezado = NO_VALORADOS_ENCABEZADO;
                linea      = "{0};{1}".Fmt(linea, (basicos != null && basicos.Count > 0) ? "SI" : "NO");
                DatosDetallados h;
                if (BuscarHecho(nv, hechos, parProcesamiento, out h))
                {
                    linea = "{0};{1};{2};{3};{4};{5};{6};{7}".Fmt(
                        linea,
                        h.ESTADO,
                        h.F_VALORACION.CsvFecha(),
                        h.F_DECLARACION.CsvFecha(),
                        h.FECHA_SINIESTRO.CsvFecha(),
                        h.NUM_FUD_NUM_CASO,
                        h.F_DECLARACION.Date == nv.Fecha_Declaracion.Date ? "SI" : "NO",
                        FnVal.NumeroDeclaracion(nv, h)?"SI" : "NO"
                        );
                }
            }
            else
            {
                fn         = "Valorados.txt";
                encabezado = VALORADOS_ENCABEZADO;
                linea      = "{0};{1};{2};{3};{4};{5};{6};{7};{8}".Fmt(insertado ? "SI" : "NO",
                                                                       linea,
                                                                       hecho.ESTADO,
                                                                       hecho.F_VALORACION.CsvFecha(),
                                                                       hecho.F_DECLARACION.CsvFecha(),
                                                                       hecho.FECHA_SINIESTRO.CsvFecha(),
                                                                       hecho.NUM_FUD_NUM_CASO,
                                                                       hecho.F_DECLARACION.Date == nv.Fecha_Declaracion.Date ? "SI" : "NO",
                                                                       FnVal.NumeroDeclaracion(nv, hecho)?"SI" : "NO"
                                                                       );
            }
            try {
                AsegurarQueExisteEncabezado(dir, fn, encabezado);
                File.AppendAllText(NombreArhivo(dir, fn), linea + Environment.NewLine);
            }
            catch (Exception)
            {
            }
        }
示例#6
0
        public static void RegistrarProcesado(DirectoryInfo dir, RuvConsultaNoValorados nv, List<DatosBasicos>basicos,
			List<DatosDetallados> hechos,
			DatosDetallados hecho, bool insertado, ParametrosProcesamiento parProcesamiento)
        {
            // valorados
            // actualizado, id_declaracion, regional, TI, documento, declaracion, fecha_declaracion,  fecha_radicacion, fecha_desplazamiento, fecha_atencion,
            // RUV_ESTADO, RUV_FECHA_VALORACION, RUV_FECHA_DECLARACION, RUV_FECHA_SINIESTRO, OK_FechaDeclaracion, OK_numero_declaracion
            // no valorados
            //id_declaracion, regional, TI, documento, declaracion, fecha_declaracion,  fecha_radicacion, fecha_desplazamiento, fecha_atencion

            string fn;
            string encabezado;
            var linea = "{0};{1};{2};{3};{4};{5};{6};{7};{8}".Fmt(nv.Id_Declaracion,
                parProcesamiento.ObtenerRegional(nv.Id_Regional),
                nv.Id_Tipo_Identificacion,
                nv.Identificacion,
                nv.Numero_Declaracion,
                nv.Fecha_Declaracion.CsvFecha(),
                nv.Fecha_Radicacion.CsvFecha(),
                nv.Fecha_Desplazamiento.CsvFecha(),
                nv.Fecha_Valoracion.CsvFecha());

            if (hecho == null)
            {
                fn = "No_Valorados.txt";
                encabezado = NO_VALORADOS_ENCABEZADO;
                linea = "{0};{1}".Fmt (linea, (basicos != null && basicos.Count > 0) ? "SI" : "NO");
                DatosDetallados h;
                if( BuscarHecho(nv, hechos, parProcesamiento, out h)){
                    linea = "{0};{1};{2};{3};{4};{5};{6};{7}".Fmt(
                        linea,
                        h.ESTADO,
                        h.F_VALORACION.CsvFecha(),
                        h.F_DECLARACION.CsvFecha(),
                        h.FECHA_SINIESTRO.CsvFecha(),
                        h.NUM_FUD_NUM_CASO,
                        h.F_DECLARACION.Date == nv.Fecha_Declaracion.Date ? "SI" : "NO",
                        FnVal.NumeroDeclaracion(nv, h)?"SI" : "NO"
                    );
                }
            }
            else
            {
                fn = "Valorados.txt";
                encabezado = VALORADOS_ENCABEZADO;
                linea = "{0};{1};{2};{3};{4};{5};{6};{7};{8}".Fmt(insertado ? "SI" : "NO",
                    linea,
                    hecho.ESTADO,
                    hecho.F_VALORACION.CsvFecha(),
                    hecho.F_DECLARACION.CsvFecha(),
                    hecho.FECHA_SINIESTRO.CsvFecha(),
                    hecho.NUM_FUD_NUM_CASO,
                    hecho.F_DECLARACION.Date == nv.Fecha_Declaracion.Date ? "SI" : "NO",
                    FnVal.NumeroDeclaracion(nv, hecho)?"SI" : "NO"
                    );
            }
            try {
                AsegurarQueExisteEncabezado(dir, fn, encabezado);
                File.AppendAllText(NombreArhivo(dir, fn), linea + Environment.NewLine);
            }
            catch(Exception)
            {

            }
        }
示例#7
0
        static bool BuscarHecho(RuvConsultaNoValorados nv, List<DatosDetallados> hechos, 
			ParametrosProcesamiento parProcesamiento,
			out DatosDetallados  hecho)
        {
            hecho = null;

            foreach (var h in hechos) {
                if (!FnVal.ValidarHechoDesplazamentForzado (h, parProcesamiento))
                    continue;
                if (FnVal.NumeroDeclaracion (nv, h)
                    || FnVal.ValidarHechoPorFechaDeclaracion (h, nv)
                    || FnVal.ValidarHechoPorFechaValoracion(h, nv)) {
                    hecho = h;
                    break;
                }
            }

            return hecho != null;
        }
示例#8
0
 public static bool ValidarHechoDesplazamentForzado(DatosDetallados hecho, ParametrosProcesamiento parProcesamiento)
 {
     return (!string.IsNullOrEmpty(hecho.HECHO) && hecho.HECHO.ToUpper() == parProcesamiento.Hecho);
 }
示例#9
0
 public static bool ValidarHechoDesplazamentForzado(DatosDetallados hecho, ParametrosProcesamiento parProcesamiento)
 {
     return(!string.IsNullOrEmpty(hecho.HECHO) && hecho.HECHO.ToUpper() == parProcesamiento.Hecho);
 }