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; }
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); }
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) { } }
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) { } }
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; }
public static bool ValidarHechoDesplazamentForzado(DatosDetallados hecho, ParametrosProcesamiento parProcesamiento) { return (!string.IsNullOrEmpty(hecho.HECHO) && hecho.HECHO.ToUpper() == parProcesamiento.Hecho); }
public static bool ValidarHechoDesplazamentForzado(DatosDetallados hecho, ParametrosProcesamiento parProcesamiento) { return(!string.IsNullOrEmpty(hecho.HECHO) && hecho.HECHO.ToUpper() == parProcesamiento.Hecho); }