// EDIT MEMBRO DATA //------------------------------------------------------------------------------------------------------------ private void btnEditar_Click(object sender, EventArgs e) { //--- check selected item if (dgvListagem.SelectedRows.Count == 0) { AbrirDialog("Favor selecionar um registro para Editar...", "Selecionar Registro", DialogType.OK, DialogIcon.Information); return; } //--- get Selected item objMembro item = (objMembro)dgvListagem.SelectedRows[0].DataBoundItem; //--- open edit form Membros.frmMembro frm = new Membros.frmMembro(item, this); frm.MdiParent = Application.OpenForms.OfType <Main.frmPrincipal>().FirstOrDefault(); DesativaMenuPrincipal(); frm.Show(); }
// UPDATE PROGRESS //------------------------------------------------------------------------------------------------------------ private static void Request_ProgressChanged(Google.Apis.Upload.IUploadProgress progress, Membros.frmMembro parent) { long totalSize = 100000; switch (progress.Status) { case Google.Apis.Upload.UploadStatus.Uploading: { parent.updateStatusBar((progress.BytesSent * 100) / totalSize, "Enviando..."); break; } case Google.Apis.Upload.UploadStatus.Completed: { parent.updateStatusBar(100, "Envio Completo."); break; } case Google.Apis.Upload.UploadStatus.Failed: { parent.updateStatusBar(0, "Falha no Envio."); Gtools.writeToFile(frmPrincipal.errorLog, Environment.NewLine + DateTime.Now.ToString() + Environment.NewLine + "Falha no Envio.\n"); break; } } }
// SAVE IMAGE/FOTO IN DEFAULT DRIVE FOLDER AND RETURN NEW FILE ID //------------------------------------------------------------------------------------------------------------ public async static Task <string> SaveFileInDriveImageFolder(string _caminhoArquivo, string _newName, Membros.frmMembro parent) { try { if (!GoogleDriveConnection()) { throw new Exception("Não conectado"); } //--- check IMAGE FOLDER string IDFotoFolder = await GetFotosFolderID(); if (string.IsNullOrEmpty(IDFotoFolder)) { throw new Exception("Não há pasta de Fotos no Drive..."); } //--- Check file already exists in folder string[] OlderFileID = await ProcurarArquivoId(_newName, IDFotoFolder, false); //--- Define/Create file to UPLOAD var arquivo = new Google.Apis.Drive.v3.Data.File() { Name = _newName, MimeType = "image/jpeg", Parents = new List <string> { IDFotoFolder } }; string newFileID; using (var stream = new FileStream(_caminhoArquivo, FileMode.Open, FileAccess.Read)) //new System.IO.MemoryStream(byteArray)) //new FileStream(_caminhoArquivo, FileMode.Open, FileAccess.Read)) { if (OlderFileID == null || !OlderFileID.Any()) { FilesResource.CreateMediaUpload request; request = driveService.Files.Create(arquivo, stream, arquivo.MimeType); request.Fields = "id"; request.ChunkSize = Google.Apis.Upload.ResumableUpload.MinimumChunkSize; request.ProgressChanged += (IUploadProgress) => Request_ProgressChanged(IUploadProgress, parent); request.Upload(); var file = request.ResponseBody; newFileID = file.Id; } else { // get File ID string FileID = OlderFileID.First(); // clear Parents arquivo.Parents = null; // create request FilesResource.UpdateMediaUpload request; request = driveService.Files.Update(arquivo, FileID, stream, arquivo.MimeType); request.Fields = "id,md5Checksum";; request.ChunkSize = Google.Apis.Upload.ResumableUpload.MinimumChunkSize; //262144; request.ProgressChanged += (IUploadProgress) => Request_ProgressChanged(IUploadProgress, parent); request.Upload(); var file = request.ResponseBody; newFileID = file.Id; } } return(newFileID); } catch (Exception ex) { throw ex; } }