Skip to content

Commit

Permalink
feat: Criando prototipo de funcao para enviar o arquivo para o backend
Browse files Browse the repository at this point in the history
  • Loading branch information
JJOAOMARCOSS committed Dec 8, 2024
1 parent 68c8bc7 commit 3f1ee42
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 41 deletions.
50 changes: 11 additions & 39 deletions src/app/pages/video-views/video-views.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -22,36 +22,22 @@
<main>
<header>
<h1>Dados - Vídeos</h1>
<button
class="download-button w-full h-[50px] max-w-[160px] bg-blue-brand rounded-lg text-white"
(click)="exportExcel()"
>
<button class="download-button w-full h-[50px] max-w-[160px] bg-blue-brand rounded-lg text-white"
(click)="exportExcel()">
Exportar para Excel
</button>
</header>
<hr class="solid2" />
<div class="containerConteudo">
<div class="containerFiltro">
<div class="filtroItem">
<input
[(ngModel)]="filterId"
(ngModelChange)="filterVideos()"
placeholder="Filtrar por ID"
/>
<input [(ngModel)]="filterId" (ngModelChange)="filterVideos()" placeholder="Filtrar por ID" />
</div>
<div class="filtroItem">
<input
[(ngModel)]="filterTitle"
(ngModelChange)="filterVideos()"
placeholder="Filtrar por Título"
/>
<input [(ngModel)]="filterTitle" (ngModelChange)="filterVideos()" placeholder="Filtrar por Título" />
</div>
<div class="filtroItem">
<input
[(ngModel)]="filterDescription"
(ngModelChange)="filterVideos()"
placeholder="Filtrar por Descrição"
/>
<input [(ngModel)]="filterDescription" (ngModelChange)="filterVideos()" placeholder="Filtrar por Descrição" />
</div>
<div class="filtroItem">
<div class="dropdown">
Expand All @@ -61,11 +47,7 @@ <h1>Dados - Vídeos</h1>
<div class="conteudoDropdown">
<div *ngFor="let category of categories">
<label>
<input
type="checkbox"
[(ngModel)]="selectedCategories[category]"
(ngModelChange)="filterVideos()"
/>
<input type="checkbox" [(ngModel)]="selectedCategories[category]" (ngModelChange)="filterVideos()" />
{{ category }}
</label>
</div>
Expand All @@ -82,10 +64,7 @@ <h1>Dados - Vídeos</h1>
<th>Categoria</th>
<th (click)="changeSortOrder()" class="ordenavel">
Nº Visualizações
<span
class="setinha"
[ngClass]="{ up: !sortAscending, down: sortAscending }"
></span>
<span class="setinha" [ngClass]="{ up: !sortAscending, down: sortAscending }"></span>
</th>
<th>Transcrição</th>
</tr>
Expand All @@ -101,20 +80,13 @@ <h1>Dados - Vídeos</h1>
{{ video.transcript }}
<!-- Caixa de upload -->
<form action="upload" method="post" enctype="multipart/form-data">
<label for="transcriptFile" class="custom-file-upload">
<i class="fi fi-br-file-download"></i>
</label>
<input
type="file"
name="transcriptFile"
id="transcriptFile"
accept=".txt"
/>
<input type="file" name="transcriptFile" id="transcriptFile" accept=".txt"
(change)="onFileUpload($event, video)" />
</form>
</td>
</tr>
</tbody>
</table>
</table>
</div>
</main>
</div>
</div>
29 changes: 27 additions & 2 deletions src/app/pages/video-views/video-views.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,32 @@ export class VideoViewsComponent {
this.sortVideos();
this.isSorted = true;
}


onFileUpload(event: Event, video: IVideo): void {
const input = event.target as HTMLInputElement; // Obtém o elemento de input

if (input.files && input.files[0]) { // Verifica se um arquivo foi selecionado
const file = input.files[0]; // Pega o primeiro arquivo selecionado
console.log(Arquivo enviado para o vídeo ID ${video.id}:, file);

// Associando o nome do arquivo ao transcript do vídeo
if (video.id) {
video.transcript = file.name; // Atualiza o nome do arquivo no campo de transcrição do vídeo
}

// Criação do FormData para envio ao backend
const formData = new FormData();
formData.append('file', file); // Adiciona o arquivo no FormData
if (video.id) formData.append('videoId', video.id.toString()); // Adiciona o ID do vídeo ao FormData

// Chamada de API para enviar o arquivo ao backend (comentado para quando estiver implementado)
// this.videoService.uploadTranscript(formData).subscribe({
// next: (response) => console.log('Upload realizado com sucesso', response),
// error: (error) => console.error('Erro no upload', error),
// });
}
}

logoutUser() {
this.confirmationService.confirm({
message: 'Tem certeza que deseja sair?',
Expand Down Expand Up @@ -169,4 +194,4 @@ export class VideoViewsComponent {
dummyKeyDown(event: KeyboardEvent): void {
// Não faz nada
}
}
}

0 comments on commit 3f1ee42

Please sign in to comment.