{"version":3,"mappings":"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","names":["i0","ctx_r2","oxw","PopoverListarInscricoesComponent","constructor","popoverController","ngOnInit","find","idInscricao","this","dismiss","selectors","ctx_r3","ctx_r5","HeaderGcComponent","storageService","functionsService","inscricaoService","dataSharingService","usuarioLogado","getUsuarioLogado","location","pathname","indexOf","showNotificacaoNovosDocsEnviados","getMostRecentUpdated","source","interval","subscription","subscribe","val","unsubscribe","tipoDocumentos","findByUltimosDocsInscricaoEnviados","next","resp","inscricoesRecentementeAtualizadas","error","console","log","findByUltimosDocsMatriculaEnviados","ngOnDestroy","hideSubmenu","event","idSubmenu","element","document","getElementById","style","visibility","showSubmenu","showingSubmenu","showHideSubmenu","goToPath","path","logoff","setUsuarioLogado","openPopoverListarInscricoes","popover","create","component","componentProps","inscricoes","translucent","showBackdrop","backdropDismiss","trigger","present","onDidDismiss","then","data","idInscricaoSelecionada","i","length","id","dataUltimaVisualizacaoDocumentacaoInscricao","Date","dataUltimaVisualizacaoDocumentacaoMatricula","update","ctx_r7","ctx_r14","ctx_r17","routes","formacaoService","habilitacaoService","permissaoAcessoService","FormacaoDTO","ionViewWillEnter","checkAccessControl","findAll","habilitacoes","canCreateAndEdit","window","href","canCreateEdit","canRemove","formacoes","sort","a","b","nome","dismissLoading","save","formacao","presentLoading","showErrorAlert","insert","body","push","showAlert","edit","nomeFormacao","setFocus","remove","index","delete","quit","GcCadastrarFormacaoPage","GcCadastrarFormacaoPageRoutingModule","RouterModule","GcCadastrarFormacaoPageModule","CommonModule","FormsModule","IonicModule","ComponentsModule","DataSharingService","BehaviorSubject","factory"],"sources":["./src/app/components/header-gc/components/popover-listar-inscricoes/popover-listar-inscricoes.component.html","./src/app/components/header-gc/components/popover-listar-inscricoes/popover-listar-inscricoes.component.ts","./src/app/components/header-gc/header-gc.component.html","./src/app/components/header-gc/header-gc.component.ts","./src/app/models/curso/formacaoDTO.ts","./src/app/pages/modulo-gc/curso/gc-cadastrar-formacao/gc-cadastrar-formacao.page.html","./src/app/pages/modulo-gc/curso/gc-cadastrar-formacao/gc-cadastrar-formacao-routing.module.ts","./src/app/pages/modulo-gc/curso/gc-cadastrar-formacao/gc-cadastrar-formacao.page.ts","./src/app/pages/modulo-gc/curso/gc-cadastrar-formacao/gc-cadastrar-formacao.module.ts","./src/app/services/common/data-sharing.service.ts"],"sourcesContent":["
\n\n
\n \n {{inscricao.candidato.nome}} {{inscricao.candidato.sobrenome}}, inscrição {{inscricao.id}}, enviou nova documentação.\n \n
\n\n
","import { PopoverController } from '@ionic/angular';\nimport { InscricaoDTO } from '../../../../models/vestibular/inscricaoDTO';\nimport { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-popover-listar-inscricoes',\n templateUrl: './popover-listar-inscricoes.component.html',\n styleUrls: ['./popover-listar-inscricoes.component.scss'],\n})\nexport class PopoverListarInscricoesComponent implements OnInit {\n\n constructor( private popoverController: PopoverController ) { }\n\n inscricoes: InscricaoDTO[];\n\n ngOnInit() {}\n\n\n find(idInscricao: number){\n\n //fecha o popover e indica o id da inscrição para disparar o método find do componente header-gc\n this.popoverController.dismiss(idInscricao);\n }\n}\n"," \n\n \n \"logo\"\n\n \n\n 0\">\n {{inscricoesRecentementeAtualizadas.length}}\n \n \n\n \n \n \n \n \n \n \n \n \n\n\n \n \n\n \n\n \n\n\n\n\n\n","import { DataSharingService } from './../../services/common/data-sharing.service';\nimport { PopoverListarInscricoesComponent } from './components/popover-listar-inscricoes/popover-listar-inscricoes.component';\nimport { PopoverController } from '@ionic/angular';\nimport { InscricaoDTO } from '../../models/vestibular/inscricaoDTO';\nimport { InscricaoService } from './../../services/inscricao/inscricao.service';\nimport { UsuarioDTO } from '../../models/controle-acesso/usuarioDTO';\nimport { StorageService } from './../../services/storage/storage.service';\nimport { FunctionsService } from './../../services/common/functions.service';\nimport { Component, OnInit, ViewChild } from '@angular/core';\nimport { interval, Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-header-gc',\n templateUrl: './header-gc.component.html',\n styleUrls: ['./header-gc.component.scss'],\n})\nexport class HeaderGcComponent implements OnInit {\n\n \n\n showingSubmenu = '';\n menuGCItems = [];\n usuarioLogado: UsuarioDTO = null;\n\n showNotificacaoNovosDocsEnviados: boolean = false;\n inscricoesRecentementeAtualizadas: InscricaoDTO[] = [];\n\n subscription: Subscription;\n\n constructor( private storageService : StorageService\n , private functionsService: FunctionsService\n , private inscricaoService: InscricaoService\n , private popoverController: PopoverController\n , private dataSharingService: DataSharingService ) { \n\n this.usuarioLogado = this.storageService.getUsuarioLogado(); \n \n if(location.pathname.indexOf('modulo-gc/gc-analisar-documentacao-inscricao')>-1){\n this.showNotificacaoNovosDocsEnviados = true;\n \n this.getMostRecentUpdated('inscrição');\n\n //repetir a consulta de inscrições recentemente atualizadas a cada 60 segundos\n const source = interval(60000);\n this.subscription = source.subscribe(val => this.getMostRecentUpdated('inscrição'));\n\n }else if(location.pathname.indexOf('modulo-gc/gc-analisar-documentacao-matricula')>-1){\n \n this.showNotificacaoNovosDocsEnviados = true;\n this.getMostRecentUpdated('matrícula');\n\n //repetir a consulta de inscrições recentemente atualizadas a cada 60 segundos\n const source = interval(60000);\n this.subscription = source.subscribe(val => this.getMostRecentUpdated('matrícula'));\n }else {\n // Cancelar a execução de this.getMostRecentUpdated\n this.showNotificacaoNovosDocsEnviados = false;\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n }\n\n getMostRecentUpdated(tipoDocumentos: string){\n\n if(tipoDocumentos=='inscrição'){\n this.inscricaoService.findByUltimosDocsInscricaoEnviados().subscribe({\n next:(resp)=>{\n this.inscricoesRecentementeAtualizadas = resp;\n \n },\n error:(error)=>{\n console.log(error);\n }\n });\n \n }else if(tipoDocumentos == 'matrícula'){\n\n this.inscricaoService.findByUltimosDocsMatriculaEnviados().subscribe({\n next:(resp)=>{\n this.inscricoesRecentementeAtualizadas = resp;\n \n },\n error:(error)=>{\n console.log(error);\n }\n });\n\n }\n \n\n }\n\n ngOnInit() {\n \n }\n\n ngOnDestroy() {\n \n //mata a repetição das consultas de atualização da tela\n if(this.subscription){\n this.subscription.unsubscribe();\n }\n \n }\n\n /**\n * método disparado pelo evento mouseout \n */\n hideSubmenu(event, idSubmenu: string) { \n \n let element = document.getElementById(idSubmenu);\n //this.showingSubmenu = idSubmenu; \n if(element){\n element.style.visibility = 'hidden';\n }\n \n \n }\n\n /**\n * método disparado pelo evento mouseenter \n */\n showSubmenu(idSubmenu: string){\n \n this.showingSubmenu = idSubmenu;\n\n let element = document.getElementById(idSubmenu);\n \n if(element){\n element.style.visibility = 'visible';\n }\n \n\n }\n\n\n /*\n método usado para tablets, disparado através do click no menu, pois em tablet não tem cursor do mouse\n */\n showHideSubmenu(idSubmenu: string){\n \n this.showingSubmenu = idSubmenu;\n\n let element = document.getElementById(idSubmenu);\n \n if(element){\n\n if(element.style.visibility === 'visible'){\n element.style.visibility = 'hidden';\n }else{\n element.style.visibility = 'visible';\n }\n }\n \n }\n\n\n \n goToPath(path:string){\n\n if(path){\n this.functionsService.goToPath(path);\n }\n }\n \n\n logoff(){\n this.storageService.setUsuarioLogado(null);\n this.functionsService.goToPath('modulo-gc/gc-login');\n\n }\n\n\n async openPopoverListarInscricoes(event) {\n \n let tipoDocumentos = 'inscrição';\n if(location.pathname.indexOf('modulo-gc/gc-analisar-documentacao-matricula')>-1){\n tipoDocumentos = 'matrícula'\n }\n const popover = await this.popoverController.create({\n component: PopoverListarInscricoesComponent,\n componentProps: { 'inscricoes': this.inscricoesRecentementeAtualizadas\n , 'tipoDocumentos': tipoDocumentos},\n translucent: false,\n showBackdrop: true,\n backdropDismiss: true,\n event: event,\n trigger: event,\n //cssClass: 'popover-listar-inscricoes', //definido no global.css \n \n });\n\n await popover.present();\n \n //quando fechar o popover\n await popover.onDidDismiss().then((data)=>{\n\n //se tiver selecionado uma inscrição o campo data.data estará preenchido do contrário será null\n if(data && data.data){\n\n //informa ao serviço de notificação/compartilhamento de dados entre componentes o id da inscrição selecionada\n //este id será utilizado para preencher a tela de análise de docs com a inscrição selecionada\n this.dataSharingService.idInscricaoSelecionada.next( data.data ); \n\n //atualiza a inscrição selecionada para ela sair da lista\n for(var i=0; i{\n\n //atualizar o contador no ícone de notificações\n this.getMostRecentUpdated(tipoDocumentos);\n\n },\n error:(error)=>{\n console.log(error);\n }\n });\n\n }\n }\n \n }\n \n });\n \n }\n}\n","import { ArquivoDTO } from '../arquivoDTO';\r\nimport { HabilitacaoDTO } from './habilitacaoDTO';\r\n\r\nexport class FormacaoDTO{\r\n\r\n id!: number;\r\n nome!: string;\r\n galeriaBanners!: ArquivoDTO[];\r\n}","\n\n\n\n \n CADASTRO DE FORMAÇÕES\n \n\n \n \n \n \n \n \n\n Nome da Formação\n \n\n \n \n \n \n\n \n \n \n \n \n Salvar Formação  \n \n \n \n \n \n \n \n \n \n Lista de Formações \n \n\n \n \n \n Nenhuma Formação\n \n \n \n\n 0\" class=\"ion-no-margin ion-no-padding\"> \n \n \n \n \n Nome\n \n \n \n \n \n\n \n \n \n \n {{formacao.nome}}\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n\n\n \n \n \n\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\n\nimport { GcCadastrarFormacaoPage } from './gc-cadastrar-formacao.page';\n\nconst routes: Routes = [\n {\n path: '',\n component: GcCadastrarFormacaoPage\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class GcCadastrarFormacaoPageRoutingModule {}\n","import { PermissaoAcessoService } from '../../../../services/permissao-acesso/permissao-acesso.service';\nimport { FormacaoService } from '../../../../services/formacao/formacao.service';\nimport { HabilitacaoService } from '../../../../services/habilitacao/habilitacao.service';\nimport { FunctionsService } from '../../../../services/common/functions.service';\nimport { HabilitacaoDTO } from '../../../../models/curso/habilitacaoDTO';\nimport { FormacaoDTO } from '../../../../models/curso/formacaoDTO';\nimport { IonInput } from '@ionic/angular';\nimport { Component, OnInit, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'app-gc-cadastrar-formacao',\n templateUrl: './gc-cadastrar-formacao.page.html',\n styleUrls: ['./gc-cadastrar-formacao.page.scss'],\n})\n\nexport class GcCadastrarFormacaoPage implements OnInit {\n\n @ViewChild('nomeFormacao') nomeFormacao: IonInput;\n\n formacao: FormacaoDTO = new FormacaoDTO();\n formacoes: FormacaoDTO[] = [];\n habilitacoes: HabilitacaoDTO[] = [];\n\n canCreateEdit: boolean;\n canRemove: boolean; \n\n constructor( private functionsService: FunctionsService\n , private formacaoService: FormacaoService\n , private habilitacaoService: HabilitacaoService\n , private permissaoAcessoService: PermissaoAcessoService ) {\n\n \n \n }\n\n ngOnInit() {\n }\n\n\n ionViewWillEnter(){\n\n //verificar as permissões de acesso\n this.checkAccessControl();\n\n this.habilitacaoService.findAll().subscribe(\n resp=>{\n this.habilitacoes = resp;\n },\n error=>{\n console.log(error);\n }\n );\n\n this.findAll();\n }\n\n checkAccessControl(){\n\n this.permissaoAcessoService.canCreateAndEdit(window.location.href).subscribe({\n next:(resp)=>{\n this.canCreateEdit = resp;\n },\n error:(error)=>{\n this.canCreateEdit = false;\n }\n });\n\n this.permissaoAcessoService.canRemove(window.location.href).subscribe({\n next:(resp)=>{\n this.canRemove = resp;\n },\n error:(error)=>{\n this.canRemove = false;\n }\n });\n\n\n }\n \n\n findAll(){\n\n this.formacaoService.findAll().subscribe(\n resp=>{\n this.formacoes = resp;\n\n this.formacoes = this.formacoes.sort(function (a, b) {\n if (a.nome > b.nome) {\n return 1;\n }\n if (a.nome < b.nome) {\n return -1;\n } \n });\n \n this.functionsService.dismissLoading();\n },\n error=>{\n \n console.log(error);\n this.functionsService.dismissLoading();\n \n }\n ); \n\n }\n\n \n\n\n save(){\n \n if(!this.formacao.nome){\n this.functionsService.showAlert('Atenção!','O nome da formação é obrigatório', ['Ok']);\n return;\n \n }\n\n this.functionsService.presentLoading();\n\n if(!this.formacao.id){\n \n this.formacaoService.insert(this.formacao).subscribe(\n resp=>{\n \n this.formacao = resp.body;\n this.formacoes.push(this.formacao);\n \n this.formacao = new FormacaoDTO();\n \n this.functionsService.dismissLoading();\n },\n error=>{\n \n this.functionsService.dismissLoading();\n\n this.functionsService.showErrorAlert( 'Atenção!'\n , 'Não foi possível salvar a formação.'\n , error\n , ['Ok']);\n }\n );\n\n }else{\n\n this.formacaoService.update(this.formacao).subscribe(\n resp=>{\n \n this.formacao.id = null;\n this.formacao.nome = ''; \n \n this.functionsService.dismissLoading();\n\n this.findAll();\n \n },\n error=>{\n \n this.functionsService.dismissLoading();\n\n this.functionsService.showErrorAlert( 'Atenção!'\n , 'Não foi possível salvar a formação.'\n , error\n , ['Ok']);\n }\n );\n\n }\n \n\n }\n\n edit(formacao: FormacaoDTO){\n this.formacao = formacao; \n this.nomeFormacao.setFocus(); \n }\n\n remove(index: number){\n \n this.functionsService.presentLoading();\n\n let formacao = this.formacoes[index];\n\n this.formacaoService.delete(formacao.id).subscribe(\n resp=>{\n\n this.functionsService.dismissLoading();\n\n //atualiza a lista de popups \n this.findAll();\n },\n error=>{\n console.log(error);\n this.functionsService.dismissLoading();\n\n this.functionsService.showErrorAlert( 'Atenção!'\n , 'Não foi possível excluir a formação ' + this.formacao.nome + '.'\n , error\n , ['Ok']);\n }\n );\n }\n\n\n quit(){\n this.functionsService.goToPath('modulo-gc/gc-funcoes');\n }\n\n\n}\n","import { ComponentsModule } from '../../../../components/components.module';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { IonicModule } from '@ionic/angular';\n\nimport { GcCadastrarFormacaoPageRoutingModule } from './gc-cadastrar-formacao-routing.module';\n\nimport { GcCadastrarFormacaoPage } from './gc-cadastrar-formacao.page';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n IonicModule,\n GcCadastrarFormacaoPageRoutingModule,\n ComponentsModule\n ],\n declarations: [GcCadastrarFormacaoPage]\n})\nexport class GcCadastrarFormacaoPageModule {}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataSharingService {\n\n //serviço usado para emitir a mensagem para outros componentes que precisem saber quando o usuário está logado ou não\n public isUserLoggedIn: BehaviorSubject = new BehaviorSubject(false);\n \n //serviço usado para emitir a mensagem do header para a página gc-analisar-documentacao\n public idInscricaoSelecionada: BehaviorSubject = new BehaviorSubject(0);\n \n \n constructor() { }\n\n}\n"],"sourceRoot":"webpack:///","file":"3370.06950a8b923404d0.js"}