public IActionResult DeleteFile([FromQuery] int fileId)
        {
            var lang          = Request.Headers["language"].ToString();
            var errorMessages = new List <string>();

            try
            {
                var file       = _uploadedFileRepository.FindById(fileId);
                var path       = Path.Combine(_webHostEnvironment.WebRootPath, "appData");
                var uploadPath = file.UploadPath;

                var fullPath = Path.Combine(path, uploadPath);

                if (System.IO.File.Exists(fullPath))
                {
                    System.IO.File.Delete(fullPath);

                    var deletedFile = _uploadedFileRepository.Delete(fileId);

                    return(Ok(new { deletedFileId = deletedFile.Id }));
                }

                errorMessages.Add(_translator.GetTranslation("NOT_FOUND", lang));
                return(BadRequest(new { errors = errorMessages }));
            }
            catch
            {
                errorMessages.Add(_translator.GetTranslation("ERROR", lang));
                return(BadRequest(new { errors = errorMessages }));
            }
        }
Пример #2
0
        public IActionResult CreateDocument([FromBody] Document document)
        {
            var lang          = Request.Headers["language"].ToString();
            var errorMessages = new List <string>();

            try
            {
                var experience = _experienceRepository.FindById(document.ExperienceId.Value);
                if (experience == null)
                {
                    return(NotFound());
                }

                var file = _uploadedFileRepository.FindById(document.FileId.Value);

                var newDoc = new Document
                {
                    Experience      = experience,
                    ExperienceId    = experience.Id,
                    Name_EN         = document.Name_EN,
                    Name_FR         = !string.IsNullOrEmpty(document.Name_FR) ? document.Name_FR : document.Name_EN,
                    Description_EN  = document.Description_EN,
                    Description_FR  = !string.IsNullOrEmpty(document.Description_FR) ? document.Description_FR : document.Description_EN,
                    Path            = document.Path,
                    IsDisplayed     = document.IsDisplayed,
                    LastUpdatedDate = DateTime.Now,
                    Type            = file.FileType,
                    FileId          = document.FileId
                };

                var createdDocument = _documentRepository.Create(newDoc);

                return(Ok(new { createdDocument }));
            }
            catch (Exception ex)
            {
                errorMessages.Add(_translator.GetTranslation("ERROR", lang));
                errorMessages.Add(ex.Message);
                return(BadRequest(new { errors = errorMessages }));
            }
        }