public async Task <IActionResult> UploadFile([FromBody] UploadFileModel model) { #region Validation if (!ModelState.IsValid) { return(BadRequest(ErrorResponse.Create(ModelState))); } #endregion try { var fileData = Convert.FromBase64String(model.FileData); var fileId = await _service.UploadFileAsync(model.FileName, fileData, model.ParentFolderGoogleId); var response = new UploadFileResponse() { GoogleId = fileId }; return(Ok(response)); } catch (Exception ex) { await _log.WriteErrorAsync("GoogleDriveController", nameof(UploadFile), string.Empty, ex); return(StatusCode(500, ErrorResponse.Create(ex.Message))); } }
public async Task CreateAsync(string name, decimal value, double margin, int opportunityId, IFormFile formFile) { string fileId = null; if (formFile != null) { fileId = await googleDriveService.UploadFileAsync(formFile); } var proposal = new Proposal { Name = name, Date = DateTime.UtcNow, Value = value, Margin = margin * (0.01), FileId = fileId, OpportunityId = opportunityId }; await this.db.AddAsync(proposal); await this.db.SaveChangesAsync(); }