Beispiel #1
0
        public async Task <CephFileId> Save(WaybillFile waybillFile)
        {
            var fileWithMetadata = new FileWithMetadata(
                filename: CreateName(waybillFile),
                contentType: waybillFile.ContentType,
                tags: _tags,
                fileContent: waybillFile.Bytes
                );

            var fileId = await _fileRepository.Save(fileWithMetadata);

            var waybillFileDto = new WaybillFileDto
            {
                CephId     = fileId.ToGuid(),
                Name       = waybillFile.Name,
                UploadTime = waybillFile.UploadTime,
            };

            await _context.WaybillFiles.AddAsync(waybillFileDto);

            await _context.SaveChangesAsync();

            return(fileId);
        }
Beispiel #2
0
        private static string CreateName(WaybillFile waybillFile)
        {
            var uploadTimeTicks = waybillFile.UploadTime.Ticks;

            return($"{Guid.NewGuid():D}-{uploadTimeTicks:D}");
        }
        private async Task FillContent(PaperWaybill waybill, WaybillFile file)
        {
            var waybillContent = await _parser.Parse(file.CreateFileStream());

            waybill.SetContent(waybillContent);
        }