示例#1
0
        private AblageInfos GetSettings(string belegAblagecode)
        {
            var settings = new AblageInfos();


            var ablage = belegAblagecode;

            ablage = ablage.Replace(":", "");
            var code = ablage.Split('\\');

            if (code.Length != 6)
            {
                return(settings);
            }

            var ablageCode = $"{code[0]}\\{code[1]}\\{code[2]}\\{code[3]}\\{code[4]}";
            var sourcePath = GetArchivPath(ablageCode);

            if (Directory.Exists(sourcePath) == false)
            {
                return(settings);
            }

            settings.AblageCode = ablageCode;
            settings.PathToFile = sourcePath;
            settings.FileFilter = code[5];

            return(settings);
        }
示例#2
0
        private CheckFiles GetCheckFilesWihtoutOriginal(AblageInfos settings)
        {
            try
            {
                var checkfiles = new CheckFiles();

                var dir   = new DirectoryInfo(settings.PathToFile);
                var files = dir.GetFiles(settings.FileFilter);

                if (files.Length == 0)
                {
                    return(null);
                }

                var ext = new List <string> {
                    "tif", "tiff", "jpg", "jpeg"
                };

                var filesWithoutUnderline = files.Where(f => f.Name.Contains("_") == false).ToList();

                foreach (var file in filesWithoutUnderline)
                {
                    var endString = file.FullName.Substring(file.FullName.LastIndexOf('.') + 1).ToLower();
                    if (!ext.Contains(endString))
                    {
                        continue;
                    }

                    checkfiles.Original.Add(file.Name);

                    checkfiles.Images.Add(file.Name);
                }



                return(checkfiles);
            }
            catch (Exception ex)
            {
                FileLogger.FileLogger.Instance.WriteExeption(ex);

                return(null);
            }
        }
示例#3
0
        private CheckFiles GetCheckFiles(AblageInfos settings)
        {
            try
            {
                var checkfiles = new CheckFiles();

                var dir   = new DirectoryInfo(settings.PathToFile);
                var files = dir.GetFiles(settings.FileFilter);

                if (files.Length == 0)
                {
                    return(null);
                }

                var ext = new List <string> {
                    "pdf", "doc", "docx", "safe"
                };

                foreach (var file in files)
                {
                    var endString = file.FullName.Substring(file.FullName.LastIndexOf('.') + 1).ToLower();
                    if (ext.Contains(endString))
                    {
                        continue;
                    }

                    checkfiles.Images.Add(file.Name);
                }



                return(checkfiles);
            }
            catch (Exception ex)
            {
                FileLogger.FileLogger.Instance.WriteExeption(ex);

                return(null);
            }
        }
示例#4
0
        private List <string> GetFiles(AblageInfos settigns)
        {
            var list  = new List <string>();
            var dir   = new DirectoryInfo(settigns.PathToFile);
            var files = dir.GetFiles(settigns.FileFilter);

            if (files.Length == 0)
            {
                return(list);
            }

            var ext = new List <string> {
                "pdf", "doc", "docx"
            };
            var fileBeginnWith = settigns.FileFilter.Replace("*.*", "");

            var expre = $@"{fileBeginnWith}[0-9]{{3}}[_][0-9]{{4,}}.tif";

            DeleteOldFiles(files, expre);

            var expre2 = $@"{fileBeginnWith}[0-9]{{3}}[_][0-9]{{4,}}.jpg";

            DeleteOldFiles(files, expre2);

            foreach (var file in files)
            {
                var endString = file.FullName.Substring(file.FullName.LastIndexOf('.') + 1).ToLower();
                if (!ext.Contains(endString))
                {
                    continue;
                }

                list.Add(file.FullName);
            }

            return(list);
        }
示例#5
0
        private CheckFiles GetCheckFiles(AblageInfos settings)
        {
            try
            {
                var checkfiles = new CheckFiles();

                var dir   = new DirectoryInfo(settings.PathToFile);
                var files = dir.GetFiles(settings.FileFilter);

                if (files.Length == 0)
                {
                    return(null);
                }

                var withoutSafe = files.Where(f => f.Name.ToLower().Contains(".safe") == false).ToList();


                var ext = new List <string> {
                    "pdf", "doc", "docx"
                };

                foreach (var file in withoutSafe)
                {
                    var endString = file.FullName.Substring(file.FullName.LastIndexOf('.') + 1).ToLower();
                    if (!ext.Contains(endString))
                    {
                        continue;
                    }

                    checkfiles.Original.Add(file.Name);


                    var fileBeginnWith = Path.GetFileNameWithoutExtension(file.Name);
                    var expre1         = $@"{fileBeginnWith}[_][0-9]{{4,}}.tif";
                    var expre2         = $@"{fileBeginnWith}[_][0-9]{{4,}}.jpg";

                    var rx1 = new Regex(expre1, RegexOptions.IgnoreCase);
                    var rx2 = new Regex(expre2, RegexOptions.IgnoreCase);
                    foreach (var info in withoutSafe)
                    {
                        if (rx1.IsMatch(info.Name))
                        {
                            checkfiles.Images.Add(info.Name);
                        }
                        else if (rx2.IsMatch(info.Name))
                        {
                            checkfiles.Images.Add(info.Name);
                        }
                    }
                }



                return(checkfiles);
            }
            catch (Exception ex)
            {
                FileLogger.FileLogger.Instance.WriteExeption(ex);

                return(null);
            }
        }