private void SaveFile(string[] listNameFile)
        {
            var startTime = DateTime.Now;

            try
            {
                var cargaLogica = new CargaLogica(FullNombreArchivo, pathSaveFile)
                {
                    UsuarioModificacion = /*Session["usernameId"].ToString() */ "2"
                };
                cargaLogica.formatoMoneda = ConfigurationManager.AppSettings.Get("Float").ToString();
                cargaLogica.CargarArchivo(IdContrato);
                //insertar log
                nlog.setLLenarEntidad(IdContrato, "I", (listNameFile[0].Equals("NOMINA") ? "I05" : "I04"), cargaLogica.IdArchivo.ToString(), "jose.camara" /*Session["username"].ToString()*/, "Archivo");
                var messageLog = string.Format("Archivo {0} ", fileName);
                messageLog += listNameFile[0].Equals("NOMINA") ? string.Format("Nomina procesada {0}", (cargaLogica.ContadorErrores > 0 ? "incorrectamente" : "correctamente")):
                              cargaLogica.ContadorErrores > 0? "Archivo procesado incorrectamente": "Archivo procesado correctamente";
                var endTime = DateTime.Now;
                messageLog += string.Format("{0} - tiempo {1}", cargaLogica.Observacion, new TimeSpan(endTime.Ticks - startTime.Ticks));
                lineMessageLog.AppendLine(messageLog);
            }
            catch (Exception ex)
            {
                lineMessageLog.AppendLine("ERROR =>" + ex.Message);
            }
        }
        private string setEnviarCorreo(CargaLogica cargaLogica)
        {
            string FormatoCuerpo = "";
            Correo mail          = new Correo()
            {
                Para    = cargaLogica.Correo,
                CC      = "",
                CCO     = "",
                Asunto  = ("Monto alto a reembolsar: " + cargaLogica.NombreArchivo),
                Cuerpo  = ("Estimado Usuario (a),</BR> liquidacion cargada contiene monto superior al establecido, el dia " + DateTime.Now) + "</BR> " + cargaLogica.Observacion,
                Archivo = ""
            };

            return(cargaLogica.EnviarCorreo(mail, FormatoCuerpo));
        }
        private void cargarValidarArchivo()
        {
            var pathRoot = Server.MapPath(string.Format(@"~\{0}\", ConfigurationManager.AppSettings["CarpetaArchivos"].ToString()));

            try
            {
                //david choque 27 12 2015
                nombreArchivo = fileUpload.FileName.ToString().ToUpper().Replace(" ", "").Replace("  ", "");
                //VALIDA SI EL NUMERO CONTRATO SELECCIONADO COICEDE CON EL ARCHIVO A CARGAR
                if (validarNumeroContratoXArchivo(nombreArchivo, ddl_conrato1.SelectedItem.Value) == 0)
                {
                    MessageBox("El archivo que se está intentando cargar pertenece a un número de contrato diferente.");
                    return;
                }
                //validar que el archivo seleccionado corresponde al mismo tipo al que esta seleccionado el combo combo
                string[] nombreArchivoValido = nombreArchivo.Split('_');
                if (!nombreArchivoValido[0].ToString().ToUpper().Equals(ddl_tipo_archivo.SelectedItem.Value.ToUpper()))
                {
                    MessageBox("El archivo seleccionado no corresponde al Tipo de Archivo eligido");
                    return;
                }
                var archivo = new Archivo()
                {
                    NombreArchivo = nombreArchivo
                };

                //aqui se verifica que, el archivo que se está cargandose ya fue cargado previamente con el mismo nombre.
                var existeArchivo = new nArchivo().listExisteArchivo(archivo);
                if (existeArchivo.Count > 0)
                {
                    if (chk_permitir.Checked)
                    {
                        new nArchivo().actualizarEstadoArchivo(existeArchivo[0]);
                        chk_permitir.Checked = false;
                        chk_permitir.Visible = false;
                    }
                    else
                    {
                        MessageBox("El archivo: " + nombreArchivo + " ya fue cargado correctamente, si desea reemplazar haga click en: <br> Permitir reemplazar archivo existente.");
                        chk_permitir.Visible = true;
                        return;
                    }
                }
                //si el tipo de archivo es nomina validar  que se haya cargado un equivalente de  pago y que se haya cargado correctamente.
                if (ddl_tipo_archivo.SelectedItem.Value.Equals("NOMINA"))
                {
                    var existePagoNomina = new nArchivo().listExistePagoNomina(archivo);
                    if (existePagoNomina == 0)
                    {
                        MessageBox("Para cargar el archivo de nóminas debe cargar previamente los archivos de liquidaciones en forma correcta y sin errores");
                        return;
                    }
                }

                //fin david choque 27 12 2015
                var fileName = string.Format("{0}/{1}", Server.MapPath("~/Temp/Archivos"), nombreArchivo);
                fileUpload.SaveAs(fileName);
                var cargaLogica = new CargaLogica(fileName, pathRoot)
                {
                    UsuarioModificacion = /*Session["usernameId"].ToString() */ "2"
                };
                cargaLogica.formatoMoneda = ConfigurationManager.AppSettings.Get("Float").ToString();
                cargaLogica.CargarArchivo(Convert.ToInt32(ddl_conrato1.SelectedValue));
                //david choque 27 12 2015
                tipoArchivo = ddl_tipo_archivo.SelectedItem.Value;
                setCargarReglaArchivo();
                //insertar log
                nlog.setLLenarEntidad(Convert.ToInt32(ddl_conrato1.SelectedItem.Value), "I", (tipoArchivo.Equals("NOMINA") ? "I05" : "I04"), cargaLogica.IdArchivo.ToString(), Session["username"].ToString(), "Archivo");

                txt_moneda.Text             = cargaLogica.moneda;
                txt_registro_procesado.Text = cargaLogica.ContadorExito.ToString();
                txt_total_importe.Text      = string.IsNullOrEmpty(cargaLogica.importe) ? "0.00" : cargaLogica.importe;
                txt_registro_observado.Text = cargaLogica.ContadorErrores.ToString();
                filters[3] = cargaLogica.IdArchivo;
                //fin david choque 27 12 2015

                if ((cargaLogica.MensajeExcepcion != ""))
                {
                    var mensaje = "Se produjo un error al cargar el archivo.<br> " + cargaLogica.MensajeExcepcion;
                    MessageBox(mensaje.Replace(Environment.NewLine, "").Replace("'", ""));
                }
                else
                {
                    string nombre;
                    if ((cargaLogica.NombreArchivo.Split('_')[0] == "NOMINA"))
                    {
                        nombre = string.Format("Nomina cargada {0} <br> {1}", (cargaLogica.ContadorErrores > 0 ? "incorrectamente" : "correctamente"), cargaLogica.Observacion);
                        if ((cargaLogica.MensageError != String.Empty))
                        {
                            nombre = (nombre + (", " + cargaLogica.MensageError));
                            MessageBox(nombre.Replace(Environment.NewLine, ""));
                        }
                        else
                        {
                            MessageBox(nombre.Replace(Environment.NewLine, ""));
                        }
                    }
                    else if ((cargaLogica.NombreArchivo.Split('_')[0] == "INOMINA"))
                    {
                        nombre = string.Format("Nomina procesada {0}", (cargaLogica.ContadorErrores > 0 ? "incorrectamente" : "correctamente"));
                        if ((cargaLogica.MensageError != String.Empty))
                        {
                            nombre = (nombre + (", " + cargaLogica.MensageError));
                            MessageBox(nombre.Replace(Environment.NewLine, ""));
                        }
                        else
                        {
                            MessageBox(nombre.Replace(Environment.NewLine, ""));
                        }
                    }
                    else
                    {
                        nombre = cargaLogica.ContadorErrores > 0? "Archivo procesado incorrectamente": "Archivo procesado correctamente";
                        if ((cargaLogica.Observacion != String.Empty))
                        {
                            nombre = (nombre + (", " + cargaLogica.Observacion));
                            MessageBox(nombre.ToString().Replace(Environment.NewLine, ""));
                            if (cargaLogica.Observacion.Contains("alto"))
                            {
                                string respuesta = setEnviarCorreo(cargaLogica);
                            }
                        }
                        else if ((cargaLogica.MensageError != String.Empty))
                        {
                            nombre = (nombre + (", " + cargaLogica.MensageError));
                            MessageBox(nombre.Replace(Environment.NewLine, ""));
                        }
                        else
                        {
                            MessageBox(nombre.Replace(Environment.NewLine, ""));
                        }
                    }
                }
                //david choque 27 12 2015
                setMostrarRegistroCargadosOK(tipoArchivo);
                setMostrarRegistroCargadosObservado(tipoArchivo);
                multiTabs.ActiveViewIndex  = 1;
                menuTabs.Items[1].Selected = true;
                control_grid.Value         = "1";
                //fin david choque
            }
            catch (Exception s)
            {
                MessageBox("ERROR =>" + s.Message.Replace("'", "-"));
            }
        }