示例#1
0
 /// <summary>
 /// Перенос ошибочных файлов
 /// </summary>
 public void MoveFileToErrorFolder()
 {
     foreach (var file in Directory.GetFiles(FolderTypeHelper.GetPath(FolderTypeHelper.Processed)))
     {
         File.Move(file, string.Format("{0}\\{1}", FolderTypeHelper.GetPath(FolderTypeHelper.Error), new FileInfo(file).Name));
     }
 }
示例#2
0
 /// <summary>
 /// Перенос файла из папки в папку
 /// </summary>
 public void MoveFilesToProcessingFolder()
 {
     foreach (var file in Directory.GetFiles(FolderTypeHelper.GetPath(FolderTypeHelper.InComing)))
     {
         try
         {
             File.Move(file, string.Format("{0}\\{1}", FolderTypeHelper.GetPath(FolderTypeHelper.Processed), new FileInfo(file).Name));
         }
         catch (Exception ex)
         {
             Serilog.Log.Error(ex, ex.Message);
             RollbackFiles(FolderTypeHelper.GetPath(FolderTypeHelper.Processed), FolderTypeHelper.GetPath(FolderTypeHelper.InComing));
             throw ex;
         }
     }
 }
示例#3
0
 /// <summary>
 /// Проверить консистентность данных
 /// </summary>
 public void CheckConsistencyData()
 {
     try
     {
         foreach (var file in Directory.GetFiles(FolderTypeHelper.GetPath(FolderTypeHelper.Processed)).Select(e => new FileInfo(e)))
         {
             using (var package = new ExcelPackage(file))
             {
                 foreach (var worksheet in package.Workbook.Worksheets)
                 {
                     ValidationData(worksheet, worksheet.Dimension.Start.Row, worksheet.Dimension.End.Column);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         Serilog.Log.Error(ex, ex.Message);
         _readerFileService.MoveFileToErrorFolder();
         throw ex;
     }
 }
示例#4
0
        /// <summary>
        /// Сохранить файл на диск
        /// </summary>
        /// <param name="file">Файл</param>
        /// <returns></returns>
        public async Task <FileUploadResult> SaveFile(IFormFile file)
        {
            string error = _fileValidatorService.ValidateUploadedFile(file);

            if (!string.IsNullOrEmpty(error))
            {
                return(new FileUploadResult()
                {
                    Error = error,
                    Success = false,
                });
            }
            using (var fileStream = new FileStream($"{FolderTypeHelper.GetPath(FolderTypeHelper.InComing)}\\{file.FileName}", FileMode.Create))
            {
                await file.CopyToAsync(fileStream);

                return(new FileUploadResult()
                {
                    Error = null,
                    Success = true,
                });
            }
        }
示例#5
0
 public FileHandlerService(IFileValidatorService fileValidatorService)
 {
     _fileValidatorService = fileValidatorService;
     FolderTypeHelper.InitializeDirectories($"{Directory.GetParent(Directory.GetCurrentDirectory())}");
 }
示例#6
0
 /// <summary>
 /// Проверка файлов на наличии в директории
 /// </summary>
 /// <returns></returns>
 public bool HasFiles()
 {
     return(Directory.GetFiles(FolderTypeHelper.GetPath(FolderTypeHelper.InComing)).Any());
 }