// Формируем модель файла документа private FileModelDTO CreateFilePath(DocumentCreateModel model) { var year = model.Year.ToString(); var contract = model.ContractNumber.ReplaceInvalidChars('-') ?? ""; var deviceType = model.DeviceType.ReplaceInvalidChars('-'); var deviceName = model.DeviceName.ReplaceInvalidChars('-'); var docType = model.DocumentType == DocumentType.Certificate ? "Свидетельства" : "Извещения о непригодности"; var extension = Path.GetExtension(model.DocumentFile?.FileName); var fileName = deviceType + "_" + deviceName + extension; var filePath = Path.Combine(year, contract, docType, fileName); var file = new FileModelDTO { Size = model.DocumentFile?.Length ?? 0, ContentType = model.DocumentFile?.ContentType, Path = filePath }; // Актуализируем путь к файлу file.Path = _fileService.ActualizeFilePath(file); file.FileName = Path.GetFileName(file.Path); return(file); }