예제 #1
0
        /// Verifica si los archivos enviados son los que se deberian enviar segun el mes y el tipo de entidad
        private bool validarArchivosEnviadosNombres(List <ArchivoCargado> archivosEnv)
        {
            bool correcto = true;

            // se obtiene la lita de archivos que corresponden a la compañia segun el mes
            List <Archivo> archivosValidos = ArchivosController.getArchivosDeEntidadMes(this.codigoEntidad, this.mesControl);

            if (archivosValidos.Count != archivosEnv.Count)
            {
                correcto = false;
                // EE-02  "La cantidad de archivos enviados no corresponde
                this.errores.Add(err("002", "", "deberían ser " + archivosValidos.Count + " archivos y se cargaron:  " + archivosEnv.Count + " .", 0, 0));
            }

            foreach (Archivo arch in archivosValidos)
            {
                string         nombreArchivo = this.nombreArchivo(codigoEntidad, mesControl, anoControl, arch.codigo);
                ArchivoCargado carg          = (from i in archivosEnv where i.nombre.ToUpper() == nombreArchivo.ToUpper() select i).FirstOrDefault();

                if (carg == null)
                {
                    correcto = false;
                    // EE-03 "Falta el archivo "
                    this.errores.Add(err("003", nombreArchivo, nombreArchivo, 0, 0));
                }
                else
                {
                    carg.codigo          = arch.codigo;
                    carg.validacionTexto = arch.validacion;
                }
            }
            return(correcto);
        }
        public static string encadenaArchivosDeEntidadMes(string cod_entidad, int mes)
        {
            List <Archivo> archivosList   = ArchivosController.getArchivosDeEntidadMes(cod_entidad, mes);
            string         cadenaArchivos = "";

            foreach (Archivo arch in archivosList)
            {
                cadenaArchivos += arch.codigo;
            }

            return(cadenaArchivos);
        }