{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.routes.ts","webpack:///./src/app/ciot/ciot.component.html","webpack:///./src/app/ciot/ciot.component.ts","webpack:///./src/app/ciot/declaracao/consignatario/consignatario.component.html","webpack:///./src/app/ciot/declaracao/consignatario/consignatario.component.ts","webpack:///./src/app/ciot/declaracao/consulta-ciot.component.html","webpack:///./src/app/ciot/declaracao/consulta-ciot.component.ts","webpack:///./src/app/ciot/declaracao/contratante/contratante.component.html","webpack:///./src/app/ciot/declaracao/contratante/contratante.component.ts","webpack:///./src/app/ciot/declaracao/destinatario/destinatario.component.html","webpack:///./src/app/ciot/declaracao/destinatario/destinatario.component.ts","webpack:///./src/app/ciot/declaracao/motorista/motorista.component.html","webpack:///./src/app/ciot/declaracao/motorista/motorista.component.ts","webpack:///./src/app/ciot/declaracao/pagamento/pagamento.component.html","webpack:///./src/app/ciot/declaracao/pagamento/pagamento.component.ts","webpack:///./src/app/ciot/declaracao/remetente/remetente.component.html","webpack:///./src/app/ciot/declaracao/remetente/remetente.component.ts","webpack:///./src/app/ciot/declaracao/salvar-declaracao/salvar-declaracao.component.html","webpack:///./src/app/ciot/declaracao/salvar-declaracao/salvar-declaracao.component.ts","webpack:///./src/app/ciot/declaracao/transportador-veiculos/transportador-veiculos.component.html","webpack:///./src/app/ciot/declaracao/transportador-veiculos/transportador-veiculos.component.ts","webpack:///./src/app/ciot/declaracao/viagem/viagem.component.html","webpack:///./src/app/ciot/declaracao/viagem/viagem.component.ts","webpack:///./src/app/ciot/encerramento/encerramento.component.html","webpack:///./src/app/ciot/encerramento/encerramento.component.ts","webpack:///./src/app/ciot/models/banco.ts","webpack:///./src/app/ciot/models/cancelar-operacao-transporte.ts","webpack:///./src/app/ciot/models/ciot.ts","webpack:///./src/app/ciot/models/consulta-ciot/consultar-situacao-ciot-dto.ts","webpack:///./src/app/ciot/models/consulta-ciot/consultar-situacao-ciot-request.ts","webpack:///./src/app/ciot/models/consulta-situacao-transportador/consulta-situacao-transportador.ts","webpack:///./src/app/ciot/models/declarar-operacao-transporte.ts","webpack:///./src/app/ciot/models/encerramento/encerrar-operacao-transporte.ts","webpack:///./src/app/ciot/models/encerramento/obj-encerrar.ts","webpack:///./src/app/ciot/models/estado.ts","webpack:///./src/app/ciot/models/objImprimir.ts","webpack:///./src/app/ciot/models/retificacao/retificar-operacao-transporte.ts","webpack:///./src/app/ciot/models/veiculo.ts","webpack:///./src/app/ciot/models/viagem.ts","webpack:///./src/app/ciot/retificacao/retificacao.component.html","webpack:///./src/app/ciot/retificacao/retificacao.component.ts","webpack:///./src/app/ciot/services/autocomplete-codIBGE.service.ts","webpack:///./src/app/ciot/services/autocomplete-natureza.service.ts","webpack:///./src/app/ciot/services/autocomplete.service.ts","webpack:///./src/app/ciot/services/ciot-tabs.service.ts","webpack:///./src/app/ciot/services/ciot.service.ts","webpack:///./src/app/ciot/services/recaptcha.service.ts","webpack:///./src/app/ciot/util/enums.ts","webpack:///./src/app/commom/generic.form.validator.ts","webpack:///./src/app/components/autocomplete-bancos/autocomplete-bancos.component.html","webpack:///./src/app/components/autocomplete-bancos/autocomplete-bancos.component.ts","webpack:///./src/app/components/autocomplete-bancos/objBancos.ts","webpack:///./src/app/components/autocomplete-cidade/autocomplete-cidade.component.html","webpack:///./src/app/components/autocomplete-cidade/autocomplete-cidade.component.ts","webpack:///./src/app/components/autocomplete-codIBGE/autocomplete-codIBGE.component.html","webpack:///./src/app/components/autocomplete-codIBGE/autocomplete-codIBGE.component.ts","webpack:///./src/app/components/autocomplete-estado/autocomplete-estado.component.html","webpack:///./src/app/components/autocomplete-estado/autocomplete-estado.component.ts","webpack:///./src/app/components/autocomplete-natureza-carga/autocomplete-natureza-carga.component.html","webpack:///./src/app/components/autocomplete-natureza-carga/autocomplete-natureza-carga.component.ts","webpack:///./src/app/components/autocomplete-tipoCarga/autocomplete-tipoCarga.component.html","webpack:///./src/app/components/autocomplete-tipoCarga/autocomplete-tipoCarga.component.ts","webpack:///./src/app/components/cep-input/cep-input.ts","webpack:///./src/app/components/cnpj-input/cnpj-input.ts","webpack:///./src/app/components/cpf-input/cpf-input.ts","webpack:///./src/app/components/drop-down/dropdown-basic.html","webpack:///./src/app/components/drop-down/dropdown-basic.ts","webpack:///./src/app/components/estados-select/estados-select.ts","webpack:///./src/app/components/ng-select-cidade/ng-select-cidade.html","webpack:///./src/app/components/ng-select-cidade/ng-select-cidade.ts","webpack:///./src/app/components/telefone-input/telefone-input.ts","webpack:///./src/app/components/toastr/toastr.component.ts","webpack:///./src/app/custom-module/ToastCustomOptions.ts","webpack:///./src/app/directives/SpecialCharacterNotAllowed.directive.ts","webpack:///./src/app/directives/onlynumber.directive.ts","webpack:///./src/app/directives/placaAutomovel.directive.ts","webpack:///./src/app/directives/rntrcMask.directive.ts","webpack:///./src/app/home/cancelar/cancelar.component.html","webpack:///./src/app/home/cancelar/cancelar.component.ts","webpack:///./src/app/home/consultar/consultar.component.html","webpack:///./src/app/home/consultar/consultar.component.ts","webpack:///./src/app/home/declaracao/declaracao.component.html","webpack:///./src/app/home/declaracao/declaracao.component.ts","webpack:///./src/app/home/encerrar/encerrar.component.html","webpack:///./src/app/home/encerrar/encerrar.component.ts","webpack:///./src/app/home/home.component.html","webpack:///./src/app/home/home.component.ts","webpack:///./src/app/home/retificar/retificar.component.html","webpack:///./src/app/home/retificar/retificar.component.ts","webpack:///./src/app/navigation/footer/footer.component.html","webpack:///./src/app/navigation/footer/footer.component.ts","webpack:///./src/app/navigation/menu-superior/menu-superior.component.html","webpack:///./src/app/navigation/menu-superior/menu-superior.component.ts","webpack:///./src/app/pipes/placa-automovel-pipe.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error('Cannot find module \"' + req + '\".');\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","import { Component, ViewContainerRef } from \"@angular/core\";\r\nimport { ToastsManager } from \"ng2-toastr\";\r\n\r\n@Component({\r\n selector: \"app-root\",\r\n template: `\r\n `\r\n})\r\nexport class AppComponent {\r\n title = \"CIOT\";\r\n\r\n constructor(\r\n private vRef: ViewContainerRef,\r\n private toastr: ToastsManager) {\r\n this.toastr.setRootViewContainerRef(vRef);\r\n }\r\n}\r\n\r\n","import { BrowserModule } from \"@angular/platform-browser\";\r\nimport { LOCALE_ID, NgModule } from \"@angular/core\";\r\nimport { RouterModule } from \"@angular/router\";\r\nimport { HttpClientModule } from \"@angular/common/http\";\r\nimport { ReactiveFormsModule } from \"@angular/forms\";\r\nimport { FormsModule } from \"@angular/forms\";\r\nimport { registerLocaleData } from '@angular/common';\r\nimport localePt from '@angular/common/locales/pt';\r\n\r\n// 3s\r\nimport { CollapseModule } from \"ngx-bootstrap/collapse\";\r\nimport { TabsModule } from \"ngx-bootstrap/tabs\";\r\nimport { BsDatepickerModule } from \"ngx-bootstrap/datepicker\";\r\nimport { BsDropdownModule } from \"ngx-bootstrap/dropdown\";\r\nimport { SelectModule } from \"ng2-select\";\r\nimport { NgAutoCompleteModule } from \"ng-auto-complete\";\r\nimport { ToastModule, ToastOptions } from 'ng2-toastr/ng2-toastr';\r\nimport { ToastCustomOptions } from \"./custom-module/ToastCustomOptions\";\r\nimport { NgxBrModule } from \"@nbfontana/ngx-br\";\r\nimport { NgProgressModule } from '@ngx-progressbar/core';\r\nimport { NgProgressHttpModule } from '@ngx-progressbar/http';\r\nimport { TypeaheadModule } from 'ngx-bootstrap/typeahead';\r\nimport { defineLocale } from 'ngx-bootstrap/chronos';\r\nimport { ptBrLocale } from 'ngx-bootstrap/locale';\r\ndefineLocale('ptBr', ptBrLocale);\r\n\r\n// Captcha\r\nimport { RecaptchaModule } from 'ng-recaptcha';\r\n\r\n// components\r\nimport { AppComponent } from \"./app.component\";\r\nimport { HomeComponent } from \"./home/home.component\";\r\nimport { CiotComponent } from \"./ciot/ciot.component\";\r\n\r\nimport { MenuSuperiorComponent } from \"./navigation/menu-superior/menu-superior.component\";\r\nimport { FooterComponent } from \"./navigation/footer/footer.component\";\r\n\r\nimport { DeclaracaoComponent } from \"./home/declaracao/declaracao.component\";\r\nimport { RetificarComponent } from \"./home/retificar/retificar.component\";\r\nimport { CancelarComponent } from \"./home/cancelar/cancelar.component\";\r\nimport { EncerrarComponent } from \"./home/encerrar/encerrar.component\";\r\nimport { ConsultarComponent } from \"./home/consultar/consultar.component\";\r\n\r\nimport { ViagemComponent } from \"./ciot/declaracao/viagem/viagem.component\";\r\nimport { PagamentoComponent } from \"./ciot/declaracao/pagamento/pagamento.component\";\r\nimport { TransportadorVeiculosComponent } from \"./ciot/declaracao/transportador-veiculos/transportador-veiculos.component\";\r\nimport { MotoristaComponent } from \"./ciot/declaracao/motorista/motorista.component\";\r\nimport { ContratanteComponent } from \"./ciot/declaracao/contratante/contratante.component\";\r\nimport { RemetenteComponent } from \"./ciot/declaracao/remetente/remetente.component\";\r\nimport { DestinatarioComponent } from \"./ciot/declaracao/destinatario/destinatario.component\";\r\nimport { ConsignatarioComponent } from \"./ciot/declaracao/consignatario/consignatario.component\";\r\nimport { ConsultaCiotComponent } from \"./ciot/declaracao/consulta-ciot.component\";\r\nimport { RetificacaoComponent } from \"./ciot/retificacao/retificacao.component\";\r\nimport { EncerramentoComponent } from './ciot/encerramento/encerramento.component';\r\nimport { SalvarDeclaracaoComponent } from './ciot/declaracao/salvar-declaracao/salvar-declaracao.component';\r\n\r\n// componentes de tela\r\n\r\nimport { DemoDropdownBasicComponent } from \"./components/drop-down/dropdown-basic\";\r\nimport { NgSelectCidade } from \"./components/ng-select-cidade/ng-select-cidade\";\r\nimport { CpfInput } from \"./components/cpf-input/cpf-input\";\r\nimport { CnpjInput } from \"./components/cnpj-input/cnpj-input\";\r\nimport { CepInput } from \"./components/cep-input/cep-input\";\r\nimport { EstadosSelect } from \"./components/estados-select/estados-select\";\r\nimport { TelefoneInput } from \"./components/telefone-input/telefone-input\";\r\nimport { AutocompleteCidadeComponent } from './components/autocomplete-cidade/autocomplete-cidade.component';\r\nimport { AutocompleteEstadoComponent } from \"./components/autocomplete-estado/autocomplete-estado.component\";\r\nimport { AutoCompleteNaturezaCargaComponent } from './components/autocomplete-natureza-carga/autocomplete-natureza-carga.component';\r\nimport { AutocompleteBancosComponent } from './components/autocomplete-bancos/autocomplete-bancos.component';\r\nimport { AutocompleteTipoCargaComponent } from './components/autocomplete-tipoCarga/autocomplete-tipoCarga.component';\r\nimport { AutocompleteCodigoIBGEComponent } from './components/autocomplete-codIBGE/autocomplete-codIBGE.component';\r\nimport { ToastrComponent } from \"./components/toastr/toastr.component\";\r\n\r\n// import the Animations module\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\n\r\n// import the ButtonsModule\r\nimport { ButtonsModule } from \"@progress/kendo-angular-buttons\";\r\n\r\n// services\r\nimport { CiotService } from \"./ciot/services/ciot.service\";\r\nimport { AutoCompleteService } from \"./ciot/services/autocomplete.service\";\r\nimport { AutoCompleteNaturezaService } from \"./ciot/services/autocomplete-natureza.service\";\r\nimport { CiotTabsService } from \"./ciot/services/ciot-tabs.service\";\r\nimport { RecaptchaService } from \"./ciot/services/recaptcha.service\";\r\nimport { OnlyNumber } from './directives/onlynumber.directive';\r\nimport { RntrcMask } from './directives/rntrcMask.directive';\r\nimport { SpecialCharacterNotAllowed } from './directives/SpecialCharacterNotAllowed.directive';\r\nimport { PlacaAutomovel } from \"./directives/placaAutomovel.directive\";\r\nimport { PlacaAutomovelPipe } from \"./pipes/placa-automovel-pipe\";\r\n\r\n// config\r\nimport { rootRouterConfig } from \"./app.routes\";\r\n\r\n//mask\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { CurrencyMaskModule } from \"ng2-currency-mask\";\r\n\r\nregisterLocaleData(localePt);\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HomeComponent,\r\n CiotComponent,\r\n MenuSuperiorComponent,\r\n FooterComponent,\r\n DeclaracaoComponent,\r\n RetificarComponent,\r\n CancelarComponent,\r\n EncerrarComponent,\r\n ConsultarComponent,\r\n ViagemComponent,\r\n PagamentoComponent,\r\n DemoDropdownBasicComponent,\r\n NgSelectCidade,\r\n TransportadorVeiculosComponent,\r\n CpfInput,\r\n CnpjInput,\r\n CepInput,\r\n EstadosSelect,\r\n TelefoneInput,\r\n MotoristaComponent,\r\n ContratanteComponent,\r\n RemetenteComponent,\r\n DestinatarioComponent,\r\n ConsignatarioComponent,\r\n ConsultaCiotComponent,\r\n RetificacaoComponent,\r\n EncerramentoComponent,\r\n AutocompleteCidadeComponent,\r\n AutocompleteEstadoComponent,\r\n AutoCompleteNaturezaCargaComponent,\r\n AutocompleteBancosComponent,\r\n AutocompleteTipoCargaComponent,\r\n AutocompleteCodigoIBGEComponent,\r\n OnlyNumber,\r\n RntrcMask,\r\n SpecialCharacterNotAllowed,\r\n PlacaAutomovel,\r\n SalvarDeclaracaoComponent,\r\n ToastrComponent,\r\n PlacaAutomovelPipe\r\n ],\r\n imports: [\r\n CurrencyMaskModule,\r\n NgxMaskModule.forRoot(),\r\n BrowserModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n CollapseModule.forRoot(),\r\n TabsModule.forRoot(),\r\n NgxBrModule.forRoot(),\r\n BrowserAnimationsModule,\r\n ButtonsModule,\r\n BsDatepickerModule.forRoot(),\r\n BsDropdownModule.forRoot(),\r\n SelectModule,\r\n FormsModule,\r\n NgAutoCompleteModule,\r\n ToastModule.forRoot(),\r\n NgProgressModule.forRoot({\r\n color: 'red',\r\n thick: true\r\n }),\r\n NgProgressHttpModule,\r\n TypeaheadModule.forRoot(),\r\n RecaptchaModule.forRoot(),\r\n RouterModule.forRoot(rootRouterConfig, { useHash: false })\r\n ],\r\n providers: [\r\n CiotService,\r\n AutoCompleteService,\r\n AutoCompleteNaturezaService,\r\n CiotTabsService,\r\n RecaptchaService,\r\n ContratanteComponent,\r\n RemetenteComponent,\r\n { provide: ToastOptions, useClass: ToastCustomOptions },\r\n { provide: LOCALE_ID, useValue: \"pt\" }\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import {Routes} from \"@angular/router\";\r\nimport {HomeComponent} from \"./home/home.component\";\r\nimport {CiotComponent} from \"./ciot/ciot.component\";\r\nimport {ConsultaCiotComponent} from \"./ciot/declaracao/consulta-ciot.component\";\r\nimport {RetificacaoComponent} from \"./ciot/retificacao/retificacao.component\";\r\nimport {EncerramentoComponent} from \"./ciot/encerramento/encerramento.component\";\r\nimport {ContratanteComponent} from \"./ciot/declaracao/contratante/contratante.component\";\r\nimport {RemetenteComponent} from \"./ciot/declaracao/remetente/remetente.component\";\r\n\r\nexport const rootRouterConfig: Routes = [\r\n { path: \"\", component: HomeComponent },\r\n { path: \"home\", component: HomeComponent },\r\n { path: \"ciot/:NomeRazaoSocialTransportador/:CpfCnpjTransportador/:RNTRCTransportador/:CpfCnpjInteressado\", component: CiotComponent},\r\n { path: \"consulta-ciot/:ciot/:senha/:cpfMotorista/:cpfContratante/:cepOrigem/:cepDestino/:fromDeclaracao\", component: ConsultaCiotComponent },\r\n { path: \"encerramento/:ciot/:senha\", component: EncerramentoComponent },\r\n { path: \"retificacao/:ciot/:senha\", component: RetificacaoComponent },\r\n { path: \"declaracao/contratante/:ciot/\", component: ContratanteComponent },\r\n { path: \"declaracao/remetente/:ciot/\", component: RemetenteComponent }\r\n];\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Declarar operação de transporte\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import {Component, OnInit, ViewChild} from '@angular/core';\r\n\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {DeclararOperacaoTransporte} from './models/declarar-operacao-transporte';\r\nimport {CiotService} from './services/ciot.service'; \r\nimport {ToastsManager} from 'ng2-toastr';\r\nimport {CiotTabsService} from './services/ciot-tabs.service';\r\nimport {Mensagens} from './util/enums';\r\nimport {TabsetComponent} from 'ngx-bootstrap/tabs';\r\nimport {Subscription} from \"rxjs\";\r\n\r\n@Component({\r\n selector: 'app-ciot',\r\n templateUrl: './ciot.component.html'\r\n})\r\nexport class CiotComponent implements OnInit {\r\n\r\n @ViewChild('staticTabs') staticTabs: TabsetComponent;\r\n\r\n static instance : CiotComponent;\r\n // public get staticTabs(): TabsetComponent{\r\n // return CiotComponent.staticTabs;\r\n // }\r\n public errors: any[] = [];\r\n public declaracao: DeclararOperacaoTransporte;\r\n public sub: Subscription;\r\n\r\n hide: string = \"display:none\"\r\n public CpfCnpjTransportador: string;\r\n public RNTRCTransportador: string;\r\n public NomeRazaoSocialTransportador: string;\r\n public CpfCnpjInteressado: string;\r\n public IsDisabled: boolean = true;\r\n\r\n constructor(private ciotService: CiotService,\r\n private ciotTabsService: CiotTabsService,\r\n private toastr: ToastsManager,\r\n private router: Router,\r\n private route: ActivatedRoute) {\r\n }\r\n\r\n ngOnInit(): void {\r\n CiotComponent.instance= this;\r\n\r\n this.ciotTabsService.isVisible().subscribe(show => {\r\n if (show) {\r\n CiotComponent.instance.enableTabs();\r\n this.IsDisabled = false;\r\n } else {\r\n CiotComponent.instance.disableTabs();\r\n this.IsDisabled = true;\r\n }\r\n })\r\n this.sub = this.route.params.subscribe(\r\n params => {\r\n this.CpfCnpjTransportador = params['CpfCnpjTransportador'];\r\n this.RNTRCTransportador = params['RNTRCTransportador'];\r\n this.NomeRazaoSocialTransportador = params['NomeRazaoSocialTransportador'];\r\n this.CpfCnpjInteressado = params['CpfCnpjInteressado'];\r\n });\r\n }\r\n\r\n avancar(evento) {\r\n this.ciotService.declararOperacaoTransporte(this.declaracao)\r\n .subscribe(\r\n result => { this.onSaveComplete() },\r\n error => {\r\n this.onError(error);\r\n });\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n this.toastr.error(Mensagens.NAO_FOI_POSSIVEL_DECLARAR_CIOT, Mensagens.OOPS);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.router.navigate(['/']);\r\n this.toastr.success(Mensagens.CIOT_GERADO_SUCESSO, Mensagens.SUCESSO);\r\n }\r\n\r\n public enableTabs() {\r\n this.staticTabs.tabs[2].disabled = false;\r\n this.staticTabs.tabs[3].disabled = false;\r\n this.staticTabs.tabs[4].disabled = false;\r\n }\r\n\r\n public disableTabs() {\r\n this.staticTabs.tabs[2].disabled = true;\r\n this.staticTabs.tabs[3].disabled = true;\r\n this.staticTabs.tabs[4].disabled = true;\r\n }\r\n}","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Dados Pessoais\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Endereço\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Cidade não encontrada
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Contato\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import {AfterViewInit, Component, ElementRef, Input, OnInit, ViewChildren} from '@angular/core';\r\nimport {FormBuilder, FormControlName, FormGroup, Validators} from \"@angular/forms\";\r\nimport {Router} from \"@angular/router\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport {GenericValidator} from \"../../../commom/generic.form.validator\";\r\nimport {Pessoa} from \"../../../ciot/models/pessoa\";\r\nimport {ContratanteComponent} from '../contratante/contratante.component';\r\nimport {RemetenteComponent} from '../remetente/remetente.component';\r\nimport {DestinatarioComponent} from '../destinatario/destinatario.component';\r\nimport {TransportadorVeiculosComponent} from '../transportador-veiculos/transportador-veiculos.component';\r\nimport {Cidade} from \"../../models/cidade\";\r\nimport {RetornoCidades} from \"../../models/cidade\";\r\nimport {AutoCompleteService} from '../../services/autocomplete.service';\r\nimport {CiotService} from '../../services/ciot.service';\r\nimport {TypeaheadMatch} from 'ngx-bootstrap/typeahead';\r\n\r\n@Component({\r\n selector: 'app-consignatario',\r\n templateUrl: './consignatario.component.html',\r\n styles: []\r\n})\r\nexport class ConsignatarioComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public consignatarioForm: FormGroup;\r\n public veiculo: Pessoa;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n public cidade: RetornoCidades;\r\n maskCpfCnpj = '';\r\n\r\n cidadeList: Array = [];\r\n noResult = false;\r\n cidadeCompleterText: string;\r\n\r\n @Input() contratanteComponent: ContratanteComponent;\r\n @Input() remetenteComponent: RemetenteComponent;\r\n @Input() destinatarioComponent: DestinatarioComponent;\r\n @Input() transportadorVeiculosComponent: TransportadorVeiculosComponent;\r\n\r\n constructor(private fb: FormBuilder,\r\n private autoCompleteService: AutoCompleteService,\r\n private ciotService: CiotService,\r\n private router: Router) {\r\n\r\n this.ciotService.consultarCidades(\"\")\r\n .subscribe(\r\n result => {\r\n this.cidadeList = result;\r\n },\r\n error => { }\r\n );\r\n\r\n this.validationMessages = {\r\n cpfCnpj: {\r\n required: 'O CPF/CNPJ é obrigatório.'\r\n },\r\n nome: {\r\n required: 'O nome é obrigatório.'\r\n },\r\n cep: {\r\n required: 'O CEP é obrigatório.',\r\n },\r\n logradouro: {\r\n required: 'O logradouro é obrigatório.',\r\n },\r\n cidade: {\r\n required: 'A cidade é obrigatória.',\r\n },\r\n\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n // AutoComplete métodos\r\n typeaheadNoResults(event: boolean): void {\r\n this.noResult = event;\r\n this.cidade = undefined;\r\n }\r\n\r\n onSelectCidade(event: TypeaheadMatch): void {\r\n this.cidade = event.item;\r\n }\r\n\r\n ngOnInit() {\r\n this.consignatarioForm = this.fb.group({\r\n cpfCnpj: ['', [Validators.required]],\r\n nome: ['', [Validators.required]],\r\n cep: ['', [Validators.required]],\r\n logradouro: ['', [Validators.required]],\r\n cidade: ['', [Validators.required]],\r\n rntrc: ['',],\r\n nomeFantasia: ['',],\r\n numero: ['',],\r\n bairro: ['',],\r\n complemento: ['',],\r\n telefone: ['',],\r\n email: ['',]\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n\r\n this.consignatarioForm.get('cpfCnpj').valueChanges.map(valor=>valor.length).subscribe(length=>{\r\n if(length>11){\r\n this.maskCpfCnpj = '00.000.000/0000-00';\r\n } else {\r\n this.maskCpfCnpj = '000.000.000-000';\r\n }\r\n \r\n if (length < 11 && this.maskCpfCnpj == '00.000.000/0000-00') {\r\n this.maskCpfCnpj = '000.000.000-000';\r\n }\r\n })\r\n }\r\n\r\n\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.consignatarioForm);\r\n });\r\n }\r\n\r\n ngFocus() {\r\n let inputField: HTMLElement = document.querySelectorAll('.dialog input')[0];\r\n inputField && inputField.focus();\r\n }\r\n\r\n // Botão COPIAR\r\n limpar() {\r\n if (this.consignatarioForm != undefined) {\r\n this.consignatarioForm.reset();\r\n this.cidade = undefined;\r\n this.cidadeCompleterText = \"\";\r\n }\r\n }\r\n\r\n copiarContratante() {\r\n if (this.contratanteComponent != undefined && this.contratanteComponent.contratanteForm.dirty) {\r\n this.contratanteComponent.contratanteForm.value.cpfCnpj = this.contratanteComponent.CpfCnpjInteressado;\r\n this.transportadorVeiculosComponent.transportadorForm.value.rntrc = this.transportadorVeiculosComponent.RNTRCTransportador;\r\n this.consignatarioForm.setValue(this.contratanteComponent.contratanteForm.value);\r\n this.cidade = this.contratanteComponent.cidade;\r\n this.cidadeCompleterText = this.contratanteComponent.cidade.NOME;\r\n this.consignatarioForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarRemetente() {\r\n if (this.remetenteComponent != undefined && this.remetenteComponent.remetenteForm.dirty) {\r\n this.consignatarioForm.setValue(this.remetenteComponent.remetenteForm.value);\r\n this.cidade = this.remetenteComponent.cidade;\r\n this.cidadeCompleterText = this.remetenteComponent.cidade.NOME;\r\n this.consignatarioForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarDestinatario() {\r\n if (this.destinatarioComponent != undefined && this.destinatarioComponent.destinatarioForm.dirty) {\r\n this.consignatarioForm.setValue(this.destinatarioComponent.destinatarioForm.value);\r\n this.cidade = this.destinatarioComponent.cidade;\r\n this.cidadeCompleterText = this.destinatarioComponent.cidade.NOME;\r\n this.consignatarioForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarTransportador() {\r\n if (this.transportadorVeiculosComponent != undefined && this.transportadorVeiculosComponent.transportadorForm.dirty) {\r\n this.transportadorVeiculosComponent.transportadorForm.value.cpfCnpj = this.transportadorVeiculosComponent.CpfCnpjTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.cpfCnpj = this.transportadorVeiculosComponent.CpfCnpjTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.nome = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.nomeFantasia = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.consignatarioForm.setValue(this.transportadorVeiculosComponent.transportadorForm.value);\r\n this.cidade = this.transportadorVeiculosComponent.cidade;\r\n this.cidadeCompleterText = this.transportadorVeiculosComponent.cidade.NOME;\r\n this.consignatarioForm.markAsDirty();\r\n }\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.consignatarioForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Consulta de CIOT\\r\\n
\\r\\n Atenção! Guarde a senha e o número do CIOT, eles serão necessários em futuras retificações, consultas ou cancelamentos.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
R$
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
R$
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
R$
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import {AfterViewInit, Component, ElementRef, OnInit, ViewChildren, ViewContainerRef, Input} from '@angular/core';\r\nimport {FormBuilder, FormControlName, FormGroup} from \"@angular/forms\";\r\nimport {ActivatedRoute, Router} from \"@angular/router\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge'; \r\n \r\nimport {GenericValidator} from \"../../commom/generic.form.validator\";\r\nimport {Ciot} from \"../models/ciot\"\r\nimport {CiotService} from \"../services/ciot.service\";\r\nimport {BsDatepickerConfig} from 'ngx-bootstrap/datepicker/bs-datepicker.config';\r\nimport {Subscription} from 'rxjs/Subscription';\r\nimport {DatePipe} from '@angular/common';\r\nimport {ConsultarSituacaoCiotRequest} from '../models/consulta-ciot/consultar-situacao-ciot-request';\r\nimport {ConsultarSituacaoCiotDTO} from '../models/consulta-ciot/consultar-situacao-ciot-dto';\r\nimport {CiotResponse} from '../models/consulta-ciot/consulta-ciot-response';\r\nimport {ToastsManager} from 'ng2-toastr';\r\nimport {Mensagens, TipoViagem} from '../util/enums';\r\nimport {ObjImprimir} from '../models/objImprimir';\r\n\r\n@Component({\r\n selector: 'app-consulta-ciot',\r\n templateUrl: './consulta-ciot.component.html',\r\n styles: []\r\n})\r\nexport class ConsultaCiotComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n ciotId: string;\r\n senha: string;\r\n cpfMotorista: string;\r\n cpfContratante: string;\r\n cpfDestinatario: string;\r\n cepOrigem: string;\r\n cepDestino: string;\r\n\r\n public bsConfig: Partial;\r\n public errors: any[] = [];\r\n public consultaCiotForm: FormGroup;\r\n public ciot: Ciot;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public sub: Subscription;\r\n public value: Date = new Date(2000, 2, 10);\r\n private consultaDTO: ConsultarSituacaoCiotDTO = new ConsultarSituacaoCiotDTO();\r\n public objImprimir: ObjImprimir = new ObjImprimir();\r\n private fromDeclaracao: boolean = false;\r\n\r\n public botaoImprimirHabilitado : boolean = true;\r\n\r\n constructor(private fb: FormBuilder,\r\n private service: CiotService,\r\n vRef: ViewContainerRef,\r\n private toastr: ToastsManager,\r\n private router: Router,\r\n private route: ActivatedRoute) {\r\n\r\n this.validationMessages = {\r\n dtInicioFrete: {\r\n required: 'A data início do frete é obrigatório.'\r\n },\r\n dtTerminoFrete: {\r\n required: 'A data término do frete é obrigatório.'\r\n },\r\n cidadeOrigem: {\r\n required: 'A cidade origem do contratante é obrigatório.'\r\n },\r\n cidadeDestino: {\r\n required: 'A cidade destino é obrigatório.',\r\n },\r\n naturezaCarga: {\r\n required: 'A natureza da carga é obrigatório.',\r\n },\r\n valorFrete: {\r\n required: 'O valor do frete é obrigatório.',\r\n },\r\n quantidadeTarifas: {\r\n required: 'A quantidade de tarifas é obrigatório.',\r\n },\r\n valorTotalTarifas: {\r\n required: 'O valor total das tarifas é obrigatório.',\r\n },\r\n rntrc: {\r\n required: '',\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n\r\n }\r\n\r\n consultarCiot(ciotId, senha) {\r\n let a = new ConsultarSituacaoCiotRequest();\r\n a.ciot = ciotId;\r\n a.senhaAlteracao = senha;\r\n this.service.consultarCiot(a)\r\n .subscribe(\r\n response => this.preencherForm(response),\r\n error => { this.onError(error) }\r\n );\r\n }\r\n\r\n preencherForm(consulta: CiotResponse): void {\r\n this.consultaCiotForm.markAsDirty;\r\n if (consulta.Retorno.Sucesso) {\r\n this.consultaDTO.ciot = consulta.Retorno.CIOT;\r\n this.consultaDTO.contratado = consulta.Retorno.NomeProprietario; \r\n this.consultaDTO.dtInicioFrete = new DatePipe('en-US').transform(String(consulta.Retorno.DataInicioFrete).substr(0,10), \"dd/MM/yyyy\");\r\n this.consultaDTO.dtTerminoFrete = new DatePipe('en-US').transform(String(consulta.Retorno.DataTerminoFrete).substr(0,10), \"dd/MM/yyyy\");\r\n this.consultaDTO.rntrc = consulta.Retorno.RntrcProprietario;\r\n this.consultaDTO.senha = this.senha;\r\n this.consultaDTO.tipoViagem = Number(TipoViagem.Padrao) == consulta.Retorno.TipoViagem ? Mensagens.PADRAO : Mensagens.TAC_AGREGADO;\r\n this.objImprimir.aTipoViagem = consulta.Retorno.TipoViagem;\r\n this.objImprimir.aCpfCnpjProprietario = consulta.Retorno.CpfCnpjProprietario;\r\n this.consultaDTO.totalImposto = consulta.Retorno.TotalImposto;\r\n this.consultaDTO.totalPedagio = consulta.Retorno.TotalPegadio;\r\n this.consultaDTO.valorFrete = consulta.Retorno.ValorFrete;\r\n this.consultaDTO.encerrada = consulta.Retorno.Encerrado ? \"Sim\" : \"Não\";\r\n //this.consultaDTO.aviso = consulta.Retorno.AvisoTransportador;\r\n this.consultaDTO.situacaoDeclaracao = consulta.Retorno.Situacao;\r\n\r\n this.consultaCiotForm.setValue(this.consultaDTO);\r\n } else {\r\n this.router.navigate(['/']).then(() => this.toastr.error(Mensagens.CIOT_NAO_ENCONTRADO_CREDENCIAIS_INFORMADAS, Mensagens.OOPS));\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.consultaCiotForm = this.fb.group({\r\n ciot: ['',],\r\n\r\n rntrc: ['',],\r\n contratado: ['',],\r\n dtInicioFrete: ['',],\r\n\r\n dtTerminoFrete: ['',],\r\n valorFrete: ['',],\r\n totalImposto: ['',],\r\n totalPedagio: ['',],\r\n tipoViagem: ['',],\r\n senha: ['',],\r\n situacaoDeclaracao: ['',],\r\n encerrada: ['',], \r\n\r\n //aviso: ['',],\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n this.ciot = new Ciot();\r\n\r\n this.sub = this.route.params.subscribe(\r\n params => {\r\n this.ciotId = params['ciot'];\r\n this.senha = params['senha'];\r\n this.cpfMotorista = params['cpfMotorista'];\r\n this.cpfContratante = params['cpfContratante'];\r\n this.cepOrigem = params['cepOrigem'];\r\n this.cepDestino = params['cepDestino'];\r\n this.fromDeclaracao = params['fromDeclaracao'] == \"true\"; \r\n this.consultarCiot(this.ciotId, this.senha);\r\n });\r\n\r\n if (this.fromDeclaracao) {\r\n this.toastr.success('CIOT declarado com sucesso!', Mensagens.SUCESSO);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.consultaCiotForm);\r\n });\r\n }\r\n\r\n voltar() {\r\n this.router.navigateByUrl('/', { skipLocationChange: true });\r\n }\r\n\r\n imprimir() {\r\n this.objImprimir.aDataInicio = this.consultaDTO.dtInicioFrete;\r\n this.objImprimir.aDataTermino = this.consultaDTO.dtTerminoFrete;\r\n this.objImprimir.aTipoViagem = this.objImprimir.aTipoViagem;\r\n this.objImprimir.aCpfCnpjProprietario = this.objImprimir.aCpfCnpjProprietario;\r\n this.objImprimir.aCpfCnpjContratante = this.cpfContratante;\r\n this.objImprimir.aStatus = Number(this.consultaDTO.situacaoDeclaracao);\r\n this.objImprimir.aCpfCnpjCliente = \"09313766000109\"; //No momento esta fixo, pois n tem a opcao de selecionar o cliente na tela\r\n this.objImprimir.aCpfCnpjMotorista = this.cpfMotorista;\r\n this.objImprimir.cepOrigem = this.cepOrigem;\r\n this.objImprimir.cepDestino = this.cepDestino; \r\n\r\n //this.service.gestaoCiot(this.objImprimir) \r\n\r\n var url = CiotService.UrlBase +\"Operacoes/GestaoCiot/\";\r\n this.openWindowWithPost(url, this.objImprimir); \r\n\r\n this.timeoutBotao();\r\n }\r\n\r\n openWindowWithPost(url, data) {\r\n var form = document.createElement(\"form\");\r\n form.target = \"_blank\";\r\n form.method = \"POST\";\r\n form.action = url;\r\n form.style.display = \"none\";\r\n form.data = data;\r\n\r\n // for (var key in data) {\r\n // var input = document.createElement(\"input\");\r\n // input.type = \"hidden\";\r\n // input.name = key;\r\n // input.value = data[key];\r\n // form.appendChild(input);\r\n // }\r\n\r\n document.body.appendChild(form);\r\n form.submit();\r\n document.body.removeChild(form);\r\n}\r\n\r\ntimeoutBotao() {\r\n this.botaoImprimirHabilitado = false;\r\n setTimeout(() => {\r\n this.botaoImprimirHabilitado = true;\r\n }, 3000);\r\n}\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.consultaCiotForm.reset();\r\n this.errors = [];\r\n }\r\n\r\n\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Dados Pessoais\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Endereço\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Cidade não encontrada
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Contato\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import {AfterViewInit, Component, ElementRef, Input, OnInit, ViewChildren} from '@angular/core';\r\nimport {FormBuilder, FormControlName, FormGroup, Validators} from \"@angular/forms\"; \r\nimport {Router} from \"@angular/router\";\r\nimport { Subject } from \"rxjs/Subject\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport {GenericValidator} from \"../../../commom/generic.form.validator\";\r\nimport {Pessoa} from \"../../../ciot/models/pessoa\";\r\nimport {Cidade} from \"../../models/cidade\";\r\nimport {RetornoCidades} from \"../../models/cidade\";\r\nimport {AutoCompleteService} from '../../services/autocomplete.service';\r\nimport {CiotService} from '../../services/ciot.service';\r\nimport {TypeaheadMatch} from 'ngx-bootstrap/typeahead';\r\nimport {ViagemComponent} from '../viagem/viagem.component'; \r\n \r\n@Component({\r\n selector: 'app-contratante',\r\n templateUrl: './contratante.component.html',\r\n styles: []\r\n})\r\nexport class ContratanteComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public contratanteForm: FormGroup;\r\n public veiculo: Pessoa;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n public cidade: RetornoCidades;\r\n private subject = new Subject();\r\n maskCpfCnpj = '';\r\n\r\n // AutoComplete fields\r\n cidadeList: Array = [];\r\n noResult = false;\r\n cidadeCompleterText: string;\r\n\r\n @Input() CpfCnpjInteressado: string;\r\n @Input() tipoViagem: string;\r\n @Input() viagemComponent: ViagemComponent;\r\n\r\n constructor(private fb: FormBuilder,\r\n private ciotService: CiotService,\r\n private autoCompleteService: AutoCompleteService,\r\n private router: Router) {\r\n\r\n this.ciotService.consultarCidades(\"\")\r\n .subscribe(\r\n result => {\r\n this.cidadeList = result;\r\n },\r\n error => { }\r\n );\r\n\r\n this.validationMessages = {\r\n cpfCnpj: {\r\n required: 'O CPF/CNPJ é obrigatório.'\r\n },\r\n nome: {\r\n required: 'O nome é obrigatório.'\r\n },\r\n cep: {\r\n required: 'O CEP é obrigatório.',\r\n },\r\n logradouro: {\r\n required: 'O logradouro é obrigatório.',\r\n },\r\n cidade: {\r\n required: 'A cidade é obrigatória.',\r\n },\r\n\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n // AutoComplete métodos\r\n typeaheadNoResults(event: boolean): void {\r\n this.noResult = event;\r\n this.cidade = undefined;\r\n }\r\n\r\n onSelectCidade(event: TypeaheadMatch): void {\r\n this.cidade = event.item;\r\n }\r\n\r\n ngOnInit() {\r\n this.contratanteForm = this.fb.group({\r\n cpfCnpj: [''],\r\n nome: ['', [Validators.required]],\r\n cep: ['', [Validators.required]],\r\n logradouro: ['', [Validators.required]],\r\n cidade: ['', [Validators.required]],\r\n rntrc: ['',],\r\n nomeFantasia: ['',],\r\n numero: ['',],\r\n bairro: ['',],\r\n complemento: ['',],\r\n telefone: ['',],\r\n email: ['',]\r\n });\r\n\r\n this.contratanteForm.controls['cpfCnpj'].setValue(this.CpfCnpjInteressado);\r\n this.contratanteForm.value.cpfCnpj = this.CpfCnpjInteressado;\r\n this.contratanteForm.controls['cpfCnpj'].disable();\r\n\r\n this.contratanteForm.get('cpfCnpj').valueChanges.map(valor=>valor.length).subscribe(length=>{\r\n if(length>11){\r\n this.maskCpfCnpj = '00.000.000/0000-00'\r\n } else {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n \r\n if (length < 11 && this.maskCpfCnpj == '00.000.000/0000-00') {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n })\r\n\r\n document.getElementById('idRntrc').hidden = true;\r\n } \r\n\r\n //Gambi do matias para desabilitar/habilitar o input\r\n isVisible(resp): void {\r\n if(resp) {\r\n document.getElementById('idRntrc').hidden = true;\r\n } else {\r\n document.getElementById('idRntrc').hidden = false; \r\n } \r\n } \r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.contratanteForm);\r\n });\r\n }\r\n\r\n ngFocus() {\r\n let inputField: HTMLElement = document.querySelectorAll('.dialog input')[0];\r\n inputField && inputField.focus();\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.contratanteForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Dados Pessoais\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Endereço\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Cidade não encontrada
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Contato\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import {AfterViewInit, Component, ElementRef, Input, OnInit, ViewChildren} from '@angular/core';\r\nimport {FormBuilder, FormControlName, FormGroup, Validators} from \"@angular/forms\";\r\nimport {Router} from \"@angular/router\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport {GenericValidator} from \"../../../commom/generic.form.validator\";\r\nimport {Pessoa} from \"../../../ciot/models/pessoa\";\r\nimport {ContratanteComponent} from '../contratante/contratante.component';\r\nimport {ConsignatarioComponent} from '../consignatario/consignatario.component';\r\nimport {RemetenteComponent} from '../remetente/remetente.component';\r\nimport {TransportadorVeiculosComponent} from '../transportador-veiculos/transportador-veiculos.component';\r\nimport {Cidade} from \"../../models/cidade\";\r\nimport {RetornoCidades} from \"../../models/cidade\";\r\nimport {AutoCompleteService} from '../../services/autocomplete.service';\r\nimport {CiotService} from '../../services/ciot.service';\r\nimport {TypeaheadMatch} from 'ngx-bootstrap/typeahead';\r\n\r\n@Component({\r\n selector: 'app-destinatario',\r\n templateUrl: './destinatario.component.html',\r\n styles: []\r\n})\r\nexport class DestinatarioComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public destinatarioForm: FormGroup;\r\n public veiculo: Pessoa;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n public cidade: RetornoCidades;\r\n maskCpfCnpj = '';\r\n\r\n // AutoComplete fields\r\n cidadeList: Array = [];\r\n noResult = false;\r\n cidadeCompleterText: string;\r\n\r\n @Input() contratanteComponent: ContratanteComponent;\r\n @Input() remetenteComponent: RemetenteComponent;\r\n @Input() consignatarioComponent: ConsignatarioComponent;\r\n @Input() transportadorVeiculosComponent: TransportadorVeiculosComponent;\r\n\r\n constructor(private fb: FormBuilder,\r\n private autoCompleteService: AutoCompleteService,\r\n private ciotService: CiotService,\r\n private router: Router) {\r\n\r\n this.ciotService.consultarCidades(\"\")\r\n .subscribe(\r\n result => {\r\n this.cidadeList = result;\r\n },\r\n error => { }\r\n );\r\n\r\n this.validationMessages = {\r\n cpfCnpj: {\r\n required: 'O CPF/CNPJ é obrigatório.'\r\n },\r\n nome: {\r\n required: 'O nome é obrigatório.'\r\n },\r\n cep: {\r\n required: 'O CEP é obrigatório.',\r\n },\r\n logradouro: {\r\n required: 'O logradouro é obrigatório.',\r\n },\r\n cidade: {\r\n required: 'A cidade é obrigatória.',\r\n },\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n // AutoComplete métodos\r\n typeaheadNoResults(event: boolean): void {\r\n this.noResult = event;\r\n this.cidade = undefined;\r\n }\r\n\r\n onSelectCidade(event: TypeaheadMatch): void {\r\n this.cidade = event.item;\r\n }\r\n\r\n ngOnInit() {\r\n this.destinatarioForm = this.fb.group({\r\n cpfCnpj: ['', [Validators.required]],\r\n nome: ['', [Validators.required]],\r\n cep: ['', [Validators.required]],\r\n logradouro: ['', [Validators.required]],\r\n cidade: ['', [Validators.required]],\r\n rntrc: ['',],\r\n nomeFantasia: ['',],\r\n numero: ['',],\r\n bairro: ['',],\r\n complemento: ['',],\r\n telefone: ['',],\r\n email: ['',]\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n\r\n this.destinatarioForm.get('cpfCnpj').valueChanges.map(valor=>valor.length).subscribe(length=>{\r\n if(length>11){\r\n this.maskCpfCnpj = '00.000.000/0000-00'\r\n } else {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n \r\n if (length < 11 && this.maskCpfCnpj == '00.000.000/0000-00') {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n }) \r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.destinatarioForm);\r\n });\r\n }\r\n\r\n ngFocus() {\r\n let inputField: HTMLElement = document.querySelectorAll('.dialog input')[0];\r\n inputField && inputField.focus();\r\n }\r\n\r\n limpar() {\r\n if (this.destinatarioForm != undefined) {\r\n this.destinatarioForm.reset();\r\n this.cidade = undefined;\r\n this.cidadeCompleterText = \"\";\r\n }\r\n }\r\n\r\n copiarContratante() {\r\n if (this.contratanteComponent != undefined) {\r\n this.contratanteComponent.contratanteForm.value.cpfCnpj = this.contratanteComponent.CpfCnpjInteressado;\r\n this.destinatarioForm.setValue(this.contratanteComponent.contratanteForm.value);\r\n this.cidade = this.contratanteComponent.cidade;\r\n this.cidadeCompleterText = this.contratanteComponent.cidade.NOME;\r\n this.destinatarioForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarRemetente() {\r\n if (this.remetenteComponent != undefined) {\r\n this.destinatarioForm.setValue(this.remetenteComponent.remetenteForm.value);\r\n this.cidade = this.remetenteComponent.cidade;\r\n this.cidadeCompleterText = this.remetenteComponent.cidade.NOME;\r\n this.destinatarioForm.markAsDirty();\r\n\r\n }\r\n }\r\n\r\n copiarConsignatario() {\r\n if (this.consignatarioComponent != undefined) {\r\n this.destinatarioForm.setValue(this.consignatarioComponent.consignatarioForm.value);\r\n this.cidade = this.consignatarioComponent.cidade;\r\n this.cidadeCompleterText = this.consignatarioComponent.cidade.NOME;\r\n this.destinatarioForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarTransportador() {\r\n if (this.transportadorVeiculosComponent != undefined) {\r\n this.transportadorVeiculosComponent.transportadorForm.value.cpfCnpj = this.transportadorVeiculosComponent.CpfCnpjTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.cpfCnpj = this.transportadorVeiculosComponent.CpfCnpjTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.nome = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.nomeFantasia = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.rntrc = this.transportadorVeiculosComponent.RNTRCTransportador;\r\n this.destinatarioForm.setValue(this.transportadorVeiculosComponent.transportadorForm.value);\r\n this.cidade = this.transportadorVeiculosComponent.cidade;\r\n this.cidadeCompleterText = this.transportadorVeiculosComponent.cidade.NOME;\r\n this.destinatarioForm.markAsDirty();\r\n }\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.destinatarioForm.reset();\r\n this.errors = [];\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControlName } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../../commom/generic.form.validator\";\r\nimport { Veiculo } from \"../../../ciot/models/veiculo\"\r\n\r\nimport { PatternValidator } from '@angular/forms/src/directives/validators';\r\n\r\n@Component({\r\n selector: 'app-motorista',\r\n templateUrl: './motorista.component.html',\r\n styles: []\r\n})\r\nexport class MotoristaComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public motoristaForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n\r\n constructor(private fb: FormBuilder,\r\n private router: Router) {\r\n\r\n this.validationMessages = {\r\n cpf: {\r\n required: 'O CPF é obrigatório.'\r\n },\r\n nome: {\r\n required: 'O nome é obrigatório.'\r\n },\r\n cnh: {\r\n required: 'O CNH é obrigatório.',\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n ngOnInit() {\r\n this.motoristaForm = this.fb.group({\r\n cpf: ['', ],\r\n nome: ['', ],\r\n cnh: ['', ]\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.motoristaForm);\r\n });\r\n }\r\n\r\n avancar() {\r\n this.router.navigate(['/ciot']);\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.motoristaForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControlName } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../../commom/generic.form.validator\";\r\n\r\nimport { DadosRetornoBanco } from '../../models/banco';\r\n\r\n@Component({\r\n selector: 'app-pagamento',\r\n templateUrl: './pagamento.component.html'\r\n})\r\nexport class PagamentoComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public pagamentoForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n public banco: DadosRetornoBanco;\r\n maskCpfCnpj = '';\r\n\r\n constructor(private fb: FormBuilder,\r\n private router: Router) {\r\n\r\n this.validationMessages = {\r\n formaPagamento: {\r\n required: 'A data início do frete é obrigatório.'\r\n },\r\n parcelaUnica: {\r\n required: 'A data término do frete é obrigatório.'\r\n },\r\n // cidadeOrigem: {\r\n // required: 'A cidade origem do contratante é obrigatório.'\r\n // },\r\n // cidadeDestino: {\r\n // required: 'A cidade destino é obrigatório.',\r\n // },\r\n naturezaCarga: {\r\n required: 'A natureza da carga é obrigatório.',\r\n },\r\n valorFrete: {\r\n required: 'O valor do frete é obrigatório.',\r\n },\r\n quantidadeTarifas: {\r\n required: 'A quantidade de tarifas é obrigatório.',\r\n },\r\n valorTotalTarifas: {\r\n required: 'O valor total das tarifas é obrigatório.',\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n ngOnInit() {\r\n this.pagamentoForm = this.fb.group({\r\n formaPagamento: ['', [Validators.required]],\r\n banco: ['', [Validators.required]],\r\n agencia: ['', [Validators.required]],\r\n conta: ['', [Validators.required]],\r\n cpfCnpjConta: ['', ],\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n rntrc: ['', [Validators.required]],\r\n });\r\n\r\n this.pagamentoForm.get('cpfCnpjConta').valueChanges.map(valor=>valor.length).subscribe(length=>{\r\n if(length>11){\r\n this.maskCpfCnpj = '00.000.000/0000-00'\r\n } else {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n\r\n if (length < 11 && this.maskCpfCnpj == '00.000.000/0000-00') {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n })\r\n\r\n this.onChanges();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.pagamentoForm);\r\n });\r\n }\r\n\r\n onChanges() {\r\n this.pagamentoForm.get(\"formaPagamento\").valueChanges.subscribe(value => {\r\n if (value == 1 || value == 5) { \r\n\r\n document.getElementById('idCpfCnpjPagamento').hidden = true;\r\n document.getElementById('idBancos').hidden = true;\r\n document.getElementById('idAgenciaConta').hidden = true;\r\n } else {\r\n document.getElementById('idCpfCnpjPagamento').hidden = false;\r\n document.getElementById('idBancos').hidden = false;\r\n document.getElementById('idAgenciaConta').hidden = false;\r\n }\r\n });\r\n }\r\n\r\n onChoosedBanco(evento) {\r\n this.banco = new DadosRetornoBanco;\r\n this.banco.CODIGO = evento.id;\r\n this.banco.NOME = evento.nome;\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.pagamentoForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Dados Pessoais\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Endereço\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Cidade não encontrada
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Contato\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren, Input } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControlName } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../../commom/generic.form.validator\";\r\nimport { Pessoa } from \"../../../ciot/models/pessoa\";\r\n\r\nimport { PatternValidator } from '@angular/forms/src/directives/validators';\r\nimport { ContratanteComponent } from '../contratante/contratante.component';\r\nimport { DestinatarioComponent } from '../destinatario/destinatario.component';\r\nimport { ConsignatarioComponent } from '../consignatario/consignatario.component';\r\nimport { TransportadorVeiculosComponent } from '../transportador-veiculos/transportador-veiculos.component';\r\nimport { Cidade } from \"../../models/cidade\";\r\nimport { RetornoCidades } from \"../../models/cidade\";\r\nimport { AutoCompleteService } from '../../services/autocomplete.service';\r\nimport { NgAutocompleteComponent } from 'ng-auto-complete';\r\nimport { CiotService } from '../../services/ciot.service';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead';\r\n\r\n@Component({\r\n selector: 'app-remetente',\r\n templateUrl: './remetente.component.html',\r\n styles: []\r\n})\r\nexport class RemetenteComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public remetenteForm: FormGroup;\r\n public veiculo: Pessoa;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n public cidade: RetornoCidades;\r\n maskCpfCnpj = '';\r\n\r\n // AutoComplete fields\r\n cidadeList: Array = [];\r\n noResult = false;\r\n cidadeCompleterText: string;\r\n\r\n @Input() contratanteComponent: ContratanteComponent;\r\n @Input() destinatarioComponent: DestinatarioComponent;\r\n @Input() consignatarioComponent: ConsignatarioComponent;\r\n @Input() transportadorVeiculosComponent: TransportadorVeiculosComponent;\r\n\r\n constructor(private fb: FormBuilder,\r\n private autoCompleteService: AutoCompleteService,\r\n private ciotService: CiotService,\r\n private router: Router) {\r\n\r\n this.ciotService.consultarCidades(\"\")\r\n .subscribe(\r\n result => {\r\n this.cidadeList = result;\r\n },\r\n error => { }\r\n );\r\n\r\n\r\n this.validationMessages = {\r\n cpfCnpj: {\r\n required: 'O CPF/CNPJ é obrigatório.'\r\n },\r\n nome: {\r\n required: 'O nome é obrigatório.'\r\n },\r\n cep: {\r\n required: 'O CEP é obrigatório.',\r\n },\r\n logradouro: {\r\n required: 'O logradouro é obrigatório.',\r\n },\r\n cidade: {\r\n required: 'A cidade é obrigatória.',\r\n },\r\n\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n // AutoComplete métodos\r\n typeaheadNoResults(event: boolean): void {\r\n this.noResult = event;\r\n this.cidade = undefined;\r\n }\r\n\r\n onSelectCidade(event: TypeaheadMatch): void {\r\n this.cidade = event.item;\r\n }\r\n\r\n ngOnInit() {\r\n this.remetenteForm = this.fb.group({\r\n cpfCnpj: ['', [Validators.required]],\r\n nome: ['', [Validators.required]],\r\n cep: ['', [Validators.required]],\r\n logradouro: ['', [Validators.required]],\r\n cidade: ['', [Validators.required]],\r\n rntrc: ['',],\r\n nomeFantasia: ['',],\r\n numero: ['',],\r\n bairro: ['',],\r\n complemento: ['',],\r\n telefone: ['',],\r\n email: ['',]\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n\r\n this.remetenteForm.get('cpfCnpj').valueChanges.map(valor=>valor.length).subscribe(length=>{\r\n if(length>11){\r\n this.maskCpfCnpj = '00.000.000/0000-00'\r\n } else {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n \r\n if (length < 11 && this.maskCpfCnpj == '00.000.000/0000-00') {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n }) \r\n }\r\n\r\n //Gambi do matias para desabilitar/habilitar o input\r\n // isVisible(resp): void {\r\n // if(resp) { \r\n // $('#rntrc1').remove();\r\n // $('#div1').append('
');\r\n // } else {\r\n // $('#rntrc1').remove();\r\n // $('#div1').append('
');\r\n // }\r\n // }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.remetenteForm);\r\n });\r\n }\r\n\r\n ngFocus() {\r\n let inputField: HTMLElement = document.querySelectorAll('.dialog input')[0];\r\n inputField && inputField.focus();\r\n }\r\n\r\n limpar() {\r\n if (this.remetenteForm != undefined) {\r\n this.remetenteForm.reset();\r\n this.cidade = undefined;\r\n this.cidadeCompleterText = \"\";\r\n }\r\n }\r\n\r\n copiarContratante() {\r\n if (this.contratanteComponent != undefined) {\r\n this.contratanteComponent.contratanteForm.value.cpfCnpj = this.contratanteComponent.CpfCnpjInteressado;\r\n this.remetenteForm.setValue(this.contratanteComponent.contratanteForm.value);\r\n this.cidade = this.contratanteComponent.cidade;\r\n this.cidadeCompleterText = this.contratanteComponent.cidade.NOME;\r\n this.remetenteForm.value.cpfCnpj = this.contratanteComponent.CpfCnpjInteressado;\r\n this.remetenteForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarDestinatario() {\r\n if (this.destinatarioComponent != undefined) {\r\n this.remetenteForm.setValue(this.destinatarioComponent.destinatarioForm.value);\r\n this.cidade = this.destinatarioComponent.cidade;\r\n this.cidadeCompleterText = this.destinatarioComponent.cidade.NOME;\r\n this.remetenteForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarConsignatario() {\r\n if (this.consignatarioComponent != undefined) {\r\n this.remetenteForm.setValue(this.consignatarioComponent.consignatarioForm.value);\r\n this.cidade = this.consignatarioComponent.cidade;\r\n this.cidadeCompleterText = this.consignatarioComponent.cidade.NOME;\r\n this.remetenteForm.markAsDirty();\r\n }\r\n }\r\n\r\n copiarTransportador() {\r\n if (this.transportadorVeiculosComponent != undefined && this.transportadorVeiculosComponent.transportadorForm.dirty) {\r\n this.transportadorVeiculosComponent.transportadorForm.value.cpfCnpj = this.transportadorVeiculosComponent.CpfCnpjTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.nome = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.nomeFantasia = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.transportadorVeiculosComponent.transportadorForm.value.rntrc = this.transportadorVeiculosComponent.RNTRCTransportador;\r\n this.remetenteForm.setValue(this.transportadorVeiculosComponent.transportadorForm.value);\r\n this.cidade = this.transportadorVeiculosComponent.cidade;\r\n this.cidadeCompleterText = this.transportadorVeiculosComponent.cidade.NOME;\r\n this.remetenteForm.markAsDirty();\r\n }\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.remetenteForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Voltar
\\r\\n \\r\\n
\\r\\n
\\r\\n Deseja mesmo voltar à tela inicial?\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import {Component, Input, ViewContainerRef} from '@angular/core';\r\nimport {Router} from '@angular/router';\r\nimport {ToastsManager} from 'ng2-toastr';\r\nimport {\r\n Consignatario,\r\n DeclararOperacaoTransporte,\r\n Endereco,\r\n Frete,\r\n Motorista,\r\n InformacoesPagamento,\r\n FreteRetorno,\r\n Pagamento,\r\n Valores,\r\n DadosBancarios\r\n} from '../../models/declarar-operacao-transporte';\r\nimport {CiotService} from '../../services/ciot.service';\r\nimport {ContratanteComponent} from '../contratante/contratante.component';\r\nimport {DestinatarioComponent} from '../destinatario/destinatario.component';\r\nimport {ConsignatarioComponent} from '../consignatario/consignatario.component';\r\nimport {TransportadorVeiculosComponent} from '../transportador-veiculos/transportador-veiculos.component';\r\nimport {RemetenteComponent} from '../remetente/remetente.component';\r\nimport {ViagemComponent} from '../viagem/viagem.component';\r\nimport {PagamentoComponent} from '../pagamento/pagamento.component';\r\nimport {MotoristaComponent} from '../motorista/motorista.component';\r\nimport {ViagemDTO} from '../../models/declaracao-dto/viagem-dto';\r\nimport {MotoristaDTO} from '../../models/declaracao-dto/motorista-dto';\r\nimport {PagamentoDTO} from \"../../models/declaracao-dto/pagamento-dto\";\r\nimport {DadosPessoaisDTO} from '../../models/declaracao-dto/dados-pessoais';\r\nimport {Mensagens, TipoPessoa, TipoViagem} from '../../util/enums';\r\n\r\n@Component({\r\n selector: 'app-salvar-declaracao',\r\n templateUrl: './salvar-declaracao.component.html',\r\n styles: []\r\n})\r\nexport class SalvarDeclaracaoComponent {\r\n\r\n public errors: any[] = [];\r\n public declaracao: DeclararOperacaoTransporte = new DeclararOperacaoTransporte;\r\n private viagemDTO: ViagemDTO;\r\n private motoristaDTO: MotoristaDTO;\r\n private pagamentoDTO: PagamentoDTO;\r\n private dadosPessoaisDTO: DadosPessoaisDTO\r\n private valid: boolean = true;\r\n private validFreteRetorno: boolean = false;\r\n\r\n // Declaração form inputs\r\n @Input() viagemComponent: ViagemComponent;\r\n @Input() pagamentoComponent: PagamentoComponent;\r\n @Input() transportadorVeiculosComponent: TransportadorVeiculosComponent;\r\n @Input() motoristaComponent: MotoristaComponent;\r\n\r\n @Input() contratanteComponent: ContratanteComponent;\r\n @Input() remetenteComponent: RemetenteComponent;\r\n @Input() destinatarioComponent: DestinatarioComponent;\r\n @Input() consignatarioComponent: ConsignatarioComponent;\r\n\r\n constructor(private ciotService: CiotService,\r\n private vRef: ViewContainerRef,\r\n private toastr: ToastsManager,\r\n private router: Router) {\r\n }\r\n\r\n salvar() {\r\n this.valid = true;\r\n this.populaFrete();\r\n this.populaPagamento();\r\n this.populaTransportadorVeiculos();\r\n this.populaMotorista();\r\n this.populaContratante();\r\n if (TipoViagem.Padrao == this.viagemComponent.tipoViagem) {\r\n this.populaRemetente();\r\n this.populaDestinatario();\r\n this.populaConsignatario();\r\n }\r\n if (this.valid) {\r\n this.declaracao.ciotAjuste = \"\";\r\n this.ciotService.declararOperacaoTransporte(this.declaracao)\r\n .subscribe(\r\n result => {\r\n this.onSaveComplete(result)\r\n },\r\n error => {\r\n this.onError(error);\r\n });\r\n }\r\n }\r\n\r\n private populaTransportadorVeiculos() {\r\n if (this.transportadorVeiculosComponent != undefined && this.transportadorVeiculosComponent.transportadorForm.dirty) {\r\n this.dadosPessoaisDTO = this.transportadorVeiculosComponent.transportadorForm.value;\r\n this.declaracao.frete.proprietario = new Consignatario;\r\n this.declaracao.frete.proprietario.cpfCnpj = this.transportadorVeiculosComponent.CpfCnpjTransportador;\r\n this.declaracao.frete.proprietario.tipoPessoa = (this.declaracao.frete.proprietario.cpfCnpj != undefined\r\n && this.declaracao.frete.proprietario.cpfCnpj.length == 11) ? TipoPessoa.Fisica : TipoPessoa.Juridica;\r\n this.declaracao.frete.proprietario.nomeFantasia = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.declaracao.frete.proprietario.rntrc = this.transportadorVeiculosComponent.RNTRCTransportador.length == 9 && this.transportadorVeiculosComponent.RNTRCTransportador.substring(1,0) == \"0\" ? this.transportadorVeiculosComponent.RNTRCTransportador.substring(9,1) : this.transportadorVeiculosComponent.RNTRCTransportador;\r\n this.declaracao.frete.proprietario.endereco = new Endereco;\r\n this.declaracao.frete.proprietario.nomeRazaoSocial = this.transportadorVeiculosComponent.NomeRazaoSocialTransportador;\r\n this.declaracao.frete.proprietario.endereco.bairro = this.dadosPessoaisDTO.bairro;\r\n this.declaracao.frete.proprietario.endereco.cep = this.dadosPessoaisDTO.cep.replace(\"-\", \"\");\r\n if (this.transportadorVeiculosComponent.cidade != undefined) {\r\n this.declaracao.frete.proprietario.endereco.codigoMunicipio = this.transportadorVeiculosComponent.cidade.ID_CIDADE;\r\n }\r\n this.declaracao.frete.proprietario.endereco.complemento = this.dadosPessoaisDTO.complemento;\r\n this.declaracao.frete.proprietario.endereco.email = this.dadosPessoaisDTO.email;\r\n this.declaracao.frete.proprietario.endereco.logradouro = this.dadosPessoaisDTO.logradouro;\r\n this.declaracao.frete.proprietario.endereco.numero = this.dadosPessoaisDTO.numero;\r\n this.declaracao.frete.proprietario.endereco.telefone = this.dadosPessoaisDTO.telefone;\r\n // this.declaracao.contratante.tipoPessoa = \r\n this.declaracao.veiculos = this.transportadorVeiculosComponent.veiculoList;\r\n this.executarValidacoesTransportador();\r\n }\r\n\r\n else {\r\n this.toastr.error('Por favor, preencha a aba Transportador/Veículos.', Mensagens.OOPS);\r\n this.valid = false;\r\n throw new DOMException();\r\n }\r\n }\r\n\r\n private populaConsignatario() {\r\n if (this.consignatarioComponent != undefined) {\r\n this.dadosPessoaisDTO = this.consignatarioComponent.consignatarioForm.value;\r\n if (this.dadosPessoaisDTO.cpfCnpj.toString() == \"\" || this.dadosPessoaisDTO.nome.toString() == \"\") {\r\n return;\r\n }\r\n this.declaracao.consignatario = new Consignatario;\r\n this.declaracao.consignatario.cpfCnpj = this.dadosPessoaisDTO.cpfCnpj;\r\n this.declaracao.consignatario.tipoPessoa = (this.declaracao.consignatario.cpfCnpj != undefined\r\n && this.declaracao.consignatario.cpfCnpj.length == 11) ? TipoPessoa.Fisica : TipoPessoa.Juridica;\r\n this.declaracao.consignatario.nomeFantasia = this.dadosPessoaisDTO.nomeFantasia;\r\n //this.declaracao.consignatario.rntrc = this.dadosPessoaisDTO.rntrc;\r\n this.declaracao.consignatario.endereco = new Endereco;\r\n this.declaracao.consignatario.nomeRazaoSocial = this.dadosPessoaisDTO.nome;\r\n this.declaracao.consignatario.endereco.bairro = this.dadosPessoaisDTO.bairro;\r\n this.declaracao.consignatario.endereco.cep = this.dadosPessoaisDTO.cep.replace(\"-\", \"\");\r\n if (this.consignatarioComponent.cidade != undefined) {\r\n this.declaracao.consignatario.endereco.codigoMunicipio = this.consignatarioComponent.cidade.ID_CIDADE;\r\n }\r\n this.declaracao.consignatario.endereco.complemento = this.dadosPessoaisDTO.complemento;\r\n this.declaracao.consignatario.endereco.email = this.dadosPessoaisDTO.email;\r\n this.declaracao.consignatario.endereco.logradouro = this.dadosPessoaisDTO.logradouro;\r\n this.declaracao.consignatario.endereco.numero = this.dadosPessoaisDTO.numero;\r\n this.declaracao.consignatario.endereco.telefone = this.dadosPessoaisDTO.telefone;\r\n this.executarValidacoesConsignatario();\r\n }\r\n }\r\n\r\n private populaDestinatario() {\r\n if (this.destinatarioComponent != undefined && this.destinatarioComponent.destinatarioForm.dirty) {\r\n this.dadosPessoaisDTO = this.destinatarioComponent.destinatarioForm.value;\r\n this.declaracao.destinatario = new Consignatario;\r\n this.declaracao.destinatario.cpfCnpj = this.dadosPessoaisDTO.cpfCnpj;\r\n this.declaracao.destinatario.tipoPessoa = (this.declaracao.destinatario.cpfCnpj != undefined\r\n && this.declaracao.destinatario.cpfCnpj.length == 11) ? TipoPessoa.Fisica : TipoPessoa.Juridica;\r\n this.declaracao.destinatario.nomeFantasia = this.dadosPessoaisDTO.nomeFantasia;\r\n //this.declaracao.destinatario.rntrc = this.dadosPessoaisDTO.rntrc;\r\n this.declaracao.destinatario.endereco = new Endereco;\r\n this.declaracao.destinatario.nomeRazaoSocial = this.dadosPessoaisDTO.nome;\r\n this.declaracao.destinatario.endereco.bairro = this.dadosPessoaisDTO.bairro;\r\n this.declaracao.destinatario.endereco.cep = this.dadosPessoaisDTO.cep.replace(\"-\", \"\");\r\n if (this.destinatarioComponent.cidade != undefined) {\r\n this.declaracao.destinatario.endereco.codigoMunicipio = this.destinatarioComponent.cidade.ID_CIDADE;\r\n }\r\n this.declaracao.destinatario.endereco.complemento = this.dadosPessoaisDTO.complemento;\r\n this.declaracao.destinatario.endereco.email = this.dadosPessoaisDTO.email;\r\n this.declaracao.destinatario.endereco.logradouro = this.dadosPessoaisDTO.logradouro;\r\n this.declaracao.destinatario.endereco.numero = this.dadosPessoaisDTO.numero;\r\n this.declaracao.destinatario.endereco.telefone = this.dadosPessoaisDTO.telefone;\r\n this.executarValidacoesDestinatario();\r\n }\r\n else {\r\n if (Number(TipoViagem.Padrao) == this.declaracao.frete.tipoViagem) {\r\n this.toastr.error(Mensagens.PREENCHA_ABA_DESTINATARIO, Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n }\r\n\r\n private populaRemetente() {\r\n if (this.remetenteComponent != undefined) {\r\n this.dadosPessoaisDTO = this.remetenteComponent.remetenteForm.value;\r\n this.declaracao.remetente = new Consignatario;\r\n this.declaracao.remetente.cpfCnpj = this.dadosPessoaisDTO.cpfCnpj;\r\n this.declaracao.remetente.tipoPessoa = (this.declaracao.remetente.cpfCnpj != undefined\r\n && this.declaracao.remetente.cpfCnpj.length == 11) ? TipoPessoa.Fisica : TipoPessoa.Juridica;\r\n this.declaracao.remetente.nomeFantasia = this.dadosPessoaisDTO.nomeFantasia;\r\n //this.declaracao.remetente.rntrc = this.dadosPessoaisDTO.rntrc;\r\n this.declaracao.remetente.endereco = new Endereco;\r\n this.declaracao.remetente.nomeRazaoSocial = this.dadosPessoaisDTO.nome;\r\n this.declaracao.remetente.endereco.bairro = this.dadosPessoaisDTO.bairro;\r\n this.declaracao.remetente.endereco.cep = this.dadosPessoaisDTO.cep.replace(\"-\", \"\");\r\n if (this.remetenteComponent.cidade != undefined) {\r\n this.declaracao.remetente.endereco.codigoMunicipio = this.remetenteComponent.cidade.ID_CIDADE;\r\n }\r\n this.declaracao.remetente.endereco.complemento = this.dadosPessoaisDTO.complemento;\r\n this.declaracao.remetente.endereco.email = this.dadosPessoaisDTO.email;\r\n this.declaracao.remetente.endereco.logradouro = this.dadosPessoaisDTO.logradouro;\r\n this.declaracao.remetente.endereco.numero = this.dadosPessoaisDTO.numero;\r\n this.declaracao.remetente.endereco.telefone = this.dadosPessoaisDTO.telefone;\r\n this.executarValidacoesRemetente();\r\n }\r\n else {\r\n if (Number(TipoViagem.Padrao) == this.declaracao.frete.tipoViagem) {\r\n this.toastr.error('Por favor, preencha a aba Remetente.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n }\r\n\r\n private populaContratante() {\r\n if (this.contratanteComponent != undefined) {\r\n this.dadosPessoaisDTO = this.contratanteComponent.contratanteForm.value;\r\n this.declaracao.contratante = new Consignatario;\r\n this.declaracao.contratante.cpfCnpj = this.contratanteComponent.CpfCnpjInteressado;\r\n this.declaracao.contratante.tipoPessoa = (this.declaracao.contratante.cpfCnpj != undefined\r\n && this.declaracao.contratante.cpfCnpj.length == 11) ? TipoPessoa.Fisica : TipoPessoa.Juridica;\r\n this.declaracao.contratante.nomeFantasia = this.dadosPessoaisDTO.nomeFantasia;\r\n this.declaracao.contratante.nomeRazaoSocial = this.dadosPessoaisDTO.nome;\r\n \r\n if (this.dadosPessoaisDTO.rntrc && this.dadosPessoaisDTO.rntrc != \"\") {\r\n this.declaracao.contratante.rntrc = this.declaracao.frete.tipoViagem != 1 ? this.dadosPessoaisDTO.rntrc : null;\r\n }\r\n\r\n this.declaracao.contratante.endereco = new Endereco;\r\n this.declaracao.contratante.endereco.bairro = this.dadosPessoaisDTO.bairro;\r\n this.declaracao.contratante.endereco.cep = this.dadosPessoaisDTO.cep.replace(\"-\", \"\");\r\n if (this.contratanteComponent.cidade != undefined) {\r\n this.declaracao.contratante.endereco.codigoMunicipio = this.contratanteComponent.cidade.ID_CIDADE;\r\n }\r\n this.declaracao.contratante.endereco.complemento = this.dadosPessoaisDTO.complemento;\r\n this.declaracao.contratante.endereco.email = this.dadosPessoaisDTO.email;\r\n this.declaracao.contratante.endereco.logradouro = this.dadosPessoaisDTO.logradouro;\r\n this.declaracao.contratante.endereco.numero = this.dadosPessoaisDTO.numero;\r\n this.declaracao.contratante.endereco.telefone = this.dadosPessoaisDTO.telefone;\r\n this.executarValidacoesContratante()\r\n }\r\n else {\r\n this.toastr.error('Por favor, preencha a aba Contratante.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n\r\n private populaPagamento() {\r\n if (this.pagamentoComponent != undefined && this.pagamentoComponent.pagamentoForm.dirty) {\r\n this.pagamentoDTO = this.pagamentoComponent.pagamentoForm.value;\r\n\r\n this.declaracao.informacoesPagamento = new InformacoesPagamento();\r\n this.declaracao.informacoesPagamento.dadosBancarios = new DadosBancarios();\r\n\r\n this.declaracao.informacoesPagamento.formaPagamento = this.pagamentoDTO.formaPagamento;\r\n\r\n if (this.pagamentoComponent.banco) {\r\n this.declaracao.informacoesPagamento.dadosBancarios.agencia = this.pagamentoDTO.agencia;\r\n this.declaracao.informacoesPagamento.dadosBancarios.codigoBacen = this.pagamentoComponent.banco.CODIGO;\r\n this.declaracao.informacoesPagamento.dadosBancarios.conta = this.pagamentoDTO.conta;\r\n this.declaracao.informacoesPagamento.dadosBancarios.cpfCnpjConta = this.pagamentoDTO.cpfCnpjConta;\r\n } \r\n\r\n this.executarValidacoesPagamento();\r\n } else {\r\n this.toastr.error('Por favor, preencha a aba Pagamento.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n\r\n private populaMotorista() {\r\n if (this.motoristaComponent != undefined && this.motoristaComponent.motoristaForm.dirty) {\r\n this.motoristaDTO = this.motoristaComponent.motoristaForm.value;\r\n this.declaracao.frete.motorista = new Motorista;\r\n this.declaracao.frete.motorista.nome = this.motoristaDTO.nome;\r\n this.declaracao.frete.motorista.cpfCnpj = this.motoristaDTO.cpf;\r\n this.declaracao.frete.motorista.numeroCNH = this.motoristaDTO.cnh;\r\n }\r\n }\r\n\r\n private populaFrete() {\r\n if (this.viagemComponent != undefined && this.viagemComponent.viagemForm.dirty) {\r\n this.viagemDTO = this.viagemComponent.viagemForm.value;\r\n debugger;\r\n this.declaracao.frete = new Frete;\r\n if (TipoViagem.Padrao == this.viagemComponent.tipoViagem) {\r\n this.declaracao.frete.dataInicioFrete = this.viagemComponent.dataInicio;\r\n \r\n if (this.viagemDTO.cepOrigem != undefined) {\r\n this.declaracao.frete.cepOrigem = this.viagemDTO.cepOrigem;\r\n }\r\n \r\n if (this.viagemDTO.cepDestino != undefined) {\r\n this.declaracao.frete.cepDestino = this.viagemDTO.cepDestino;\r\n }\r\n\r\n if (this.viagemComponent.naturezaCargaSelect != undefined) {\r\n this.declaracao.frete.codigoNaturezaCarga = this.viagemComponent.naturezaCargaSelect.CODIGO;\r\n }\r\n \r\n this.declaracao.frete.pesoCarga = this.viagemDTO.pesoCarga;\r\n }\r\n\r\n this.declaracao.frete.tipoViagem = Number(this.viagemComponent.tipoViagem);\r\n this.declaracao.frete.dataTerminoFrete = this.viagemComponent.dataFim;\r\n \r\n if (this.viagemComponent.tipoCarga) {\r\n this.declaracao.frete.codigoTipoCarga = this.viagemComponent.tipoCarga.CODIGO;\r\n }\r\n\r\n this.declaracao.frete.distanciaPercorrida = this.viagemDTO.distanciaPercorrida;\r\n\r\n this.declaracao.frete.altodesempenho = this.viagemDTO.autodesempenho ? this.viagemDTO.autodesempenho : false;\r\n\r\n var checkDestinacaoComercial: CheckDestinacaoComercial;\r\n checkDestinacaoComercial = this.viagemDTO.destinacaoComercial;\r\n this.declaracao.frete.destinacaoComercial = checkDestinacaoComercial.check; \r\n \r\n this.validFreteRetorno = this.viagemDTO.freteRetorno ? this.viagemDTO.freteRetorno : false;\r\n\r\n if (this.viagemDTO.cepRetorno || this.viagemDTO.distanciaRetorno) {\r\n this.declaracao.frete.freteRetorno = new FreteRetorno;\r\n\r\n if (this.viagemDTO.cepRetorno) {\r\n this.declaracao.frete.freteRetorno.cepRetorno = this.viagemDTO.cepRetorno;\r\n }\r\n \r\n if (this.viagemDTO.distanciaRetorno) {\r\n this.declaracao.frete.freteRetorno.distanciaRetorno = this.viagemDTO.distanciaRetorno;\r\n }\r\n } else {\r\n this.declaracao.frete.freteRetorno = null;\r\n }\r\n\r\n this.declaracao.valores = new Valores();\r\n this.declaracao.valores.valorCombustivel = this.viagemDTO.valorCombustivel;\r\n this.declaracao.valores.valorFrete = this.viagemDTO.valorFrete;\r\n this.declaracao.valores.valorTarifas = this.viagemDTO.valorTotalTarifas;\r\n this.declaracao.valores.valorDespesas = this.viagemDTO.valorDespesas;\r\n this.declaracao.valores.totalImposto = this.viagemDTO.totalImposto;\r\n this.declaracao.valores.totalPegadio = this.viagemDTO.totalPedagio;\r\n this.declaracao.valores.quantidadeTarifas = this.viagemDTO.quantidadeTarifas;\r\n this.executarValidacoesFrete();\r\n }\r\n else {\r\n this.valid = false;\r\n this.toastr.error('Por favor, preencha a aba Viagem.', Mensagens.OOPS);\r\n }\r\n }\r\n\r\n executarValidacoesFrete() {\r\n if (TipoViagem.Padrao == this.viagemComponent.tipoViagem && (this.declaracao.frete.cepOrigem == null || this.declaracao.frete.cepOrigem == undefined)) {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe o cep de origem.', Mensagens.OOPS);\r\n }\r\n if (TipoViagem.Padrao == this.viagemComponent.tipoViagem && (this.declaracao.frete.cepDestino == null || this.declaracao.frete.cepDestino == undefined)) {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe o cep de destino', Mensagens.OOPS);\r\n }\r\n if (TipoViagem.Padrao == this.viagemComponent.tipoViagem && (this.declaracao.frete.codigoNaturezaCarga == null || this.declaracao.frete.codigoNaturezaCarga == undefined)) {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe a natureza da carga.', Mensagens.OOPS);\r\n }\r\n if (TipoViagem.Padrao == this.viagemComponent.tipoViagem && (this.declaracao.frete.pesoCarga == null || this.declaracao.frete.pesoCarga.toString() == \"\")) {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe o peso da carga.', Mensagens.OOPS);\r\n }\r\n if (this.declaracao.valores.valorFrete == null || this.declaracao.valores.valorFrete.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe o valor do frete.', Mensagens.OOPS);\r\n }\r\n if (this.declaracao.valores.quantidadeTarifas == null || this.declaracao.valores.quantidadeTarifas.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe a quantidade de tarifas.', Mensagens.OOPS);\r\n }\r\n if (this.declaracao.valores.valorTarifas == null || this.declaracao.valores.valorTarifas.toString() == \"\") {\r\n this.declaracao.valores.valorTarifas = 0;\r\n // this.valid = false;\r\n // this.toastr.error('Por favor, informe o valor total de tarifas.', Mensagens.OOPS);\r\n }\r\n if (this.declaracao.valores.totalImposto == null || this.declaracao.valores.totalImposto.toString() == \"\") {\r\n this.declaracao.valores.totalImposto = 0;\r\n }\r\n\r\n if (this.declaracao.frete.codigoTipoCarga == null || this.declaracao.frete.codigoTipoCarga == 0) {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe um tipo de carga.', Mensagens.OOPS);\r\n }\r\n\r\n if (!this.declaracao.frete.distanciaPercorrida == null || this.declaracao.frete.distanciaPercorrida.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe a distância percorrida.', Mensagens.OOPS);\r\n } \r\n\r\n if (this.validFreteRetorno && (this.declaracao.frete.freteRetorno.cepRetorno == null || this.declaracao.frete.freteRetorno.cepRetorno.toString() == \"\")) {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe o cep de retorno.', Mensagens.OOPS);\r\n }\r\n\r\n if (this.validFreteRetorno && (this.declaracao.frete.freteRetorno.distanciaRetorno == null)) {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe a distância de retorno.', Mensagens.OOPS);\r\n }\r\n }\r\n\r\n executarValidacoesPagamento() {\r\n if ((this.declaracao.informacoesPagamento.formaPagamento != 1 && this.declaracao.informacoesPagamento.formaPagamento != 5)) {\r\n if (!this.declaracao.informacoesPagamento.dadosBancarios.codigoBacen || this.declaracao.informacoesPagamento.dadosBancarios.codigoBacen.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe o banco.', Mensagens.OOPS);\r\n }\r\n } \r\n if (this.declaracao.informacoesPagamento.formaPagamento.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe a forma de pagamento.', Mensagens.OOPS);\r\n }\r\n if ((this.declaracao.informacoesPagamento.formaPagamento != 1 && this.declaracao.informacoesPagamento.formaPagamento != 5) && this.declaracao.informacoesPagamento.dadosBancarios.cpfCnpjConta.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe o CPF/CNPJ da conta.', Mensagens.OOPS);\r\n }\r\n if ((this.declaracao.informacoesPagamento.formaPagamento != 1 && this.declaracao.informacoesPagamento.formaPagamento != 5) && this.declaracao.informacoesPagamento.dadosBancarios.agencia.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe a agência para pagamento.', Mensagens.OOPS);\r\n }\r\n if ((this.declaracao.informacoesPagamento.formaPagamento != 1 && this.declaracao.informacoesPagamento.formaPagamento != 5) && this.declaracao.informacoesPagamento.dadosBancarios.conta.toString() == \"\") {\r\n this.valid = false;\r\n this.toastr.error('Por favor, informe a conta para pagamento.', Mensagens.OOPS);\r\n }\r\n }\r\n\r\n executarValidacoesTransportador() {\r\n if (this.declaracao.frete.proprietario.cpfCnpj.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CPF/CNPJ do transportador.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.frete.proprietario.nomeRazaoSocial.toString() == \"\") {\r\n this.toastr.error('Por favor, informe a razão social do transportador.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.frete.proprietario.endereco.cep.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CEP do transportador.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.frete.proprietario.endereco.logradouro.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o logradouro do transportador.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.frete.proprietario.endereco.codigoMunicipio == undefined || this.declaracao.frete.proprietario.endereco.codigoMunicipio.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o município do transportador.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n\r\n executarValidacoesContratante() {\r\n if (this.declaracao.contratante.cpfCnpj.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CPF/CNPJ do contratante.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n\r\n if (TipoViagem.Padrao != this.viagemComponent.tipoViagem && (!this.declaracao.contratante.rntrc || this.declaracao.contratante.rntrc == \"\")) {\r\n this.toastr.error('Por favor, informe o RNTRC do contratante.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n\r\n if (this.declaracao.contratante.nomeRazaoSocial.toString() == \"\") {\r\n this.toastr.error('Por favor, informe a razão social do contratante.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.contratante.endereco.cep.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CEP do contratante.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.contratante.endereco.logradouro.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o logradouro do contratante.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.contratante.endereco.codigoMunicipio == undefined || this.declaracao.contratante.endereco.codigoMunicipio.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o município do contratante.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n\r\n executarValidacoesRemetente() {\r\n if (TipoViagem.TAC_Agregado == this.viagemComponent.tipoViagem) {\r\n return;\r\n }\r\n if (this.declaracao.remetente.cpfCnpj.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CPF/CNPJ do remetente.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.remetente.nomeRazaoSocial.toString() == \"\") {\r\n this.toastr.error('Por favor, informe a razão social do remetente.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.remetente.endereco.cep.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CEP do remetente.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.remetente.endereco.logradouro.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o logradouro do remetente.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.remetente.endereco.codigoMunicipio == undefined || this.declaracao.remetente.endereco.codigoMunicipio.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o município do remetente.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n\r\n executarValidacoesDestinatario() {\r\n if (TipoViagem.TAC_Agregado == this.viagemComponent.tipoViagem) {\r\n return;\r\n }\r\n if (this.declaracao.destinatario.cpfCnpj.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CPF/CNPJ do destinatario.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.destinatario.nomeRazaoSocial.toString() == \"\") {\r\n this.toastr.error('Por favor, informe a razão social do destinatario.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.destinatario.endereco.cep.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CEP do destinatario.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.destinatario.endereco.logradouro.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o logradouro do destinatario.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.destinatario.endereco.codigoMunicipio == undefined || this.declaracao.destinatario.endereco.codigoMunicipio.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o município do destinatario.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n\r\n executarValidacoesConsignatario() {\r\n if (TipoViagem.TAC_Agregado == this.viagemComponent.tipoViagem) {\r\n return;\r\n }\r\n if (this.declaracao.consignatario.cpfCnpj != \"\" || this.declaracao.consignatario.nomeRazaoSocial != \"\") {\r\n if (this.declaracao.consignatario.cpfCnpj.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CPF/CNPJ do consignatário.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.consignatario.nomeRazaoSocial.toString() == \"\") {\r\n this.toastr.error('Por favor, informe a razão social do consignatário.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.consignatario.endereco.cep.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o CEP do consignatário.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.consignatario.endereco.logradouro.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o logradouro do consignatário.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n if (this.declaracao.consignatario.endereco.codigoMunicipio == undefined || this.declaracao.consignatario.endereco.codigoMunicipio.toString() == \"\") {\r\n this.toastr.error('Por favor, informe o município do consignatário.', Mensagens.OOPS);\r\n this.valid = false;\r\n }\r\n }\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n this.toastr.error(\"Não foi possível realizar a declaração\", Mensagens.OOPS)\r\n }\r\n\r\n onSaveComplete(result): void {\r\n if (result.Retorno.Sucesso) {\r\n this.router.navigate(['consulta-ciot', result.Retorno.CIOT, result.Retorno.SenhaAlteracao, this.motoristaComponent.motoristaForm.value.cpf, this.contratanteComponent.contratanteForm.value.cpfCnpj, this.viagemComponent.viagemForm.value.cepOrigem, this.viagemComponent.viagemForm.value.cepDestino, true], { skipLocationChange: true });\r\n } else {\r\n if (result.Retorno.Excecao != null) {\r\n let msgSplited = result.Retorno.Excecao.Mensagem.split(\"\\r\\n\");\r\n if (msgSplited != null && msgSplited != undefined && msgSplited.length > 1) {\r\n msgSplited.pop();\r\n msgSplited.forEach(msgSplited => {\r\n this.toastr.error(msgSplited, Mensagens.OOPS);\r\n });\r\n } else {\r\n this.toastr.error(result.Retorno.Excecao.Mensagem, Mensagens.OOPS);\r\n }\r\n } else {\r\n this.toastr.error(result.Mensagem, Mensagens.OOPS);\r\n }\r\n }\r\n }\r\n\r\n voltar() {\r\n this.router.navigate(['/'], { skipLocationChange: true });\r\n }\r\n}\r\n\r\nexport class CheckDestinacaoComercial {\r\n name: string;\r\n id: number;\r\n check: boolean;\r\n}","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Dados Pessoais\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Endereço\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Cidade não encontrada
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Contato\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Veículos\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
AçãoPlacaRNTRC
\\r\\n \\r\\n {{veiculo.placa | placaAutomovel}}{{veiculo.rntrc}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\"","import {AfterViewInit, Component, ElementRef, Input, OnInit, ViewChildren} from '@angular/core';\r\nimport {FormBuilder, FormControlName, FormGroup, Validators} from \"@angular/forms\";\r\nimport {Router} from \"@angular/router\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport {GenericValidator} from \"../../../commom/generic.form.validator\";\r\nimport {Veiculo} from \"../../../ciot/models/veiculo\"\r\nimport {Cidade} from \"../../models/cidade\";\r\nimport {RetornoCidades} from \"../../models/cidade\";\r\nimport {AutoCompleteService} from '../../services/autocomplete.service';\r\nimport {ToastsManager} from 'ng2-toastr';\r\nimport {TypeaheadMatch} from 'ngx-bootstrap/typeahead';\r\nimport {CiotService} from '../../services/ciot.service';\r\nimport {Mensagens} from '../../util/enums';\r\n\r\n@Component({\r\n selector: 'app-transportador-veiculos',\r\n templateUrl: './transportador-veiculos.component.html',\r\n styles: []\r\n})\r\nexport class TransportadorVeiculosComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public transportadorForm: FormGroup;\r\n public veiculoForm: FormGroup;\r\n public veiculo: Veiculo;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n public veiculoList: Array = [];\r\n public cidade: RetornoCidades;\r\n\r\n // AutoComplete fields\r\n cidadeList: Array = [];\r\n noResult = false;\r\n cidadeCompleterText: string;\r\n\r\n @Input() public CpfCnpjTransportador: string;\r\n @Input() public RNTRCTransportador: string;\r\n @Input() public NomeRazaoSocialTransportador: string;\r\n\r\n constructor(private fb: FormBuilder,\r\n private ciotService: CiotService,\r\n private autoCompleteService: AutoCompleteService,\r\n private router: Router,\r\n private toastr: ToastsManager) {\r\n\r\n this.ciotService.consultarCidades(\"\")\r\n .subscribe(\r\n result => {\r\n this.cidadeList = result;\r\n },\r\n error => { }\r\n );\r\n\r\n this.validationMessages = {\r\n cpfCnpj: {\r\n required: 'O CPF/CNPJ é obrigatório.'\r\n },\r\n rntrc: {\r\n required: 'O RNTRC é obrigatório.'\r\n },\r\n nome: {\r\n required: 'O nome é obrigatório.'\r\n },\r\n nomeFantasia: {\r\n required: 'A cidade destino é obrigatório.',\r\n },\r\n cep: {\r\n required: 'O CEP é obrigatório.',\r\n },\r\n logradouro: {\r\n required: 'O logradouro é obrigatório.',\r\n },\r\n numero: {\r\n required: 'O número é obrigatório.',\r\n },\r\n cidade: {\r\n required: 'A Cidade é obrigatória.',\r\n },\r\n bairro: {\r\n required: 'O bairro é obrigatório.',\r\n },\r\n complemento: {\r\n required: 'O complemento é obrigatório.',\r\n },\r\n telefone: {\r\n required: 'O telefone é obrigatório.',\r\n },\r\n email: {\r\n required: 'O email é obrigatório.',\r\n },\r\n placa: {\r\n required: 'A placa do veículo é obrigatória.',\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n // AutoComplete métodos\r\n typeaheadNoResults(event: boolean): void {\r\n this.noResult = event;\r\n this.cidade = undefined;\r\n }\r\n\r\n onSelectCidade(event: TypeaheadMatch): void {\r\n this.cidade = event.item;\r\n }\r\n\r\n ngOnInit() {\r\n this.transportadorForm = this.fb.group({\r\n cpfCnpj: ['', [Validators.required]],\r\n rntrc: ['', [Validators.required]],\r\n nome: ['', [Validators.required]],\r\n nomeFantasia: ['', [Validators.required]],\r\n cep: ['', [Validators.required]],\r\n logradouro: ['', [Validators.required]],\r\n numero: ['', [Validators.required]],\r\n cidade: ['', [Validators.required]],\r\n bairro: ['', [Validators.required]],\r\n complemento: ['', [Validators.required]],\r\n telefone: ['', [Validators.required]],\r\n email: ['',]\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n this.veiculoForm = this.fb.group({\r\n placa: ['', Validators.required],\r\n rntrc: ['', Validators.required],\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n\r\n this.transportadorForm.controls['nome'].setValue(this.NomeRazaoSocialTransportador);\r\n this.transportadorForm.controls['rntrc'].setValue(this.RNTRCTransportador);\r\n this.transportadorForm.controls['cpfCnpj'].setValue(this.CpfCnpjTransportador);\r\n this.transportadorForm.controls['nomeFantasia'].setValue(this.NomeRazaoSocialTransportador);\r\n this.transportadorForm.value.nome = this.NomeRazaoSocialTransportador;\r\n this.transportadorForm.value.rntrc = this.RNTRCTransportador;\r\n this.transportadorForm.value.cpfCnpj = this.CpfCnpjTransportador;\r\n this.transportadorForm.value.nomeFantasia = this.NomeRazaoSocialTransportador;\r\n\r\n this.transportadorForm.controls['nome'].disable();\r\n this.transportadorForm.controls['rntrc'].disable();\r\n this.transportadorForm.controls['cpfCnpj'].disable();\r\n this.transportadorForm.controls['nomeFantasia'].disable();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n this.veiculoForm.setParent(this.transportadorForm);\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.transportadorForm);\r\n });\r\n }\r\n\r\n adicionarVeiculo() {\r\n if (this.veiculoForm.dirty && this.veiculoForm.valid) {\r\n \r\n this.veiculoForm.value.rntrc = this.veiculoForm.value.rntrc.length == 9 && this.veiculoForm.value.rntrc.substring(1,0) == \"0\" ? this.veiculoForm.value.rntrc.substring(9,1) : this.veiculoForm.value.rntrc;\r\n this.veiculo = this.veiculoForm.value;\r\n this.veiculo.placa = this.veiculo.placa.toUpperCase().replace('-','');\r\n\r\n if (this.validarVeiculo(this.veiculo)) return;\r\n\r\n this.veiculoList.push(this.veiculo);\r\n this.veiculoForm.reset();\r\n this.ngFocus();\r\n }\r\n }\r\n\r\n validarVeiculo(veiculo: Veiculo): boolean {\r\n var regexp = new RegExp(/[a-zA-Z]{3}-?\\d{4}/),\r\n test = regexp.test(veiculo.placa);\r\n if (!test || veiculo.placa.length > 8) {\r\n this.toastr.error(\"A placa informada é inválida.\", Mensagens.OOPS);\r\n return true;\r\n }\r\n\r\n for (let index = 0; index < this.veiculoList.length; index++) {\r\n if (this.veiculoList[index].placa == veiculo.placa) {\r\n this.toastr.error(\"Este veículo já foi adicionado\", \"Oops!\");\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n // omitSpecialChar(event) {\r\n // var k;\r\n // k = event.charCode;\r\n // return ((k > 64 && k < 91) || (k > 96 && k < 123) || k == 8 || k == 32 || (k >= 48 && k <= 57));\r\n // }\r\n\r\n removerVeiculo(veiculo) {\r\n this.veiculoList\r\n for (var i = 0; i < this.veiculoList.length; i++) {\r\n if (this.veiculoList[i].placa == veiculo.placa) {\r\n var index = this.veiculoList.indexOf((this.veiculoList[i]));\r\n this.veiculoList.splice(index, 1)\r\n }\r\n }\r\n }\r\n\r\n ngFocus() {\r\n let inputField: HTMLElement = document.querySelectorAll('.dialog input')[0];\r\n inputField && inputField.focus();\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.transportadorForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Padrão  \\r\\n TAC-agregado\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Ex: 01/01/2001\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Ex: 01/01/2001\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
Cidade não encontrada
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
Natureza não encontrada
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import { AfterViewInit, Component, ElementRef, OnInit, ViewChildren } from '@angular/core';\r\nimport { FormBuilder, FormControlName, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { BsDatepickerConfig, BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { defineLocale, listLocales } from 'ngx-bootstrap/chronos'\r\nimport { ptBrLocale } from 'ngx-bootstrap/locale';\r\n\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../../commom/generic.form.validator\";\r\n\r\nimport { Cidade } from '../../models/cidade';\r\nimport { NaturezaCarga } from '../../models/natureza-carga';\r\nimport { RetornoNatureza } from '../../models/natureza-carga';\r\nimport { Estado } from '../../models/estado';\r\nimport { Tipos } from '../../models/tipoCarga';\r\nimport { TipoCarga } from '../../models/tipoCarga';\r\nimport { AutoCompleteService } from '../../services/autocomplete.service';\r\nimport { CiotTabsService } from '../../services/ciot-tabs.service';\r\nimport { TipoViagem } from '../../util/enums';\r\nimport { CiotService } from '../../services/ciot.service';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead';\r\nimport { ContratanteComponent } from '../contratante/contratante.component'\r\nimport { RemetenteComponent } from '../remetente/remetente.component'\r\nimport { CodigoIBGE } from '../../models/codigoIBGE';\r\nimport { Cidades } from '../../models/codigoIBGE';\r\n\r\n@Component({\r\n selector: 'app-viagem',\r\n templateUrl: './viagem.component.html',\r\n})\r\nexport class ViagemComponent implements OnInit, AfterViewInit {\r\n\r\n locale = ptBrLocale;\r\n locales = listLocales();\r\n\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n bsConfig: Partial;\r\n\r\n public errors: any[] = [];\r\n public viagemForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public value: Date = new Date(2000, 2, 10);\r\n public naturezaCarga: NaturezaCarga;\r\n public naturezaCargaSelect: RetornoNatureza;\r\n public tipoCarga: Tipos;\r\n public codigoIBGESelect: Cidades;\r\n public cidadeIBGE: CodigoIBGE;\r\n estado: Estado = new Estado();\r\n public tipoViagem: string = TipoViagem.Padrao;\r\n\r\n // AutoComplete fields\r\n cidadeList: Array = [];\r\n naturezaCargaList: Array = [];\r\n tipoCargaList: Array = [];\r\n cidadeIBGEList: Array = [];\r\n\r\n noResultOrigem = false;\r\n noResultDestino = false;\r\n noResultNatureza = false;\r\n noResultCodigoIBGE = false;\r\n\r\n // cidadeOrigemCompleterText: string;\r\n // cidadeDestinoCompleterText: string;\r\n naturezaCompleterText: string;\r\n codigoIBGECompleterText: string;\r\n\r\n dataInicio = new Date();\r\n dataFim = new Date();\r\n\r\n constructor(private fb: FormBuilder,\r\n private autoCompleteService: AutoCompleteService,\r\n private ciotTabsService: CiotTabsService,\r\n private contratenteComp: ContratanteComponent,\r\n private remetenteComp: RemetenteComponent,\r\n private ciotService: CiotService,\r\n private router: Router,\r\n private localeService: BsLocaleService) {\r\n defineLocale(\"ptbr\", ptBrLocale)\r\n\r\n this.bsConfig = Object.assign({}, { containerClass: \"theme-red\" });\r\n this.localeService.use(\"ptbr\");\r\n\r\n this.ciotService.consultarNaturezaCarga(\"\")\r\n .subscribe(\r\n result => {\r\n this.naturezaCargaList = result;\r\n },\r\n error => {\r\n }\r\n );\r\n\r\n this.ciotService.consultarTiposCarga(\"\")\r\n .subscribe(\r\n result => {\r\n this.tipoCargaList = result.Retorno;\r\n },\r\n error => {\r\n }\r\n );\r\n\r\n\r\n this.validationMessages = {\r\n dtInicioFrete: {\r\n required: 'A data início do frete é obrigatório.'\r\n },\r\n dtTerminoFrete: {\r\n required: 'A data término do frete é obrigatório.'\r\n },\r\n naturezaCarga: {\r\n required: 'A natureza da carga é obrigatório.',\r\n },\r\n valorFrete: {\r\n required: 'O valor do frete é obrigatório.',\r\n },\r\n quantidadeTarifas: {\r\n required: 'A quantidade de tarifas é obrigatório.',\r\n },\r\n valorTotalTarifas: {\r\n required: 'O valor total das tarifas é obrigatório.',\r\n },\r\n pesoCarga: {\r\n required: 'O peso da carga é obrigatório.'\r\n },\r\n tipoCarga: {\r\n required: 'O tipo da carga é obrigatório.'\r\n },\r\n cidadeIBGE: {\r\n required: 'O código IBGE da cidade é obrigatório.'\r\n },\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n typeaheadNoResultsNatureza(event: boolean): void {\r\n this.noResultNatureza = event;\r\n this.naturezaCarga = undefined;\r\n }\r\n\r\n typeaheadNoResultsCodigoIBGE(event: boolean): void {\r\n this.noResultCodigoIBGE = event;\r\n this.cidadeIBGE = undefined;\r\n }\r\n\r\n onSelectNatureza(event: TypeaheadMatch): void {\r\n this.naturezaCargaSelect = event.item;\r\n }\r\n\r\n onChoosedTipoCarga(evento) {\r\n this.tipoCarga = evento;\r\n }\r\n\r\n onChoosedCidadeByIBGE(evento: TypeaheadMatch): void {\r\n this.codigoIBGESelect = evento.item;\r\n }\r\n\r\n ngOnInit() {\r\n this.viagemForm = this.fb.group({\r\n dtInicioFrete: [[Validators.required]],\r\n dtTerminoFrete: ['', Validators.required],\r\n naturezaCarga: ['',],\r\n tipoCarga: ['', [Validators.required]],\r\n cidadeIBGE: ['', [Validators.required]],\r\n valorTotalTarifas: ['',],\r\n pesoCarga: ['', Validators.required],\r\n valorDespesas: ['',],\r\n totalImposto: ['',],\r\n valorCombustivel: ['',],\r\n totalPedagio: ['',],\r\n valorFrete: ['', Validators.required],\r\n quantidadeTarifas: ['', Validators.required],\r\n autoDesempenho: [, []],\r\n freteRetorno: [, []],\r\n cepRetorno: ['',],\r\n distanciaRetorno: ['',],\r\n distanciaPercorrida: ['',],\r\n destinacaoComercial: [{ id: 2, name: 'destinacaoComercial', check: true },],\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n this.viagemForm.controls['dtInicioFrete'].setValue(this.currentDate());\r\n this.viagemForm.controls['dtTerminoFrete'].setValue(this.currentDate());\r\n\r\n document.getElementById('idCepRetorno').hidden = true;\r\n document.getElementById('idDistanciaRetorno').hidden = true;\r\n this.onChanges();\r\n }\r\n\r\n onChanges() {\r\n this.viagemForm.get(\"freteRetorno\").valueChanges.subscribe(value => {\r\n if (value) {\r\n document.getElementById('idCepRetorno').hidden = false;\r\n document.getElementById('idDistanciaRetorno').hidden = false;\r\n } else {\r\n document.getElementById('idCepRetorno').hidden = true;\r\n document.getElementById('idDistanciaRetorno').hidden = true;\r\n }\r\n });\r\n\r\n this.viagemForm.get(\"autoDesempenho\").valueChanges.subscribe(value => {\r\n this.viagemForm.controls['autoDesempenho'].setValue = value;\r\n });\r\n }\r\n\r\n currentDate() {\r\n const currentDate = new Date();\r\n return currentDate.toISOString().substring(0, 10);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.viagemForm);\r\n });\r\n }\r\n\r\n onTipoViagemChanged() {\r\n let show = TipoViagem.Padrao == this.tipoViagem;\r\n if (show) {\r\n this.viagemForm.controls['dtInicioFrete'].enable();\r\n this.viagemForm.controls['dtInicioFrete'].setValue(this.currentDate());\r\n this.dataInicio = new Date();\r\n this.viagemForm.controls['pesoCarga'].enable();\r\n document.getElementById('idNaturezaCarga').hidden = false;\r\n document.getElementById('idPesoCarga').hidden = false;\r\n } else {\r\n this.dataInicio = new Date();\r\n this.viagemForm.controls['dtInicioFrete'].disable();\r\n this.viagemForm.controls['pesoCarga'].disable();\r\n this.viagemForm.controls['dtInicioFrete'].reset();\r\n this.viagemForm.controls['pesoCarga'].reset();\r\n this.viagemForm.controls['cepOrigem'].reset();\r\n this.viagemForm.controls['cepDestino'].reset();\r\n this.noResultDestino = false;\r\n this.noResultOrigem = false;\r\n this.noResultNatureza = false;\r\n this.naturezaCompleterText = null;\r\n this.codigoIBGECompleterText = null;\r\n document.getElementById('idNaturezaCarga').hidden = true;\r\n document.getElementById('idPesoCarga').hidden = true;\r\n }\r\n this.ciotTabsService.setVisible(show);\r\n this.contratenteComp.isVisible(show);\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.viagemForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Encerrar declaração de transporte\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Ex: 01/01/2001\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Ex: 01/01/2001\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Adicionar viagens\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
Natureza não encontrada
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
AçãoCidade origemCidade destinoNatureza da cargaPeso da cargaQuantidade de viagens
\\r\\n \\r\\n {{viagem.cidadeOrigem.nome}} - {{viagem.cidadeOrigem.uf}} {{viagem.cidadeDestino.nome}} - {{viagem.cidadeDestino.uf}}{{viagem.naturezaCarga.descricao}}{{viagem.pesoCarga}}{{viagem.qtdViagens}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","import {AfterViewInit, Component, ElementRef, EventEmitter, OnInit, Output, ViewChildren} from '@angular/core';\r\nimport {FormBuilder, FormControlName, FormGroup, Validators} from \"@angular/forms\";\r\nimport {ActivatedRoute, Router} from \"@angular/router\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport {GenericValidator} from \"../../commom/generic.form.validator\";\r\nimport {CiotService} from \"../../ciot/services/ciot.service\";\r\nimport {Subscription} from 'rxjs/Subscription';\r\nimport {DatePipe} from '@angular/common';\r\nimport {Viagem} from '../models/viagem';\r\nimport {Cidade} from '../models/cidade';\r\nimport {NaturezaCarga} from '../models/natureza-carga';\r\nimport {ConsultarSituacaoCiotRequest} from \"../models/consulta-ciot/consultar-situacao-ciot-request\";\r\nimport {CiotResponse} from \"../models/consulta-ciot/consulta-ciot-response\";\r\nimport {Ciot} from \"../models/ciot\";\r\nimport {DadosEncerramento} from '../models/encerramento/dados-encerramento';\r\nimport {\r\n EncerrarOperacaoTransporteRequest,\r\n EncerrarOperacaoTransporteResponse,\r\n ValoresEfetivos,\r\n ViagensOperacaoTransporte\r\n} from '../models/encerramento/encerrar-operacao-transporte';\r\nimport {ToastsManager} from 'ng2-toastr';\r\nimport {AutoCompleteService} from '../services/autocomplete.service';\r\nimport {Mensagens, TipoViagem} from '../util/enums';\r\nimport {TypeaheadMatch} from 'ngx-bootstrap/typeahead';\r\n\r\nimport {BsDatepickerConfig, BsLocaleService} from 'ngx-bootstrap/datepicker';\r\nimport {defineLocale, listLocales} from 'ngx-bootstrap/chronos'\r\nimport {ptBrLocale} from 'ngx-bootstrap/locale';\r\nimport { objEncerrar } from '../models/encerramento/obj-encerrar';\r\n\r\n@Component({\r\n selector: 'app-encerramento',\r\n templateUrl: './encerramento.component.html',\r\n styles: []\r\n})\r\nexport class EncerramentoComponent implements OnInit, AfterViewInit {\r\n\r\n locale = ptBrLocale;\r\n locales = listLocales();\r\n\r\n @ViewChildren(FormControlName, {read: ElementRef}) formInputElements: ElementRef[];\r\n\r\n bsConfig: Partial;\r\n\r\n public errors: any[] = [];\r\n public encerramentoForm: FormGroup;\r\n public viagemForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private title;\r\n public sub: Subscription;\r\n public value: Date = new Date(2000, 2, 10);\r\n public viagemList: Array = [];\r\n public viagem: Viagem;\r\n // public cidadeOrigem: Cidade;\r\n // public cidadeDestino: Cidade;\r\n public naturezaCarga: NaturezaCarga;\r\n private request: EncerrarOperacaoTransporteRequest;\r\n public ciotEncerramento: Ciot;\r\n private viagensOperacaoTransporte: ViagensOperacaoTransporte;\r\n public tipoViagemDescricao: string;\r\n public tipoViagem: number;\r\n\r\n ciotId: string;\r\n senha: string;\r\n @Output() resetForm = new EventEmitter();\r\n public codigoCidadeOrigem: string = \"\";\r\n public codigoCidadeDestino: string = \"\";\r\n public codigoNatureza: string = \"\";\r\n\r\n // AutoComplete fields\r\n cidadeList: Array = [];\r\n naturezaCargaList: Array = [];\r\n\r\n noResultOrigem = false;\r\n noResultDestino = false;\r\n noResultNatureza = false;\r\n\r\n cidadeOrigemCompleterText: string;\r\n cidadeDestinoCompleterText: string;\r\n naturezaCompleterText: string;\r\n\r\n dataInicio = new Date();\r\n dataFim = new Date();\r\n\r\n constructor(private fb: FormBuilder,\r\n private service: CiotService,\r\n private autoCompleteService: AutoCompleteService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private toastr: ToastsManager,\r\n private localeService: BsLocaleService) {\r\n\r\n defineLocale(\"ptbr\", ptBrLocale)\r\n\r\n this.bsConfig = Object.assign({}, {containerClass: \"theme-red\"});\r\n this.localeService.use(\"ptbr\");\r\n\r\n // this.service.consultarCidades(\"\")\r\n // .subscribe(\r\n // result => {\r\n // this.cidadeList = result;\r\n // },\r\n // error => {\r\n // }\r\n // );\r\n this.service.consultarNaturezaCarga(\"\")\r\n .subscribe(\r\n result => {\r\n this.naturezaCargaList = result;\r\n },\r\n error => {\r\n }\r\n );\r\n\r\n this.validationMessages = {\r\n // cidadeOrigem: {\r\n // required: 'A cidade origem do contratante é obrigatório.'\r\n // },\r\n // cidadeDestino: {\r\n // required: 'A cidade destino é obrigatório.',\r\n // },\r\n naturezaCarga: {\r\n required: 'A natureza da carga é obrigatório.',\r\n },\r\n valorFrete: {\r\n required: 'O valor do frete é obrigatório.',\r\n },\r\n quantidadeTarifas: {\r\n required: 'A quantidade de tarifas é obrigatório.',\r\n },\r\n valorTotalTarifas: {\r\n required: 'O valor total das tarifas é obrigatório.',\r\n },\r\n placa: {\r\n required: 'O valor total das tarifas é obrigatório.',\r\n },\r\n rntrcVeiculo: {\r\n required: 'O valor total das tarifas é obrigatório.',\r\n },\r\n pesoCarga: {\r\n required: 'O peso da carga é obrigatório.',\r\n }\r\n };\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n // AutoComplete métodos\r\n // typeaheadNoResultsOrigem(event: boolean): void {\r\n // this.noResultOrigem = event;\r\n // this.cidadeOrigem = undefined;\r\n // }\r\n\r\n // typeaheadNoResultsDestino(event: boolean): void {\r\n // this.noResultDestino = event;\r\n // this.cidadeDestino = undefined;\r\n // }\r\n\r\n typeaheadNoResultsNatureza(event: boolean): void {\r\n this.noResultNatureza = event;\r\n this.naturezaCarga = undefined;\r\n }\r\n\r\n // onSelectCidadeOrigem(event: TypeaheadMatch): void {\r\n // this.cidadeOrigem = event.item;\r\n // }\r\n\r\n // onSelectCidadeDestino(event: TypeaheadMatch): void {\r\n // this.cidadeDestino = event.item;\r\n // }\r\n\r\n onSelectNatureza(event: TypeaheadMatch): void {\r\n this.naturezaCarga = event.item;\r\n }\r\n\r\n consultarEncerramento() {\r\n this.ciotEncerramento = new Ciot();\r\n let a = new ConsultarSituacaoCiotRequest();\r\n a.ciot = this.ciotId;\r\n a.senhaAlteracao = this.senha;\r\n\r\n this.service.consultarCiot(a)\r\n .subscribe(\r\n response => this.preencherDadosInformativos(response, a.ciot, a.senhaAlteracao),\r\n error => {\r\n this.onError(error)\r\n }\r\n );\r\n }\r\n\r\n preencherDadosInformativos(ciotResponse: CiotResponse, ciotId: string, senha: string): void {\r\n\r\n this.ciotEncerramento.totalImposto = ciotResponse.Retorno.TotalImposto;\r\n this.ciotEncerramento.rntrc = ciotResponse.Retorno.RntrcProprietario;\r\n this.ciotEncerramento.contratado = ciotResponse.Retorno.NomeProprietario;\r\n this.ciotEncerramento.valorFrete = ciotResponse.Retorno.ValorFrete;\r\n this.ciotEncerramento.valorFretePago = ciotResponse.Retorno.ValorFrete;\r\n this.ciotEncerramento.totalPedagio = ciotResponse.Retorno.TotalPegadio;\r\n this.ciotEncerramento.encerrada = ciotResponse.Retorno.Encerrado;\r\n this.ciotEncerramento.valorDespesas = ciotResponse.Retorno.ValorDespesas;\r\n this.tipoViagemDescricao = Number(TipoViagem.Padrao) == ciotResponse.Retorno.TipoViagem ? Mensagens.PADRAO : Mensagens.TAC_AGREGADO;\r\n this.tipoViagem = ciotResponse.Retorno.TipoViagem\r\n\r\n var objRequest = new objEncerrar();\r\n objRequest.ciotId = ciotId;\r\n objRequest.senha = senha;\r\n this.service.consultarEncerramento(objRequest)\r\n .subscribe(\r\n result => this.preencherDadosEncerrar(result))\r\n error => {\r\n this.onError(error)\r\n }\r\n }\r\n\r\n preencherDadosEncerrar(dadosEncerramento: DadosEncerramento): void {\r\n this.encerramentoForm.markAsDirty; \r\n this.dataInicio = new Date(new DatePipe('en-US').transform(String(dadosEncerramento.Retorno.DataInicioViagem).substr(0,10), \"MM/dd/yyyy\"));\r\n var dataFinal = new Date(new DatePipe('en-US').transform(String(dadosEncerramento.Retorno.DataFimViagem).substr(0,10), \"MM/dd/yyyy\"));\r\n var dataAgora = new Date();\r\n\r\n if(dataFinal > dataAgora)\r\n this.dataFim = dataAgora;\r\n else\r\n this.dataFim = dataFinal;\r\n\r\n\r\n // this.codigoCidadeOrigem = dadosEncerramento.codigoMunicipioOrigem\r\n // this.codigoCidadeDestino = dadosEncerramento.codigoMunicipioDestino;\r\n\r\n this.codigoNatureza = dadosEncerramento.Retorno.CodigoNaturezaCarga;\r\n this.ciotEncerramento.ciot = dadosEncerramento.Retorno.CIOT;\r\n this.ciotEncerramento.pesoCarga = dadosEncerramento.Retorno.PesoCarga ? dadosEncerramento.Retorno.PesoCarga : 0;\r\n this.ciotEncerramento.senha = dadosEncerramento.Retorno.SenhaAlteracao;\r\n this.ciotEncerramento.tipoViagem = dadosEncerramento.Retorno.TipoViagem;\r\n\r\n this.ciotEncerramento.quantidadeTarifas = dadosEncerramento.Retorno.QuantidadeTarifas;\r\n this.ciotEncerramento.valorTotalTarifas = dadosEncerramento.Retorno.ValorTarifas;\r\n if (Number(TipoViagem.Padrao) == dadosEncerramento.Retorno.TipoViagem) {\r\n this.encerramentoForm.controls['totalImposto'].disable();\r\n this.encerramentoForm.controls['totalPedagio'].disable();\r\n this.encerramentoForm.controls['valorFretePago'].disable();\r\n this.encerramentoForm.controls['valorDespesas'].disable();\r\n }\r\n\r\n this.encerramentoForm.setValue(this.ciotEncerramento);\r\n\r\n this.service.consultarNaturezaCargaById(this.codigoNatureza)\r\n .subscribe(\r\n result => {\r\n this.naturezaCarga = result[0];\r\n if(this.naturezaCarga != undefined)\r\n this.naturezaCompleterText = this.naturezaCarga.Retorno.DESCRICAO;\r\n })\r\n error => {\r\n this.onError(error)\r\n }\r\n }\r\n\r\n adicionarViagem() {\r\n if (this.viagemForm.dirty && this.viagemForm.valid) {\r\n this.viagem = this.viagemForm.value;\r\n\r\n // this.viagem.cidadeOrigem = this.cidadeOrigem;\r\n // this.viagem.cidadeDestino = this.cidadeDestino;\r\n this.viagem.naturezaCarga = this.naturezaCarga;\r\n\r\n for (let index = 0; index < this.viagemList.length; index++) {\r\n\r\n if (this.viagemList[index].cidadeDestino.Retorno.ID_CIDADE == this.viagem.cidadeDestino.Retorno.ID_CIDADE\r\n && this.viagemList[index].cidadeOrigem.Retorno.ID_CIDADE == this.viagem.cidadeOrigem.Retorno.ID_CIDADE\r\n && this.viagemList[index].naturezaCarga.Retorno.CODIGO == this.viagem.naturezaCarga.Retorno.CODIGO) {\r\n this.toastr.error(\"Esta viagem já foi adicionado\", \"Oops!\");\r\n return;\r\n }\r\n }\r\n\r\n\r\n this.viagemList.push(this.viagem);\r\n this.viagemForm.reset();\r\n this.encerramentoForm.markAsDirty();\r\n this.encerramentoForm.markAsDirty;\r\n\r\n this.cidadeDestinoCompleterText = null;\r\n // this.cidadeDestino = null\r\n\r\n this.cidadeOrigemCompleterText = null;\r\n // this.cidadeOrigem = null\r\n\r\n this.naturezaCompleterText = null;\r\n this.naturezaCarga = null\r\n }\r\n }\r\n\r\n removerViagem(viagem) {\r\n this.viagemList\r\n for (var i = 0; i < this.viagemList.length; i++) {\r\n if (this.viagemList[i].cidadeOrigem == viagem.cidadeOrigem && this.viagemList[i].cidadeDestino == viagem.cidadeDestino) {\r\n var index = this.viagemList.indexOf((this.viagemList[i]));\r\n this.viagemList.splice(index, 1)\r\n }\r\n }\r\n this.viagemForm.reset;\r\n }\r\n\r\n ngOnInit() {\r\n this.encerramentoForm = this.fb.group({\r\n ciot: ['', [Validators.required]],\r\n\r\n rntrc: ['',],\r\n contratado: ['',],\r\n valorFrete: ['',],\r\n totalImposto: ['',],\r\n totalPedagio: ['',],\r\n tipoViagem: ['',],\r\n senha: ['',],\r\n encerrada: ['',],\r\n pesoCarga: ['', [Validators.required]],\r\n quantidadeTarifas: ['',],\r\n valorTotalTarifas: ['',],\r\n valorFretePago: ['',],\r\n valorDespesas: ['',]\r\n\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n this.viagemForm = this.fb.group({\r\n pesoCarga: ['', [Validators.required, Validators.maxLength(5)]],\r\n qtdViagens: ['', [Validators.required]],\r\n });\r\n this.viagem = new Viagem();\r\n\r\n this.sub = this.route.params.subscribe(\r\n params => {\r\n this.ciotId = params['ciot'];\r\n this.senha = params['senha'];\r\n this.consultarEncerramento();\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.encerramentoForm);\r\n });\r\n }\r\n\r\n encerrar() {\r\n this.request = new EncerrarOperacaoTransporteRequest();\r\n this.request.valoresEfetivos = new ValoresEfetivos();\r\n this.request.ciot = this.ciotId;\r\n this.request.PesoCargaTotal = this.encerramentoForm.value.pesoCarga;\r\n this.request.valoresEfetivos.quantidadeTarifas = this.encerramentoForm.value.quantidadeTarifas;\r\n this.request.senhaAlteracao = this.senha;\r\n this.request.valoresEfetivos.valorTarifas = this.encerramentoForm.value.valorTotalTarifas;\r\n\r\n let viagensOperacaoTransporteList = new Array();\r\n this.viagemList.forEach(element => {\r\n let viagensOperacaoTransporte = new ViagensOperacaoTransporte();\r\n viagensOperacaoTransporte.codigoMunicipioOrigem = element.cidadeOrigem.Retorno.ID_CIDADE;\r\n viagensOperacaoTransporte.codigoMunicipioDestino = element.cidadeDestino.Retorno.ID_CIDADE;\r\n viagensOperacaoTransporte.codigoNaturezaCarga = element.naturezaCarga.Retorno.CODIGO;\r\n viagensOperacaoTransporte.pesoCarga = element.pesoCarga;\r\n viagensOperacaoTransporte.quantidadeViagens = element.qtdViagens;\r\n viagensOperacaoTransporteList.push(viagensOperacaoTransporte);\r\n });\r\n\r\n this.request.viagensOperacaoTransporte = viagensOperacaoTransporteList;\r\n\r\n this.service.encerrarOperacaoTransporte(this.request)\r\n .subscribe(\r\n response => this.onSaveComplete(response),\r\n error => {\r\n this.onError(error)\r\n }\r\n );\r\n }\r\n\r\n onSaveComplete(response: EncerrarOperacaoTransporteResponse): void {\r\n if (response.Retorno.Sucesso) {\r\n this.router.navigate(['/']).then(() => this.toastr.success('CIOT encerrado com sucesso!', Mensagens.SUCESSO));\r\n } else {\r\n if (response.Retorno.Excecao != null) {\r\n this.toastr.error(response.Retorno.Excecao.Mensagem, Mensagens.OOPS)\r\n } else {\r\n this.toastr.error(response.Mensagem, Mensagens.OOPS)\r\n\r\n }\r\n }\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n voltar() {\r\n this.router.navigate(['/']);\r\n }\r\n}","export class Banco {\r\n Retorno: Array;\r\n Sucesso: boolean;\r\n Mensagem: string; \r\n}\r\n\r\nexport class DadosRetornoBanco {\r\n CODIGO: string;\r\n NOME: string;\r\n}","export class CancelarOperacaoTransporte {\r\n ciot: string;\r\n motivoCancelamento: string;\r\n senhaAlteracao: string\r\n}","import { Veiculo } from \"./veiculo\";\r\n\r\nexport class Ciot {\r\n ciot: string;\r\n rntrc: string;\r\n contratado: string;\r\n dtInicioFrete: Date;\r\n dtTerminoFrete: Date;\r\n valorFrete: number;\r\n valorFretePago: number;\r\n totalImposto: number;\r\n totalPedagio: number;\r\n tipoViagem: number;\r\n senha: string;\r\n encerrada: boolean;\r\n aviso: string;\r\n pesoCarga: number;\r\n quantidadeTarifas: number;\r\n valorTotalTarifas: number;\r\n valorDespesas: number;\r\n}\r\n\r\nexport class CiotRetificacao {\r\n ciot: Ciot;\r\n veiculos: Array\r\n}","\r\nexport class ConsultarSituacaoCiotDTO {\r\n ciot: string;\r\n senha: string;\r\n contratado: string;\r\n rntrc: string;\r\n dtInicioFrete: string;\r\n dtTerminoFrete: string;\r\n valorFrete: number;\r\n totalImposto: number;\r\n totalPedagio: number;\r\n tipoViagem: string;\r\n encerrada: string;\r\n aviso: string;\r\n situacaoDeclaracao: string;\r\n}","\r\nexport class ConsultarSituacaoCiotRequest {\r\n ciot: string;\r\n senhaAlteracao: string;\r\n}","import { Excecao } from \"../common/excecao\";\r\n\r\nexport class ConsultaSituacaoTransportadorResponse {\r\n Sucesso: boolean;\r\n Mensagem: string;\r\n Retorno: DadosSituacaoTransportador;\r\n}\r\n\r\nclass DadosSituacaoTransportador {\r\n CpfCnpjTransportador: string;\r\n RNTRCTransportador: string;\r\n NomeRazaoSocialTransportador: string;\r\n RNTRCAtivo: boolean;\r\n DataValidadeRNTRC?: any;\r\n TipoTransportador: string;\r\n EquiparadoTAC: boolean;\r\n Excecao: Excecao;\r\n Sucesso: boolean;\r\n}\r\n\r\nexport class ConsultaSituacaoTransportadorRequest {\r\n CpfCnpjInteressado: string;\r\n CpfCnpjTransportador: string;\r\n RNTRCTransportador: string;\r\n}","import { Veiculo } from \"./veiculo\";\r\n\r\nexport class DeclararOperacaoTransporte {\r\n frete: Frete;\r\n contratante: Consignatario;\r\n destinatario: Consignatario;\r\n consignatario: Consignatario;\r\n remetente: Consignatario;\r\n veiculos: Veiculo[];\r\n valores: Valores;\r\n pagamento: Pagamento;\r\n informacoesPagamento: InformacoesPagamento;\r\n ciotAjuste: string;\r\n}\r\n\r\nexport class InformacoesPagamento {\r\n formaPagamento: number;\r\n dadosBancarios: DadosBancarios;\r\n}\r\n\r\nexport class DadosBancarios {\r\n cpfCnpjConta: string; \r\n bancoPagamento: string;\r\n agencia: string;\r\n conta: string;\r\n codigoBacen: string;\r\n}\r\n\r\nexport class Consignatario {\r\n nomeRazaoSocial: string;\r\n cpfCnpj: string;\r\n nomeFantasia: string;\r\n endereco: Endereco;\r\n tipoPessoa: string;\r\n rntrc?: string;\r\n}\r\n\r\nexport class Endereco {\r\n cep: string;\r\n codigoMunicipio: number;\r\n logradouro: string;\r\n numero: string;\r\n complemento: string;\r\n bairro: string;\r\n telefone: string;\r\n email: string;\r\n}\r\n\r\nexport class Frete {\r\n codigoMunicipioOrigem: number;\r\n codigoMunicipioDestino: number;\r\n dataInicioFrete: Date;\r\n dataTerminoFrete: Date;\r\n dadosComplementares: string;\r\n proprietario: Consignatario;\r\n motorista: Motorista;\r\n codigoNaturezaCarga: string;\r\n pesoCarga: number;\r\n tipoViagem: number;\r\n subContratacao: boolean;\r\n ciotPrincipal: string;\r\n cepOrigem: string;\r\n cepDestino: string;\r\n\r\n distanciaPercorrida: number;\r\n codigoTipoCarga: number;\r\n altodesempenho: boolean;\r\n destinacaoComercial: boolean;\r\n freteRetorno: FreteRetorno;\r\n}\r\n\r\nexport class FreteRetorno {\r\n cepRetorno: string;\r\n distanciaRetorno: string;\r\n}\r\n\r\nexport class Motorista {\r\n nome: string;\r\n cpfCnpj: string;\r\n numeroCNH: string;\r\n}\r\n\r\nexport class Pagamento {\r\n formaPagmento: number;\r\n parcelas: Parcela[];\r\n parcelaUnica: boolean;\r\n infoPagamento: string;\r\n bancoPagamento: string;\r\n agenciaPagamento: string;\r\n contaPagamento: string;\r\n}\r\n\r\nexport class Parcela {\r\n codigoParcela: string;\r\n valorParcela: number;\r\n vencimento: string;\r\n}\r\n\r\nexport class Valores {\r\n valorFrete: number;\r\n valorCombustivel: number;\r\n valorDespesas: number;\r\n totalImposto: number;\r\n totalPegadio: number;\r\n quantidadeTarifas: number;\r\n valorTarifas: number;\r\n}","import { Excecao } from \"../common/excecao\";\r\n\r\nexport class EncerrarOperacaoTransporteRequest {\r\n ciot: string;\r\n PesoCargaTotal : number;\r\n viagensOperacaoTransporte: ViagensOperacaoTransporte[];\r\n valoresEfetivos: ValoresEfetivos;\r\n senhaAlteracao: string;\r\n}\r\n\r\nexport class ViagensOperacaoTransporte {\r\n codigoMunicipioOrigem: number;\r\n codigoMunicipioDestino: number;\r\n codigoNaturezaCarga: string;\r\n pesoCarga: number;\r\n quantidadeViagens: number;\r\n}\r\n\r\nexport class ValoresEfetivos {\r\n valorFrete: number;\r\n valorCombustivel: number;\r\n valorDespesas: number;\r\n totalImposto: number;\r\n totalPegadio: number;\r\n quantidadeTarifas: number;\r\n valorTarifas: number;\r\n}\r\n\r\nexport interface EncerrarOperacaoTransporteResponse { \r\n Retorno: DadosRetornoEncerrarSucess;\r\n Sucesso: boolean;\r\n Mensagem: string;\r\n}\r\n\r\nclass DadosRetornoEncerrarSucess {\r\n CIOT: string;\r\n Excecao: Excecao;\r\n ProtocoloEncerramento: string;\r\n DataEncerramento: Date;\r\n Sucesso: boolean;\r\n}\r\n\r\n","export class objEncerrar {\r\n ciotId: string;\r\n senha: string;\r\n}","export class Estado {\r\n id: number;\r\n nome: string;\r\n sigla: string;\r\n ibge: number\r\n}","export class ObjImprimir {\r\n aDataInicio: string;\r\n aDataTermino: string; \r\n aCpfCnpjCliente: string;\r\n aCpfCnpjContratante: string;\r\n aCpfCnpjProprietario: string;\r\n aCpfCnpjMotorista: string;\r\n aTipoViagem: number;\r\n aStatus: number;\r\n cepOrigem: string;\r\n cepDestino: string;\r\n}","import { Veiculo } from \"../veiculo\";\r\nimport { Excecao } from \"../common/excecao\";\r\n\r\nexport class RetificarOperacaoTransporteRequest {\r\n ciot: string;\r\n veiculos: Veiculo[];\r\n codigoNaturezaCarga: string;\r\n pesoCarga: number;\r\n dataInicioViagem: Date;\r\n dataFimViagem: Date;\r\n codigoMunicipioOrigem: number;\r\n codigoMunicipioDestino: number;\r\n senhaAlteracao: string;\r\n quantidadeTarifas: number;\r\n valorTarifas: number;\r\n}\r\n\r\nexport class RetificarOperacaoTransporteResponse {\r\n Retorno: DadosRetornoRetificar;\r\n Sucesso: boolean;\r\n Mensagem: string\r\n}\r\n\r\nclass DadosRetornoRetificar {\r\n id: string;\r\n Excecao: ExcecaoRetificar;\r\n CIOT: string;\r\n DataRetificacao: Date;\r\n Sucesso: boolean;\r\n}\r\n\r\nclass ExcecaoRetificar {\r\n id: string;\r\n Tipo: number;\r\n Codigo: string;\r\n Mensagem: string;\r\n}\r\n\r\n","export class Veiculo {\r\n placa: string;\r\n rntrc: string;\r\n}","import { Ciot } from \"./ciot\";\r\nimport { Cidade } from \"./cidade\";\r\nimport { NaturezaCarga } from \"./natureza-carga\";\r\n\r\nexport class Viagem {\r\n cidadeOrigem: Cidade;\r\n cidadeDestino: Cidade;\r\n naturezaCarga: NaturezaCarga;\r\n pesoCarga: number;\r\n qtdViagens: number;\r\n}\r\n\r\nexport class ViagemEncerramento{\r\n ciot: Ciot \r\n viagens: Array;\r\n}","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Retificar declaração de transporte\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
R$
\\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
R$
\\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
R$
\\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Natureza não encontrada
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
R$
\\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Veículos\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
AçãoPlacaRNTRC
\\r\\n \\r\\n {{veiculo.placa | placaAutomovel}}{{veiculo.rntrc}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","import {AfterViewInit, Component, ElementRef, OnInit, ViewChildren} from '@angular/core';\r\nimport {FormBuilder, FormControlName, FormGroup, Validators} from \"@angular/forms\";\r\nimport {ActivatedRoute, Router} from \"@angular/router\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport {GenericValidator} from \"../../commom/generic.form.validator\";\r\nimport {Ciot, CiotRetificacao} from \"../../ciot/models/ciot\"\r\nimport {CiotService} from \"../../ciot/services/ciot.service\";\r\nimport {Subscription} from 'rxjs/Subscription';\r\nimport {DatePipe} from '@angular/common';\r\nimport {Veiculo} from '../models/veiculo';\r\nimport {ToastsManager} from 'ng2-toastr';\r\nimport {\r\n RetificarOperacaoTransporteRequest,\r\n RetificarOperacaoTransporteResponse\r\n} from '../models/retificacao/retificar-operacao-transporte';\r\nimport {DadosRetificar} from '../models/retificacao/dados-retificar';\r\nimport {Cidade} from '../models/cidade';\r\nimport {NaturezaCarga} from '../models/natureza-carga';\r\nimport { objRetificar } from '../models/retificacao/obj-retificar';\r\nimport {RetornoNatureza} from '../models/natureza-carga';\r\nimport {ConsultarSituacaoCiotRequest} from '../models/consulta-ciot/consultar-situacao-ciot-request';\r\nimport {CiotResponse} from '../models/consulta-ciot/consulta-ciot-response';\r\nimport {SelectedAutocompleteItem} from 'ng-auto-complete';\r\nimport {AutoCompleteService} from '../services/autocomplete.service';\r\nimport {Mensagens, TipoViagem} from '../util/enums';\r\nimport {AutoCompleteNaturezaService} from '../services/autocomplete-natureza.service';\r\nimport {TypeaheadMatch} from 'ngx-bootstrap/typeahead';\r\n\r\nimport { BsDatepickerConfig, BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport {defineLocale, listLocales} from 'ngx-bootstrap/chronos'\r\nimport { ptBrLocale } from 'ngx-bootstrap/locale';\r\n\r\n@Component({\r\n selector: 'app-retificacao',\r\n templateUrl: './retificacao.component.html',\r\n styles: [],\r\n})\r\nexport class RetificacaoComponent implements OnInit, AfterViewInit {\r\n\r\n locale = ptBrLocale;\r\n locales = listLocales();\r\n\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n bsConfig: Partial;\r\n\r\n public errors: any[] = [];\r\n public retificacaoForm: FormGroup;\r\n public veiculoForm: FormGroup;\r\n public ciotRetificacao: CiotRetificacao;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n public sub: Subscription;\r\n public value: Date = new Date(2000, 2, 10);\r\n public veiculoList: Array = [];\r\n public veiculo: Veiculo;\r\n private request: RetificarOperacaoTransporteRequest = new RetificarOperacaoTransporteRequest();\r\n private response: RetificarOperacaoTransporteResponse = new RetificarOperacaoTransporteResponse();\r\n ciotId: string;\r\n senha: string;\r\n // cidadeOrigem: Cidade = new Cidade();\r\n // cidadeDestino: Cidade = new Cidade();\r\n public naturezaCarga: NaturezaCarga;\r\n public naturezaCargaSelect: RetornoNatureza;\r\n private ciotResponse: CiotResponse;\r\n public codigoCidadeOrigem: string = \"\";\r\n public codigoCidadeDestino: string = \"\";\r\n public codigoNatureza: string = \"\";\r\n public tipoViagemDescricao: string;\r\n private dtInicio: Date;\r\n private dtFinal: Date;\r\n\r\n // AutoComplete fields\r\n cidadeList: Array = [];\r\n naturezaCargaList: Array = [];\r\n\r\n noResultOrigem = false;\r\n noResultDestino = false;\r\n noResultNatureza = false;\r\n\r\n cidadeOrigemCompleterText: string;\r\n cidadeDestinoCompleterText: string;\r\n naturezaCompleterText: string;\r\n public tipoViagem: string = TipoViagem.Padrao;\r\n\r\n dataInicio = new Date();\r\n dataFim = new Date();\r\n public naoPodeEditar : boolean;\r\n\r\n constructor(private fb: FormBuilder,\r\n private service: CiotService,\r\n private autoCompleteService: AutoCompleteService,\r\n private autoCompleteNaturezaService: AutoCompleteNaturezaService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private toastr: ToastsManager,\r\n private localeService: BsLocaleService) {\r\n\r\n defineLocale(\"ptbr\", ptBrLocale)\r\n\r\n this.bsConfig = Object.assign({}, { containerClass: \"theme-red\" });\r\n this.localeService.use(\"ptbr\");\r\n\r\n // this.service.consultarCidades(\"\")\r\n // .subscribe(\r\n // result => {\r\n // this.cidadeList = result;\r\n // },\r\n // error => { }\r\n // );\r\n this.service.consultarNaturezaCarga(\"\")\r\n .subscribe(\r\n result => {\r\n this.naturezaCargaList = result;\r\n },\r\n error => { }\r\n );\r\n this.validationMessages = {\r\n // cidadeOrigem: {\r\n // required: 'A cidade origem do contratante é obrigatório.'\r\n // },\r\n // cidadeDestino: {\r\n // required: 'A cidade destino é obrigatório.',\r\n // },\r\n naturezaCarga: {\r\n required: 'A natureza da carga é obrigatório.',\r\n },\r\n valorFrete: {\r\n required: 'O valor do frete é obrigatório.',\r\n },\r\n quantidadeTarifas: {\r\n required: 'A quantidade de tarifas é obrigatório.',\r\n },\r\n valorTotalTarifas: {\r\n required: 'O valor total das tarifas é obrigatório.',\r\n },\r\n placa: {\r\n required: 'A placa do veículo é obrigatória.',\r\n },\r\n rntrc: {\r\n required: 'RNTRC do veículo é obrigatório.',\r\n },\r\n pesoCarga: {\r\n required: 'O peso da carga é obrigatório.',\r\n },\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n this.veiculo = new Veiculo;\r\n\r\n }\r\n\r\n // AutoComplete métodos\r\n // typeaheadNoResultsOrigem(event: boolean): void {\r\n // this.noResultOrigem = event;\r\n // this.cidadeOrigem = undefined;\r\n // }\r\n\r\n // typeaheadNoResultsDestino(event: boolean): void {\r\n // this.noResultDestino = event;\r\n // this.cidadeDestino = undefined;\r\n // }\r\n\r\n typeaheadNoResultsNatureza(event: boolean): void {\r\n this.noResultNatureza = event;\r\n this.naturezaCarga = undefined;\r\n }\r\n\r\n // onSelectCidadeOrigem(event: TypeaheadMatch): void {\r\n // this.cidadeOrigem = event.item;\r\n // }\r\n\r\n // onSelectCidadeDestino(event: TypeaheadMatch): void {\r\n // this.cidadeDestino = event.item;\r\n // }\r\n\r\n onSelectNatureza(event: TypeaheadMatch): void {\r\n this.naturezaCargaSelect = event.item;\r\n }\r\n\r\n consultarCiot(ciotId: string, senha: string) {\r\n this.ciotRetificacao = new CiotRetificacao();\r\n this.ciotRetificacao.ciot = new Ciot();\r\n let a = new ConsultarSituacaoCiotRequest();\r\n a.ciot = ciotId;\r\n a.senhaAlteracao = senha;\r\n\r\n let ciotResponse;\r\n this.service.consultarCiot(a)\r\n .subscribe(\r\n response => this.preencherDadosInformativos(response, a.ciot, a.senhaAlteracao),\r\n error => { this.onError(error) }\r\n );\r\n }\r\n\r\n preencherDadosInformativos(ciotResponse: CiotResponse, ciotId: string, senha: string): void {\r\n this.ciotRetificacao.ciot.totalImposto = ciotResponse.Retorno.TotalImposto;\r\n this.ciotRetificacao.ciot.rntrc = ciotResponse.Retorno.RntrcProprietario;\r\n this.ciotRetificacao.ciot.contratado = ciotResponse.Retorno.NomeProprietario;\r\n this.ciotRetificacao.ciot.valorFrete = ciotResponse.Retorno.ValorFrete;\r\n this.ciotRetificacao.ciot.totalPedagio = ciotResponse.Retorno.TotalPegadio;\r\n this.ciotRetificacao.ciot.encerrada = ciotResponse.Retorno.Encerrado;\r\n this.ciotRetificacao.ciot.tipoViagem = ciotResponse.Retorno.TipoViagem;\r\n this.tipoViagemDescricao = Number(TipoViagem.Padrao) == ciotResponse.Retorno.TipoViagem ? Mensagens.PADRAO : Mensagens.TAC_AGREGADO;\r\n\r\n var objRetificar: objRetificar;\r\n objRetificar.ciotId = ciotId;\r\n objRetificar.senha = senha;\r\n\r\n this.service.consultarRetificacao(objRetificar)\r\n .subscribe(\r\n result => this.preencherDadosRetificar(result))\r\n error => { this.onError(error) }\r\n }\r\n\r\n preencherDadosRetificar(dadosRetificar: DadosRetificar): void {\r\n this.retificacaoForm.markAsDirty;\r\n // dadosRetificar.dataInicioViagem = new DatePipe('en-US').transform(dadosRetificar.dataInicioViagem, \"dd/MM/yyyy\");\r\n // dadosRetificar.ciot.dtTerminoFrete = new DatePipe('en-US').transform(dadosRetificar.ciot.dtTerminoFrete, \"dd/MM/yyyy\");\r\n\r\n this.ciotRetificacao.ciot.ciot = dadosRetificar.ciot;\r\n this.codigoCidadeOrigem = dadosRetificar.codigoMunicipioOrigem\r\n this.codigoCidadeDestino = dadosRetificar.codigoMunicipioDestino;\r\n this.codigoNatureza = dadosRetificar.codigoNaturezaCarga;\r\n\r\n // this.cidadeDestino.Retorno.ID_CIDADE = Number(dadosRetificar.codigoMunicipioDestino);\r\n this.dataInicio = new Date(dadosRetificar.dataInicioViagem);\r\n this.dataFim = new Date(dadosRetificar.dataFimViagem);\r\n // this.naturezaCarga.id = dadosRetificar.codigoNaturezaCarga;\r\n this.ciotRetificacao.ciot.pesoCarga = dadosRetificar.pesoCarga;\r\n this.ciotRetificacao.ciot.senha = dadosRetificar.senhaAlteracao;\r\n this.ciotRetificacao.ciot.tipoViagem = dadosRetificar.tipoViagem;\r\n this.tipoViagem = dadosRetificar.tipoViagem.toString();\r\n if (TipoViagem.TAC_Agregado == this.tipoViagem) {\r\n this.retificacaoForm.controls['pesoCarga'].disable();\r\n }\r\n this.ciotRetificacao.veiculos = dadosRetificar.veiculos;\r\n\r\n this.ciotRetificacao.ciot.quantidadeTarifas = dadosRetificar.quantidadeTarifas;\r\n this.ciotRetificacao.ciot.valorTotalTarifas = dadosRetificar.valorTarifas;\r\n\r\n this.retificacaoForm.setValue(this.ciotRetificacao.ciot);\r\n\r\n this.initiateVeiculo(dadosRetificar.veiculos != undefined && dadosRetificar.veiculos.length > 0 ? dadosRetificar.veiculos[0].rntrc : \"\");\r\n\r\n dadosRetificar.veiculos.forEach(v => {\r\n let veiculo = Object.assign({}, this.veiculo, v);\r\n this.veiculoList.push(veiculo);\r\n });\r\n var dataLimiteDeRetificarDados = new Date(this.dataInicio.toString());\r\n dataLimiteDeRetificarDados.setHours(24);\r\n var dataAtual = new Date(Date.now());\r\n this.naoPodeEditar = dataLimiteDeRetificarDados < dataAtual;\r\n if(this.naoPodeEditar){\r\n this.retificacaoForm.controls['quantidadeTarifas'].disable();\r\n this.retificacaoForm.controls['valorTotalTarifas'].disable();\r\n this.retificacaoForm.controls['pesoCarga'].disable();\r\n }\r\n\r\n // if (this.codigoCidadeOrigem != undefined && this.codigoCidadeOrigem != \"\") {\r\n // this.service.consultarCidadesByIBGE(Number(this.codigoCidadeOrigem))\r\n // .subscribe(\r\n // result => {\r\n // this.cidadeOrigem = result[0];\r\n // this.cidadeOrigemCompleterText = this.cidadeOrigem.Retorno.UF;\r\n // })\r\n // error => { this.onError(error) }\r\n // }\r\n\r\n // if (this.codigoCidadeDestino != undefined && this.codigoCidadeDestino != \"\") {\r\n // this.service.consultarCidadesByIBGE(Number(this.codigoCidadeDestino))\r\n // .subscribe(\r\n // result => {\r\n // this.cidadeDestino = result[0];\r\n // this.cidadeDestinoCompleterText = this.cidadeDestino.Retorno.UF;\r\n // })\r\n // error => { this.onError(error) }\r\n // }\r\n\r\n if (this.codigoNatureza != undefined && this.codigoNatureza != \"\") {\r\n this.service.consultarNaturezaCargaById(this.codigoNatureza)\r\n .subscribe(\r\n result => {\r\n this.naturezaCarga = result[0];\r\n this.naturezaCompleterText = this.naturezaCarga.Retorno.DESCRICAO;\r\n })\r\n error => { this.onError(error) }\r\n }\r\n }\r\n\r\n private initiateVeiculo(rntrc: string) {\r\n var veiculo = new Veiculo();\r\n veiculo.rntrc = rntrc;\r\n veiculo.placa = \"\";\r\n this.veiculoForm.setValue(veiculo);\r\n }\r\n\r\n adicionarVeiculo() {\r\n if (this.veiculoForm.dirty && this.veiculoForm.valid) {\r\n this.veiculo = this.veiculoForm.value;\r\n this.veiculo.placa = this.veiculo.placa.toUpperCase();\r\n\r\n if (this.validarVeiculo(this.veiculo)) return;\r\n\r\n this.veiculoList.push(this.veiculo);\r\n this.veiculoForm.reset();\r\n this.initiateVeiculo(this.veiculo.rntrc);\r\n }\r\n }\r\n\r\n validarVeiculo(veiculo: Veiculo): boolean {\r\n var regexp = new RegExp(/[a-zA-Z]{3}-?\\d{4}/),\r\n test = regexp.test(veiculo.placa);\r\n if (!test || veiculo.placa.length > 8) {\r\n this.toastr.error(\"A placa informada é inválida.\", Mensagens.OOPS);\r\n return true;\r\n }\r\n\r\n for (let index = 0; index < this.veiculoList.length; index++) {\r\n if (this.veiculoList[index].placa == veiculo.placa) {\r\n this.toastr.error(\"Este veículo já foi adicionado\", \"Oops!\");\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n removerVeiculo(veiculo) {\r\n this.veiculoList\r\n for (var i = 0; i < this.veiculoList.length; i++) {\r\n if (this.veiculoList[i].placa == veiculo.placa) {\r\n var index = this.veiculoList.indexOf((this.veiculoList[i]));\r\n this.veiculoList.splice(index, 1)\r\n }\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.retificacaoForm = this.fb.group({\r\n ciot: ['', [Validators.required]],\r\n\r\n rntrc: ['',],\r\n contratado: ['',],\r\n\r\n valorFrete: ['',],\r\n totalImposto: ['',],\r\n totalPedagio: ['',],\r\n tipoViagem: ['',],\r\n senha: ['',],\r\n encerrada: ['',],\r\n pesoCarga: ['',],\r\n quantidadeTarifas: ['',],\r\n valorTotalTarifas: ['',],\r\n\r\n // documentoContratante: ['', [Validators.required, Validators.minLength(11), Validators.maxLength(14)]],\r\n });\r\n\r\n this.veiculoForm = this.fb.group({\r\n placa: ['', Validators.required],\r\n rntrc: ['', Validators.required],\r\n });\r\n this.ciotRetificacao = new CiotRetificacao();\r\n\r\n this.sub = this.route.params.subscribe(\r\n params => {\r\n this.ciotId = params['ciot'];\r\n this.senha = params['senha'];\r\n this.consultarCiot(this.ciotId, this.senha);\r\n });\r\n\r\n }\r\n\r\n // consultarCidadesDestino(nome: string): void {\r\n // this.service.consultarCidades(nome)\r\n // .subscribe(\r\n // result => {\r\n // this.cidadeList = result;\r\n // if (this.cidadeDestinoCompleterText != undefined) {\r\n // // this.cidadeDestinoCompleter.SetValues(\"cidadeDestinoCompleter\", result);\r\n // }\r\n // },\r\n // error => { }\r\n // );\r\n\r\n // }\r\n\r\n // Selected(item: SelectedAutocompleteItem) {\r\n // if (item == undefined || item.item == null) {\r\n // return;\r\n // }\r\n // this.cidadeOrigem = item.item.original;\r\n // }\r\n\r\n // onKeypressCidadeDestino(event) {\r\n // if (event.target.value.length >= 3 && event.target.value.replace(/\\s/g, \"\") != \"\") {\r\n // this.consultarCidadesDestino(event.target.value);\r\n // }\r\n // }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.retificacaoForm);\r\n });\r\n }\r\n\r\n retificar() {\r\n this.request.ciot = this.retificacaoForm.value.ciot;\r\n if (Number(TipoViagem.Padrao) == this.ciotRetificacao.ciot.tipoViagem) {\r\n this.request.pesoCarga = this.retificacaoForm.value.pesoCarga;\r\n // this.request.codigoMunicipioDestino = this.cidadeDestino.Retorno.ID_CIDADE;\r\n // this.request.codigoMunicipioOrigem = this.cidadeOrigem.Retorno.ID_CIDADE;\r\n // = this.retificacaoForm.value.contratado;\r\n\r\n this.request.dataInicioViagem = this.dataInicio;\r\n this.request.dataFimViagem = this.dataFim;\r\n\r\n this.request.ciot = this.retificacaoForm.value.ciot;\r\n this.request.codigoNaturezaCarga = this.naturezaCargaSelect.CODIGO;\r\n }\r\n this.request.quantidadeTarifas = this.retificacaoForm.value.quantidadeTarifas;\r\n this.request.senhaAlteracao = this.retificacaoForm.value.senha;\r\n this.request.valorTarifas = this.retificacaoForm.value.valorTotalTarifas;\r\n this.request.veiculos = this.veiculoList;\r\n\r\n this.service.retificarOperacaoTransporte(this.request)\r\n .subscribe(\r\n response => this.onSaveComplete(response),\r\n error => { this.onError(error) }\r\n );\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(response: RetificarOperacaoTransporteResponse): void {\r\n if (response.Retorno.Sucesso) {\r\n this.router.navigate(['/']).then(() => this.toastr.success(Mensagens.CIOT_RETIFICADO_SUCESSO, Mensagens.SUCESSO));\r\n } else {\r\n if (response.Retorno.Excecao != null) {\r\n this.toastr.error(response.Retorno.Excecao.Mensagem, Mensagens.OOPS)\r\n } else {\r\n this.toastr.error(response.Mensagem, Mensagens.OOPS)\r\n\r\n }\r\n }\r\n }\r\n\r\n voltar() {\r\n this.router.navigate(['/']);\r\n }\r\n\r\n omitSpecialChar(event) {\r\n var k;\r\n k = event.charCode;\r\n return ((k > 64 && k < 91) || (k > 96 && k < 123) || k == 8 || k == 32 || (k >= 48 && k <= 57));\r\n }\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Subject } from \"rxjs/Subject\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { NgAutocompleteComponent } from \"ng-auto-complete\";\r\n\r\n@Injectable()\r\nexport class AutoCompleteCodigoIBGEService {\r\n\r\n private subject = new Subject();\r\n\r\n enviaCompleter(completer: NgAutocompleteComponent) {\r\n this.subject.next(completer);\r\n }\r\n\r\n recebeCompleter(): Observable {\r\n return this.subject.asObservable();\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Subject } from \"rxjs/Subject\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { NgAutocompleteComponent } from \"ng-auto-complete\";\r\n\r\n@Injectable()\r\nexport class AutoCompleteNaturezaService {\r\n\r\n private subject = new Subject();\r\n\r\n enviaCompleter(completer: NgAutocompleteComponent) {\r\n this.subject.next(completer);\r\n }\r\n\r\n recebeCompleter(): Observable {\r\n return this.subject.asObservable();\r\n }\r\n} ","import { Injectable } from \"@angular/core\";\r\nimport { Subject } from \"rxjs/Subject\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { NgAutocompleteComponent } from \"ng-auto-complete\";\r\n\r\n@Injectable()\r\nexport class AutoCompleteService {\r\n\r\n private subject = new Subject();\r\n private subject2 = new Subject();\r\n private subject3 = new Subject();\r\n private subject4 = new Subject();\r\n\r\n enviaMensagem(texto: string) {\r\n this.subject.next(texto);\r\n }\r\n\r\n enviaUf(uf: string) {\r\n this.subject2.next(uf);\r\n }\r\n\r\n enviaResetInput() {\r\n this.subject3.next();\r\n }\r\n\r\n enviaCompleter(completer: NgAutocompleteComponent) {\r\n this.subject4.next(completer);\r\n }\r\n\r\n recebeMensagem(): Observable {\r\n return this.subject.asObservable();\r\n }\r\n\r\n recebeUF(): Observable {\r\n return this.subject2.asObservable();\r\n }\r\n\r\n recebeResetInput(): Observable {\r\n return this.subject3.asObservable();\r\n }\r\n\r\n recebeCompleter(): Observable {\r\n return this.subject4.asObservable();\r\n }\r\n} ","import { Injectable, OnInit } from \"@angular/core\";\r\nimport { Subject } from \"rxjs/Subject\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { NgAutocompleteComponent } from \"ng-auto-complete\";\r\n\r\n@Injectable()\r\nexport class CiotTabsService implements OnInit {\r\n\r\n ngOnInit(): void {\r\n this.subject.next(true);\r\n }\r\n private subject = new Subject();\r\n\r\n setVisible(show: boolean) {\r\n this.subject.next(show);\r\n }\r\n\r\n isVisible(): Observable {\r\n return this.subject.asObservable();\r\n }\r\n} ","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { of } from 'rxjs/observable/of';\r\nimport { catchError, map, tap } from 'rxjs/operators';\r\n\r\nimport { Ciot, CiotRetificacao } from \"../models/ciot\";\r\nimport { DataReturn } from \"../models/base/data-return\";\r\nimport { ViagemEncerramento } from \"../models/viagem\";\r\nimport { Banco } from \"../models/banco\";\r\nimport { Cidade } from \"../models/cidade\";\r\nimport { NaturezaCarga } from \"../models/natureza-carga\";\r\nimport { CancelarOperacaoTransporte } from \"../models/cancelar-operacao-transporte\";\r\nimport { DeclararOperacaoTransporte } from \"../models/declarar-operacao-transporte\";\r\nimport { ConsultarSituacaoCiotRequest } from \"../models/consulta-ciot/consultar-situacao-ciot-request\";\r\nimport { ConsultarSituacaoCiot } from \"../models/consulta-ciot/consultar-situacao-ciot-response\";\r\nimport { CiotResponse } from \"../models/consulta-ciot/consulta-ciot-response\";\r\nimport { ConsultaSituacaoTransportadorRequest, ConsultaSituacaoTransportadorResponse } from \"../models/consulta-situacao-transportador/consulta-situacao-transportador\";\r\nimport { RetificarOperacaoTransporteRequest, RetificarOperacaoTransporteResponse } from \"../models/retificacao/retificar-operacao-transporte\";\r\nimport { DadosRetificar } from \"../models/retificacao/dados-retificar\";\r\nimport { DadosEncerramento } from \"../models/encerramento/dados-encerramento\";\r\nimport { EncerrarOperacaoTransporteRequest, EncerrarOperacaoTransporteResponse } from \"../models/encerramento/encerrar-operacao-transporte\";\r\nimport { Estado } from \"../models/estado\";\r\nimport { ReCaptcha } from \"../models/ReCaptcha\";\r\nimport { environment } from \"../../../environments/environment\";\r\nimport { objEncerrar } from \"../models/encerramento/obj-encerrar\";\r\nimport { objRetificar } from \"../models/retificacao/obj-retificar\";\r\nimport { ObjImprimir } from \"../models/objImprimir\";\r\nimport { TipoCarga } from \"../models/tipoCarga\";\r\nimport { CodigoIBGE } from \"../models/codigoIBGE\";\r\n\r\nconst httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n // 'x-auth-token': 'sotran-sotran-sotrantech',\r\n // 'x-audit-user-doc': '00000000000'\r\n 'Access-Control-Allow-Origin': '*'\r\n\r\n })\r\n};\r\n\r\n@Injectable()\r\nexport class CiotService {\r\n\r\n public static UrlBase: string = \"\";\r\n public static UrlWeb: string = \"\";\r\n\r\n constructor(private http: HttpClient) {\r\n if (CiotService.UrlBase == \"\") {\r\n CiotService.UrlBase = environment.url + \"\";\r\n }\r\n\r\n if (CiotService.UrlWeb == \"\") {\r\n CiotService.UrlWeb = CiotService.UrlBase + \"\";\r\n }\r\n }\r\n\r\n consultarBancos(): Observable {\r\n return this.http\r\n .get(CiotService.UrlWeb + \"Operacoes/GetBancos\")\r\n .pipe(\r\n tap(banco => this.log(`adicionado ciot`))\r\n );\r\n }\r\n\r\n consultarEstado(): Observable> {\r\n return this.http\r\n .get>(CiotService.UrlWeb + \"Consultas/Estados\")\r\n .pipe(\r\n tap(estado => this.log(`Consulta de estados`))\r\n );\r\n }\r\n\r\n consultarTiposCarga(txt: string): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/GetTiposCarga\", txt)\r\n .pipe(\r\n tap((ciot: TipoCarga) => this.log(`consulta tipo carga`))\r\n );\r\n }\r\n\r\n consultarCidadesByIBGE(descricao: string): Observable {\r\n return this.http\r\n .get(CiotService.UrlWeb + \"Operacoes/GetCidadesByIBGE?descricao=\" + descricao)\r\n .pipe(\r\n tap((ciot: CodigoIBGE) => this.log(`Consulta de cidades`))\r\n );\r\n }\r\n\r\n consultarCidades(nome: string): Observable> {\r\n return this.http\r\n .get>(CiotService.UrlWeb + \"Operacoes/GetCidades?nome=\" + nome)\r\n .pipe(\r\n tap(cidade => this.log(`Consulta de cidades`))\r\n );\r\n }\r\n\r\n consultarNaturezaCarga(descricao: string): Observable> {\r\n return this.http\r\n .get>(CiotService.UrlWeb + \"Operacoes/GetNaturezasCarga?descricao=\" + descricao)\r\n .pipe(\r\n tap(result => this.log(`Consulta Natureza`))\r\n );\r\n }\r\n\r\n consultarNaturezaCargaById(id: string): Observable> {\r\n return this.http\r\n .get>(CiotService.UrlWeb + \"Operacoes/GetNaturezasCarga?id=\" + id, httpOptions)\r\n .pipe(\r\n tap(result => this.log(`Consulta Natureza por ID`))\r\n );\r\n }\r\n\r\n cancelarOperacaoTransporte(model: CancelarOperacaoTransporte): Observable> {\r\n return this.http\r\n .post>(CiotService.UrlWeb + \"Operacoes/CancelarOperacaoTransporte\", model)\r\n .pipe(\r\n tap((ciot: DataReturn) => this.log(`Operação de transporte cancelado`))\r\n );\r\n }\r\n\r\n declararOperacaoTransporte(model: DeclararOperacaoTransporte): Observable> {\r\n return this.http\r\n .post>(CiotService.UrlWeb + \"Operacoes/DeclararOperacaoTransporte\", model)\r\n .pipe(\r\n tap((ciot: DataReturn) => this.log(`Operação de transporte declarada`))\r\n );\r\n }\r\n\r\n consultarCiot(model: ConsultarSituacaoCiotRequest): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/ConsultarSituacaoCiot\", model)\r\n .pipe(\r\n tap((response: CiotResponse) => this.log(`Consulta de CIOT`))\r\n );\r\n }\r\n\r\n consultarSituacaoTransportador(model: ConsultaSituacaoTransportadorRequest): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/ConsultarTransportador\", model)\r\n .pipe(\r\n tap((ciot: ConsultaSituacaoTransportadorResponse) => this.log(`Consulta de CIOT`))\r\n );\r\n }\r\n\r\n retificarOperacaoTransporte(model: RetificarOperacaoTransporteRequest): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/RetificarOperacaoTransporte\", model)\r\n .pipe(\r\n tap((ciot: RetificarOperacaoTransporteResponse) => this.log(`Retificação de CIOT`))\r\n );\r\n }\r\n\r\n consultarRetificacao(objCiot: objRetificar): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/GetDadosRetificar\", objCiot)\r\n .pipe(\r\n tap((ciot: DadosRetificar) => this.log(`Retificação de CIOT`))\r\n );\r\n }\r\n\r\n consultarEncerramento(objCiot: objEncerrar): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/GetDadosEncerrar\", objCiot)\r\n .pipe(\r\n tap((ciot: DadosEncerramento) => this.log(`Encerramento de CIOT`))\r\n );\r\n }\r\n\r\n gestaoCiot(objImprimir: ObjImprimir): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/gestaoCiot\", objImprimir)\r\n .pipe(\r\n tap((ciot: DadosEncerramento) => this.log(`Gestao de CIOT`))\r\n );\r\n }\r\n\r\n encerrarOperacaoTransporte(model: EncerrarOperacaoTransporteRequest): Observable {\r\n return this.http\r\n .post(CiotService.UrlWeb + \"Operacoes/EncerrarOperacaoTransporte\", model)\r\n .pipe(\r\n tap((ciot: EncerrarOperacaoTransporteResponse) => this.log(`Retificação de CIOT`))\r\n );\r\n }\r\n\r\n validarTokenReCaptcha(token: string): Observable {\r\n return this.http\r\n .get(CiotService.UrlWeb + \"Operacoes/ValidarReCaptcha?token=\" + token)\r\n .pipe(\r\n tap((ciot: ReCaptcha) => this.log(`Google ReCaptcha`))\r\n );\r\n }\r\n\r\n private log(message: string) {\r\n console.log(message);\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Subject } from \"rxjs/Subject\";\r\nimport { Observable } from \"rxjs/Observable\";\r\n\r\n@Injectable()\r\nexport class RecaptchaService {\r\n\r\n private validRecaptcha = new Subject();\r\n\r\n setValid(valid: boolean) {\r\n this.validRecaptcha.next(valid);\r\n }\r\n\r\n isValid(): Observable {\r\n return this.validRecaptcha.asObservable();\r\n }\r\n} ","export enum Sexo {\r\n Feminino = \"F\",\r\n Masculino = \"M\"\r\n}\r\n\r\nexport enum TipoPessoa {\r\n Fisica = \"F\",\r\n Juridica = \"J\"\r\n}\r\n\r\nexport enum TipoViagem {\r\n Padrao = \"1\",\r\n TAC_Agregado = \"3\"\r\n}\r\n\r\nexport enum Mensagens {\r\n CIOT_NAO_ENCONTRADO_CREDENCIAIS_INFORMADAS = \"Não foi encontrado CIOT com as credenciais informadas!\",\r\n NAO_POSSIVEL_ENCONTRAR_USUARIO = \"Não foi possível encontrar este usuário\",\r\n OOPS = \"Oops!\",\r\n SUCESSO = \"Sucesso!\",\r\n NAO_POSSIVEL_CANCELAR_CIOT = 'Não foi possível cancelar este CIOT.',\r\n PREENCHA_ABA_DESTINATARIO = \"Por favor, preencha a aba Destinatário.\",\r\n NAO_FOI_POSSIVEL_DECLARAR_CIOT = 'Não foi possível declarar este CIOT.',\r\n CIOT_RETIFICADO_SUCESSO = 'CIOT retificado com sucesso!',\r\n PADRAO = 'Padrão',\r\n TAC_AGREGADO = 'TAC Agregado',\r\n INFORME_CAMPO_NAO_SOU_ROBO = 'Por favor, informe o campo \"Não sou um robô\"',\r\n ERRO_CONSULTAR_INFORMACOES_RECAPTCHA = \"Erro ao consultar informações do ReCaptcha\",\r\n ERRO_VALIDAR_RECAPTCHA = \"Erro ao validar ReCaptcha, ou a validação Expirou\",\r\n CIOT_GERADO = \"CIOT Gerado\",\r\n CIOT_RETIFICADO = \"CIOT Retificado\",\r\n CONTIGENCIA = \"Contigência\",\r\n CANCELADO = \"Cancelado\",\r\n CIOT_GERADO_SUCESSO = \"CIOT declarado com sucesso\",\r\n DECLARACAO_INFORMADA_ENCERRADA = \"A declaração informada já foi encerrada.\",\r\n DECLARACAO_INFORMADA_PRAZO_72 = \"A declaração não pode ser retificada pois ultrapassou o prazo de 72 horas após o fim da viagem.\",\r\n DECLARACAO_INFORMADA_CANCELAMENTO_5DIAS = \"A declaração não pode ser cancelada pois ultrapassou o prazo de 120 horas após o início da viagem.\",\r\n}\r\n\r\nexport enum StatusCiot {\r\n CIOT_GERADO = 1,\r\n CONTIGENCIA = 2,\r\n CANCELADO = 3\r\n}","import { FormGroup } from '@angular/forms';\r\n\r\nexport class GenericValidator {\r\n constructor(private validationMessages: { [key: string]: { [key: string]: string } }) { }\r\n\r\n processMessages(container: FormGroup): { [key: string]: string } {\r\n let messages = {};\r\n for (let controlKey in container.controls) {\r\n if (container.controls.hasOwnProperty(controlKey)) {\r\n let c = container.controls[controlKey];\r\n\r\n if (c instanceof FormGroup) {\r\n let childMessages = this.processMessages(c);\r\n Object.assign(messages, childMessages);\r\n } else {\r\n if (this.validationMessages[controlKey]) {\r\n messages[controlKey] = '';\r\n if ((c.dirty || c.touched) && c.errors) {\r\n Object.keys(c.errors).map(messageKey => {\r\n if (this.validationMessages[controlKey][messageKey]) {\r\n messages[controlKey] += this.validationMessages[controlKey][messageKey] + '
';\r\n }\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return messages;\r\n }\r\n}\r\n","module.exports = \"\"","// https://github.com/sengirab/ngAutocomplete\r\n\r\nimport { Component, ViewChild, Output, EventEmitter } from \"@angular/core\";\r\nimport { CreateNewAutocompleteGroup, SelectedAutocompleteItem, NgAutocompleteComponent } from \"ng-auto-complete\";\r\nimport { CiotService } from \"../../ciot/services/ciot.service\";\r\nimport { ArrayObservable } from \"rxjs/observable/ArrayObservable\";\r\nimport { Banco } from \"../../ciot/models/banco\"; \r\nimport { DadosRetornoBanco } from \"../../ciot/models/banco\";\r\nimport { ObjBancos } from \"./objBancos\";\r\n\r\n@Component({\r\n selector: 'app-autocomplete-bancos',\r\n templateUrl: './autocomplete-bancos.component.html',\r\n styles: []\r\n})\r\n\r\nexport class AutocompleteBancosComponent {\r\n\r\n @ViewChild(NgAutocompleteComponent) public completer: NgAutocompleteComponent;\r\n static bancoList: Array = [];\r\n static inicializado: boolean = false;\r\n static arrayBancos: Array = [];\r\n\r\n @Output() choosedBanco = new EventEmitter();\r\n\r\n public group = [\r\n CreateNewAutocompleteGroup(\r\n \"Selecione\",\r\n 'completer',\r\n AutocompleteBancosComponent.arrayBancos,\r\n { titleKey: 'nome', childrenKey: null }\r\n ),\r\n ];\r\n\r\n constructor(private service: CiotService) {\r\n this.consultarBancos();\r\n }\r\n\r\n consultarBancos(): void {\r\n if (!AutocompleteBancosComponent.inicializado) {\r\n AutocompleteBancosComponent.inicializado = true;\r\n this.service.consultarBancos()\r\n .subscribe(\r\n result => {\r\n AutocompleteBancosComponent.bancoList = result.Retorno;\r\n\r\n AutocompleteBancosComponent.bancoList.forEach(item => {\r\n var obj = new ObjBancos();\r\n obj.nome = item.NOME;\r\n obj.id = item.CODIGO;\r\n\r\n AutocompleteBancosComponent.arrayBancos.push(obj);\r\n });\r\n\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", AutocompleteBancosComponent.arrayBancos);\r\n }\r\n },\r\n error => { }\r\n );\r\n } else if (AutocompleteBancosComponent.arrayBancos.length == 0) {\r\n setTimeout(() => { this.consultarBancos(); }, 500);\r\n } else {\r\n if (this.completer != undefined) {\r\n\r\n AutocompleteBancosComponent.bancoList.forEach(item => {\r\n var obj = new ObjBancos();\r\n obj.nome = item.NOME;\r\n obj.id = item.CODIGO;\r\n\r\n AutocompleteBancosComponent.arrayBancos.push(obj);\r\n });\r\n\r\n this.completer.SetValues(\"completer\", AutocompleteBancosComponent.arrayBancos);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n *\r\n * @param item\r\n * @constructor\r\n */\r\n Selected(item: SelectedAutocompleteItem) {\r\n if (item == undefined || item.item == null) return;\r\n this.choosedBanco.emit(item.item.original);\r\n }\r\n}\r\n","export class ObjBancos {\r\n id: string;\r\n nome: string;\r\n}","module.exports = \"\"","// https://github.com/sengirab/ngAutocomplete\r\n\r\nimport { Component, ViewChild, Input, Output, EventEmitter, OnInit, OnChanges, SimpleChanges } from \"@angular/core\";\r\nimport { CreateNewAutocompleteGroup, SelectedAutocompleteItem, NgAutocompleteComponent } from \"ng-auto-complete\";\r\nimport { CiotService } from \"../../ciot/services/ciot.service\";\r\nimport { ArrayObservable } from \"rxjs/observable/ArrayObservable\";\r\nimport { Cidade } from \"../../ciot/models/cidade\";\r\nimport { AutoCompleteService } from \"../../ciot/services/autocomplete.service\";\r\nimport { ToastsManager } from \"ng2-toastr\";\r\n\r\n@Component({\r\n selector: 'app-autocomplete-cidade',\r\n templateUrl: './autocomplete-cidade.component.html',\r\n styles: [],\r\n})\r\nexport class AutocompleteCidadeComponent implements OnInit {\r\n\r\n @ViewChild(NgAutocompleteComponent) public completer: NgAutocompleteComponent;\r\n\r\n static cidadeList: Array = [];\r\n @Output() choosedCidade = new EventEmitter();\r\n\r\n public group = [\r\n CreateNewAutocompleteGroup(\r\n \"Selecione\",\r\n 'completer',\r\n AutocompleteCidadeComponent.cidadeList,\r\n { titleKey: 'nomeSiglaDescricao', childrenKey: null }\r\n )\r\n ];\r\n\r\n constructor(private service: CiotService,\r\n private autocompleteService: AutoCompleteService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n let input = this.completer.FindInput('completer');\r\n \r\n this.autocompleteService.enviaCompleter(this.completer);\r\n this.autocompleteService.recebeMensagem().subscribe(mensagem => {\r\n this.completer.completers.first.group.placeholder = mensagem;\r\n }, (error) => {\r\n });\r\n this.autocompleteService.recebeResetInput().subscribe(component => {\r\n\r\n this.completer.ResetInputs();\r\n },\r\n (error) => {\r\n });\r\n\r\n this.autocompleteService.recebeUF().subscribe(uf => {\r\n this.consultarCidades(uf);\r\n },\r\n (error) => {\r\n });\r\n }\r\n\r\n consultarCidades(nome: string): void {\r\n this.service.consultarCidades(nome)\r\n .subscribe(\r\n result => {\r\n AutocompleteCidadeComponent.cidadeList = result;\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", result);\r\n }\r\n },\r\n error => { }\r\n );\r\n }\r\n\r\n /**\r\n *\r\n * @param item\r\n * @constructor\r\n */\r\n Selected(item: SelectedAutocompleteItem) {\r\n if (item == undefined || item.item == null) {\r\n return;\r\n }\r\n this.choosedCidade.emit(item.item.original);\r\n }\r\n\r\n onKeypress(event) {\r\n if (event.target.value.length >= 3 && event.target.value.replace(/\\s/g, \"\") != \"\") {\r\n this.consultarCidades(event.target.value);\r\n }\r\n }\r\n}\r\n","module.exports = \"\"","// https://github.com/sengirab/ngAutocomplete\r\n\r\nimport { Component, ViewChild, Input, Output, EventEmitter, OnInit } from \"@angular/core\";\r\nimport { CreateNewAutocompleteGroup, SelectedAutocompleteItem, NgAutocompleteComponent } from \"ng-auto-complete\";\r\nimport { CiotService } from \"../../ciot/services/ciot.service\";\r\nimport { ArrayObservable } from \"rxjs/observable/ArrayObservable\";\r\nimport { Cidades } from \"../../ciot/models/CodigoIBGE\";\r\nimport { AutoCompleteService } from \"../../ciot/services/autocomplete.service\";\r\nimport { ToastsManager } from \"ng2-toastr\";\r\nimport { AutoCompleteCodigoIBGEService } from \"../../ciot/services/autocomplete-codIBGE.service\";\r\n\r\n@Component({\r\n selector: 'app-autocomplete-codIBGE',\r\n templateUrl: './autocomplete-codIBGE.component.html',\r\n styles: []\r\n})\r\nexport class AutocompleteCodigoIBGEComponent implements OnInit {\r\n\r\n @ViewChild(NgAutocompleteComponent) public completer: NgAutocompleteComponent;\r\n\r\n static cidadeIBGEList: Array = [];\r\n static inicializado: boolean = false;\r\n\r\n @Output() choosedCidadeIBGE = new EventEmitter();\r\n\r\n public group = [\r\n CreateNewAutocompleteGroup(\r\n \"Selecione\",\r\n 'completerCodigoIBGE',\r\n AutocompleteCodigoIBGEComponent.cidadeIBGEList,\r\n { titleKey: 'descricao', childrenKey: null }\r\n ),\r\n ];\r\n\r\n constructor(private service: CiotService,\r\n private autoCompleteService: AutoCompleteService,\r\n private autoCompleteCodigoIBGEService: AutoCompleteCodigoIBGEService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.autoCompleteService.recebeResetInput().subscribe(component => {\r\n this.completer.ResetInputs();\r\n },\r\n (error) => {\r\n });\r\n this.autoCompleteService.enviaCompleter(this.completer);\r\n this.autoCompleteCodigoIBGEService.enviaCompleter(this.completer);\r\n }\r\n\r\n consultarCidades(descricao: string): void {\r\n if (!AutocompleteCodigoIBGEComponent.inicializado) {\r\n AutocompleteCodigoIBGEComponent.inicializado = true;\r\n this.service.consultarCidadesByIBGE(descricao)\r\n .subscribe(\r\n result => {\r\n AutocompleteCodigoIBGEComponent.cidadeIBGEList = result.Retorno;\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", result.Retorno);\r\n }\r\n },\r\n error => { }\r\n );\r\n } else if (AutocompleteCodigoIBGEComponent.cidadeIBGEList.length == 0) {\r\n setTimeout(() => { this.consultarCidades(descricao); }, 500);\r\n } else {\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", AutocompleteCodigoIBGEComponent.cidadeIBGEList);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n *\r\n * @param item\r\n * @constructor\r\n */\r\n Selected(item: SelectedAutocompleteItem) {\r\n if (item == undefined || item.item == null) {\r\n return;\r\n }\r\n this.choosedCidadeIBGE.emit(item.item.original);\r\n }\r\n\r\n onKeypress(event) {\r\n if (event.target.value.length >= 3 && event.target.value.replace(/\\s/g, \"\") != \"\") {\r\n this.consultarCidades(event.target.value);\r\n }\r\n }\r\n}\r\n","module.exports = \"\"","// https://github.com/sengirab/ngAutocomplete\r\n\r\nimport { Component, ViewChild, Input, Output, EventEmitter, OnInit } from \"@angular/core\";\r\nimport { CreateNewAutocompleteGroup, SelectedAutocompleteItem, NgAutocompleteComponent } from \"ng-auto-complete\";\r\nimport { CiotService } from \"../../ciot/services/ciot.service\";\r\nimport { ArrayObservable } from \"rxjs/observable/ArrayObservable\";\r\nimport { AutoCompleteService } from \"../../ciot/services/autocomplete.service\";\r\nimport { Estado } from \"../../ciot/models/estado\";\r\n\r\n@Component({\r\n selector: 'app-autocomplete-estado',\r\n templateUrl: './autocomplete-estado.component.html',\r\n styles: [],\r\n})\r\nexport class AutocompleteEstadoComponent implements OnInit {\r\n\r\n @ViewChild(NgAutocompleteComponent) public completer: NgAutocompleteComponent;\r\n static estadoList: Array = [];\r\n static inicializado: boolean = false;\r\n @Output() choosedEstado = new EventEmitter();\r\n\r\n public group = [\r\n CreateNewAutocompleteGroup(\r\n \"Selecione\",\r\n 'completer',\r\n AutocompleteEstadoComponent.estadoList,\r\n { titleKey: 'nome', childrenKey: null }\r\n ),\r\n ];\r\n\r\n constructor(private service: CiotService, private autocompleteService: AutoCompleteService) {\r\n this.consultarEstado();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.autocompleteService.recebeMensagem().subscribe(mensagem => {\r\n // chame sua funcao qualquer no componente\r\n }, (error) => {\r\n });\r\n this.autocompleteService.recebeResetInput().subscribe(component => {\r\n this.completer.ResetInputs();\r\n },\r\n (error) => {\r\n });\r\n }\r\n\r\n consultarEstado(): void {\r\n if (!AutocompleteEstadoComponent.inicializado) {\r\n AutocompleteEstadoComponent.inicializado = true;\r\n this.service.consultarEstado()\r\n .subscribe(\r\n result => {\r\n AutocompleteEstadoComponent.estadoList = result;\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", result);\r\n }\r\n },\r\n error => { }\r\n );\r\n } else if (AutocompleteEstadoComponent.estadoList.length == 0) {\r\n setTimeout(() => { this.consultarEstado(); }, 500);\r\n } else {\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", AutocompleteEstadoComponent.estadoList);\r\n }\r\n }\r\n }\r\n\r\n\r\n /**\r\n *\r\n * @param item\r\n * @constructor\r\n */\r\n Selected(item: SelectedAutocompleteItem) {\r\n if (item == undefined || item.item == null) return;\r\n \r\n this.choosedEstado.emit(item.item.original);\r\n }\r\n}\r\n","module.exports = \"\"","// https://github.com/sengirab/ngAutocomplete\r\n\r\nimport { Component, ViewChild, Input, Output, EventEmitter, OnInit } from \"@angular/core\";\r\nimport { CreateNewAutocompleteGroup, SelectedAutocompleteItem, NgAutocompleteComponent } from \"ng-auto-complete\";\r\nimport { CiotService } from \"../../ciot/services/ciot.service\";\r\nimport { ArrayObservable } from \"rxjs/observable/ArrayObservable\";\r\nimport { NaturezaCarga } from \"../../ciot/models/natureza-carga\";\r\nimport { AutoCompleteService } from \"../../ciot/services/autocomplete.service\";\r\nimport { ToastsManager } from \"ng2-toastr\";\r\nimport { AutoCompleteNaturezaService } from \"../../ciot/services/autocomplete-natureza.service\";\r\n\r\n@Component({\r\n selector: 'app-autocomplete-natureza-carga',\r\n templateUrl: './autocomplete-natureza-carga.component.html',\r\n styles: []\r\n})\r\nexport class AutoCompleteNaturezaCargaComponent implements OnInit {\r\n\r\n @ViewChild(NgAutocompleteComponent) public completer: NgAutocompleteComponent;\r\n \r\n static naturezaCargaList: Array = [];\r\n\r\n @Output() choosedNatureza = new EventEmitter();\r\n\r\n public group = [\r\n CreateNewAutocompleteGroup(\r\n \"Selecione\",\r\n 'completerNatureza',\r\n AutoCompleteNaturezaCargaComponent.naturezaCargaList,\r\n { titleKey: 'descricao', childrenKey: null }\r\n ),\r\n ];\r\n\r\n constructor(private service: CiotService,\r\n private autoCompleteService: AutoCompleteService,\r\n private autoCompleteNaturezaService: AutoCompleteNaturezaService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.autoCompleteService.recebeResetInput().subscribe(component => {\r\n this.completer.ResetInputs();\r\n },\r\n (error) => {\r\n });\r\n this.autoCompleteService.enviaCompleter(this.completer);\r\n this.autoCompleteNaturezaService.enviaCompleter(this.completer);\r\n }\r\n\r\n consultarNatureza(descricao: string): void {\r\n this.service.consultarNaturezaCarga(descricao)\r\n .subscribe(\r\n result => {\r\n AutoCompleteNaturezaCargaComponent.naturezaCargaList = result;\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completerNatureza\", result);\r\n }\r\n },\r\n error => { }\r\n );\r\n }\r\n\r\n\r\n /**\r\n *\r\n * @param item\r\n * @constructor\r\n */\r\n Selected(item: SelectedAutocompleteItem) {\r\n if (item == undefined || item.item == null) {\r\n return;\r\n }\r\n this.choosedNatureza.emit(item.item.original);\r\n }\r\n\r\n onKeypress(event) {\r\n if (event.target.value.length >= 3 && event.target.value.replace(/\\s/g, \"\") != \"\") {\r\n this.consultarNatureza(event.target.value);\r\n }\r\n }\r\n}\r\n","module.exports = \"\"","// https://github.com/sengirab/ngAutocomplete\r\n\r\nimport { Component, ViewChild, Output, EventEmitter } from \"@angular/core\";\r\nimport { CreateNewAutocompleteGroup, SelectedAutocompleteItem, NgAutocompleteComponent } from \"ng-auto-complete\";\r\nimport { CiotService } from \"../../ciot/services/ciot.service\";\r\nimport { ArrayObservable } from \"rxjs/observable/ArrayObservable\";\r\nimport { Tipos } from \"../../ciot/models/tipoCarga\";\r\n\r\n@Component({\r\n selector: 'app-autocomplete-tipoCarga',\r\n templateUrl: './autocomplete-tipoCarga.component.html',\r\n styles: []\r\n})\r\nexport class AutocompleteTipoCargaComponent {\r\n\r\n @ViewChild(NgAutocompleteComponent) public completer: NgAutocompleteComponent;\r\n static tipoCargaList: Array = [];\r\n static inicializado: boolean = false;\r\n\r\n @Output() choosedTipoCarga = new EventEmitter();\r\n\r\n public group = [\r\n CreateNewAutocompleteGroup(\r\n \"Selecione\",\r\n 'completer',\r\n AutocompleteTipoCargaComponent.tipoCargaList,\r\n { titleKey: 'DESCRICAO', childrenKey: null}\r\n ),\r\n ];\r\n\r\n constructor(private service: CiotService) {\r\n this.consultarTipoCarga();\r\n }\r\n\r\n consultarTipoCarga(): void {\r\n if (!AutocompleteTipoCargaComponent.inicializado) {\r\n AutocompleteTipoCargaComponent.inicializado = true;\r\n this.service.consultarTiposCarga(\"\")\r\n .subscribe(\r\n result => {\r\n AutocompleteTipoCargaComponent.tipoCargaList = result.Retorno;\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", result.Retorno);\r\n }\r\n },\r\n error => { }\r\n );\r\n } else if (AutocompleteTipoCargaComponent.tipoCargaList.length == 0) {\r\n setTimeout(() => { this.consultarTipoCarga(); }, 500);\r\n } else {\r\n if (this.completer != undefined) {\r\n this.completer.SetValues(\"completer\", AutocompleteTipoCargaComponent.tipoCargaList);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n *\r\n * @param item\r\n * @constructor\r\n */\r\n Selected(item: SelectedAutocompleteItem) {\r\n if (item == undefined || item.item == null) return;\r\n this.choosedTipoCarga.emit(item.item.original);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cep-input',\r\n template: ''\r\n})\r\nexport class CepInput {}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cnpj-input',\r\n template: ''\r\n})\r\nexport class CnpjInput {}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cpf-input',\r\n template: ''\r\n})\r\nexport class CpfInput {}","module.exports = \"
\\r\\n \\r\\n \\r\\n
\"","import { Component } from '@angular/core';\r\n \r\n@Component({\r\n selector: 'dropdown-basic',\r\n templateUrl: './dropdown-basic.html'\r\n})\r\nexport class DemoDropdownBasicComponent {}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'estados-select',\r\n template: ''\r\n})\r\nexport class EstadosSelect {}","module.exports = \"
\\r\\n \\r\\n \\r\\n
\"","import { Component } from '@angular/core';\r\n \r\n@Component({\r\n selector: 'ng-select-cidade',\r\n templateUrl: './ng-select-cidade.html'\r\n})\r\nexport class NgSelectCidade {\r\n public items:Array = ['Amsterdam', 'Antwerp', 'Athens', 'Barcelona',\r\n 'Berlin', 'Birmingham', 'Bradford', 'Bremen', 'Brussels', 'Bucharest',\r\n 'Budapest', 'Cologne', 'Copenhagen', 'Dortmund', 'Dresden', 'Dublin',\r\n 'Düsseldorf', 'Essen', 'Frankfurt', 'Genoa', 'Glasgow', 'Gothenburg',\r\n 'Hamburg', 'Hannover', 'Helsinki', 'Kraków', 'Leeds', 'Leipzig', 'Lisbon',\r\n 'London', 'Madrid', 'Manchester', 'Marseille', 'Milan', 'Munich', 'Málaga',\r\n 'Naples', 'Palermo', 'Paris', 'Poznań', 'Prague', 'Riga', 'Rome',\r\n 'Rotterdam', 'Seville', 'Sheffield', 'Sofia', 'Stockholm', 'Stuttgart',\r\n 'The Hague', 'Turin', 'Valencia', 'Vienna', 'Vilnius', 'Warsaw', 'Wrocław',\r\n 'Zagreb', 'Zaragoza', 'Łódź'];\r\n \r\n private value:any = {};\r\n private _disabledV:string = '0';\r\n private disabled:boolean = false;\r\n \r\n properties: [\r\n 'allowClear',\r\n 'placeholder',\r\n 'items',\r\n 'multiple',\r\n 'showSearchInputInDropdown']\r\n \r\n private get disabledV():string {\r\n return this._disabledV;\r\n }\r\n \r\n private set disabledV(value:string) {\r\n this._disabledV = value;\r\n this.disabled = this._disabledV === '1';\r\n }\r\n \r\n public selected(value:any):void {\r\n console.log('Selected value is: ', value);\r\n }\r\n \r\n public removed(value:any):void {\r\n console.log('Removed value is: ', value);\r\n }\r\n \r\n public typed(value:any):void {\r\n console.log('New search input: ', value);\r\n }\r\n \r\n public refreshValue(value:any):void {\r\n this.value = value;\r\n }\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'telefone-input',\r\n template: ''\r\n})\r\nexport class TelefoneInput {}","import { ToastsManager } from 'ng2-toastr/ng2-toastr';\r\nimport { Component, ViewContainerRef } from '@angular/core';\r\nimport { Mensagens } from '../../ciot/util/enums';\r\n \r\n @Component({\r\n selector: 'toastr',\r\n template: ''\r\n })\r\n export class ToastrComponent {\r\n \r\n constructor(public toastr: ToastsManager, vcr: ViewContainerRef) {\r\n this.toastr.setRootViewContainerRef(vcr);\r\n }\r\n \r\n showSuccess() {\r\n this.toastr.success('You are awesome!', 'Success!');\r\n }\r\n \r\n showError() {\r\n this.toastr.error('This is not good!', Mensagens.OOPS);\r\n }\r\n \r\n showWarning() {\r\n this.toastr.warning('You are being warned.', 'Alert!');\r\n }\r\n \r\n showInfo() {\r\n this.toastr.info('Just some information for you.');\r\n }\r\n \r\n showCustom() {\r\n this.toastr.custom('Message in red.', null, {enableHTML: true});\r\n }\r\n }","import {ToastOptions} from \"ng2-toastr\";\r\n\r\nexport class ToastCustomOptions extends ToastOptions {\r\n animate = 'flyRight'; // you can override any options available\r\n newestOnTop = false;\r\n showCloseButton = true;\r\n toastLife = 10000\r\n}","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[SpecialCharacterNotAllowed]'\r\n})\r\nexport class SpecialCharacterNotAllowed {\r\n regexStr = '^[a-zA-Z0-9@._]*$';\r\n\r\n backSpace = 'Backspace';\r\n delete = 'Delete';\r\n arrowLeft = 'ArrowLeft';\r\n arrowRight = 'ArrowRight';\r\n tab = 'Tab';\r\n v = 'v';\r\n vUpper = 'V';\r\n a = 'a';\r\n aUpper = 'A';\r\n x = 'x';\r\n xUpper = 'X';\r\n z = 'z';\r\n zUpper = 'Z';\r\n c = 'c';\r\n cUpper = 'C';\r\n @Input() isAlphaNumeric: boolean;\r\n\r\n constructor(private el: ElementRef) { }\r\n\r\n @HostListener('keypress', ['$event']) onKeyPress(event) {\r\n if (new RegExp(this.regexStr).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.backSpace).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.delete).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowLeft).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowRight).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.tab).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.v).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.vUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.a).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.aUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.x).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.xUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.z).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.zUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.c).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.cUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n // @HostListener('paste', ['$event']) blockPaste(event: KeyboardEvent) {\r\n // alert(\"c\");\r\n // this.validateFields(event);\r\n // }\r\n\r\n validateFields(event) {\r\n setTimeout(() => {\r\n alert(this.el.nativeElement.value);\r\n this.el.nativeElement.value = this.el.nativeElement.value.replace(/[^A-Za-z ]/g, '').replace(/\\s/g, '');\r\n event.preventDefault();\r\n\r\n }, 1)\r\n }\r\n}","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[OnlyNumber]'\r\n})\r\nexport class OnlyNumber {\r\n regexStr = '^[0-9.]*$';\r\n\r\n backSpace = 'Backspace';\r\n delete = 'Delete';\r\n arrowLeft = 'ArrowLeft';\r\n arrowRight = 'ArrowRight';\r\n tab = 'Tab';\r\n v = 'v';\r\n vUpper = 'V';\r\n a = 'a';\r\n aUpper = 'A';\r\n x = 'x';\r\n xUpper = 'X';\r\n z = 'z';\r\n zUpper = 'Z';\r\n c = 'c';\r\n cUpper = 'C';\r\n\r\n @Input() isAlphaNumeric: boolean;\r\n\r\n constructor(private el: ElementRef) { }\r\n\r\n @HostListener('keypress', ['$event']) onKeyPress(event) {\r\n if (new RegExp(this.regexStr).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.backSpace).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.delete).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowLeft).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowRight).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.tab).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.v).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.vUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.a).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.aUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.x).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.xUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.z).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.zUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.c).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.cUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n // @HostListener('paste', ['$event']) blockPaste(event: KeyboardEvent) {\r\n // debugger;\r\n // this.validateFields(event);\r\n // }\r\n\r\n validateFields(event) {\r\n setTimeout(() => {\r\n\r\n this.el.nativeElement.value = this.el.nativeElement.value.replace(/[^0-9. ]/g, '').replace(/\\s/g, '');\r\n event.preventDefault();\r\n\r\n }, 100)\r\n }\r\n}","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[PlacaAutomovel]'\r\n})\r\nexport class PlacaAutomovel {\r\n // regexStr = '^[0-9]*$';\r\n backSpace = 'Backspace';\r\n delete = 'Delete';\r\n arrowLeft = 'ArrowLeft';\r\n arrowRight = 'ArrowRight';\r\n tab = 'Tab';\r\n v = 'v';\r\n vUpper = 'V';\r\n a = 'a';\r\n aUpper = 'A';\r\n x = 'x';\r\n xUpper = 'X';\r\n z = 'z';\r\n zUpper = 'Z';\r\n c = 'c';\r\n cUpper = 'C';\r\n\r\n @Input() isAlphaNumeric: boolean;\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n\r\n @HostListener('keypress', ['$event']) onKeyPress(event) {\r\n var k = event.charCode;\r\n if ((k > 64 && k < 91) || (k > 96 && k < 123) || k == 8 || k == 32 || (k >= 48 && k <= 57)) {\r\n return true;\r\n } else if (new RegExp(this.backSpace).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.delete).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowLeft).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowRight).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.tab).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.v).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.vUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.a).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.aUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.x).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.xUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.z).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.zUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.c).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.cUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n // @HostListener('paste', ['$event']) blockPaste(event: KeyboardEvent) {\r\n // this.validateFields(event);\r\n // }\r\n\r\n validateFields(event) {\r\n setTimeout(() => {\r\n\r\n this.el.nativeElement.value = this.el.nativeElement.value.replace(/[^A-Za-z ]/g, '').replace(/\\s/g, '');\r\n event.preventDefault();\r\n\r\n }, 100)\r\n }\r\n}","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[RntrcMask]'\r\n})\r\nexport class RntrcMask {\r\n regexStr = '^[0-9]*$';\r\n backSpace = 'Backspace';\r\n delete = 'Delete';\r\n arrowLeft = 'ArrowLeft';\r\n arrowRight = 'ArrowRight';\r\n tab = 'Tab';\r\n v = 'v';\r\n vUpper = 'V';\r\n a = 'a';\r\n aUpper = 'A';\r\n x = 'x';\r\n xUpper = 'X';\r\n z = 'z';\r\n zUpper = 'Z';\r\n c = 'c';\r\n cUpper = 'C';\r\n\r\n @Input() isAlphaNumeric: boolean;\r\n\r\n constructor(private el: ElementRef) { }\r\n\r\n\r\n @HostListener('keypress', ['$event']) onKeyPress(event) {\r\n if (new RegExp(this.regexStr).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.backSpace).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.delete).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowLeft).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.arrowRight).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.tab).test(event.key)) {\r\n return true;\r\n } else if (new RegExp(this.v).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.vUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.a).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.aUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.x).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.xUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.z).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.zUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.c).test(event.key) && event.ctrlKey) {\r\n return true;\r\n } else if (new RegExp(this.cUpper).test(event.key) && event.ctrlKey) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n // @HostListener('paste', ['$event']) blockPaste(event: KeyboardEvent) {\r\n // this.validateFields(event);\r\n // }\r\n\r\n validateFields(event) {\r\n setTimeout(() => {\r\n\r\n this.el.nativeElement.value = this.el.nativeElement.value.replace(/[^A-Za-z ]/g, '').replace(/\\s/g, '');\r\n event.preventDefault();\r\n\r\n }, 100)\r\n }\r\n}","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\">\\r\\n

Opa! Alguma coisa não deu certo:

\\r\\n
    \\r\\n
  • {{ error }}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren, ViewContainerRef } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControlName } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../commom/generic.form.validator\";\r\nimport { CiotService } from '../../ciot/services/ciot.service';\r\nimport { CancelarOperacaoTransporte } from '../../ciot/models/cancelar-operacao-transporte';\r\nimport { ToastsManager } from 'ng2-toastr';\r\nimport { Mensagens } from '../../ciot/util/enums';\r\nimport { ReCaptcha } from '../../ciot/models/ReCaptcha';\r\nimport { RecaptchaService } from '../../ciot/services/recaptcha.service';\r\nimport { ConsultarSituacaoCiotRequest } from '../../ciot/models/consulta-ciot/consultar-situacao-ciot-request';\r\n\r\n@Component({\r\n selector: 'app-cancelar',\r\n templateUrl: './cancelar.component.html'\r\n})\r\nexport class CancelarComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public cancelarForm: FormGroup;\r\n public modelCancelar: CancelarOperacaoTransporte;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private validRecaptcha: boolean;\r\n private recaptchaIsValid: boolean;\r\n\r\n constructor(private fb: FormBuilder,\r\n private toastr: ToastsManager,\r\n vRef: ViewContainerRef,\r\n private service: CiotService,\r\n private router: Router,\r\n private recaptchaService: RecaptchaService) {\r\n\r\n this.validationMessages = {\r\n ciotCancelar: {\r\n required: 'O CIOT é obrigatório.'\r\n },\r\n senhaCancelar: {\r\n required: 'A senha é obrigatória.'\r\n },\r\n motivo: {\r\n required: 'O motivo é obrigatorio.'\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n this.modelCancelar = new CancelarOperacaoTransporte();\r\n }\r\n\r\n ngOnInit() {\r\n this.cancelarForm = this.fb.group({\r\n ciotCancelar: ['', [Validators.required]],\r\n senhaCancelar: ['', [Validators.required]],\r\n motivo: ['', []]\r\n });\r\n this.recaptchaService.isValid().subscribe(valid => this.validRecaptcha = valid); \r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.cancelarForm);\r\n });\r\n }\r\n\r\n cancelar() {\r\n if (this.cancelarForm.dirty && this.cancelarForm.valid) {\r\n // if (this.validRecaptcha) {\r\n let requestConsultar = new ConsultarSituacaoCiotRequest();\r\n requestConsultar.ciot = this.cancelarForm.value.ciotCancelar;\r\n requestConsultar.senhaAlteracao = this.cancelarForm.value.senhaCancelar;\r\n\r\n this.service.consultarCiot(requestConsultar)\r\n .subscribe(response => {\r\n if (response.Sucesso) {\r\n var oneDay=1000*60*60*24;\r\n var dataAtualMs = new Date().getTime();\r\n var stringDate = String(response.Retorno.DataInicioFrete).substring(0, 10);\r\n var dataFinalMs = new Date(stringDate).getTime();\r\n\r\n // Calculate the difference in milliseconds\r\n var differenceMs = dataAtualMs - dataFinalMs;\r\n\r\n // Convert back to days and return\r\n var dias = Math.round(differenceMs/oneDay);\r\n\r\n if (dias > 5){\r\n this.toastr.error(Mensagens.DECLARACAO_INFORMADA_CANCELAMENTO_5DIAS, \"Oops\");\r\n return\r\n }\r\n\r\n this.modelCancelar = new CancelarOperacaoTransporte();\r\n this.modelCancelar.ciot = this.cancelarForm.value.ciotCancelar;\r\n this.modelCancelar.senhaAlteracao = this.cancelarForm.value.senhaCancelar;\r\n this.modelCancelar.motivoCancelamento = this.cancelarForm.value.motivo;\r\n\r\n this.service.cancelarOperacaoTransporte(this.modelCancelar)\r\n .subscribe(\r\n result => { this.onSaveComplete(result) },\r\n error => {\r\n this.onError(error);\r\n });\r\n }\r\n }) \r\n // } else {\r\n // this.toastr.error(Mensagens.INFORME_CAMPO_NAO_SOU_ROBO, Mensagens.OOPS)\r\n // return;\r\n // }\r\n }\r\n }\r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n this.toastr.error(Mensagens.NAO_POSSIVEL_CANCELAR_CIOT, Mensagens.OOPS);\r\n }\r\n\r\n onSaveComplete(result): void {\r\n if (result.Retorno.Sucesso) {\r\n this.cancelarForm.reset();\r\n this.errors = [];\r\n this.toastr.success('CIOT cancelado com sucesso!', Mensagens.SUCESSO);\r\n } else {\r\n if(result.Retorno.Excecao != null)\r\n this.toastr.error(result.Retorno.Excecao.Mensagem, Mensagens.OOPS);\r\n else\r\n this.toastr.error(result.Retorno.Mensagem, Mensagens.OOPS);\r\n }\r\n }\r\n\r\n resolved(captchaResponse: string) {\r\n if(captchaResponse) {\r\n this.service.validarTokenReCaptcha(captchaResponse)\r\n .subscribe(\r\n result => {\r\n this.onValidRecaptcha(result)\r\n },\r\n error => {\r\n this.onErrorRecaptcha(error);\r\n });\r\n } else {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n }\r\n }\r\n\r\n onValidRecaptcha(result: ReCaptcha) {\r\n if (!result.Sucesso) {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } else {\r\n this.recaptchaService.setValid(true);\r\n }\r\n }\r\n\r\n onErrorRecaptcha(error) {\r\n this.toastr.error(Mensagens.ERRO_CONSULTAR_INFORMACOES_RECAPTCHA, Mensagens.OOPS);\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\">\\r\\n

Opa! Alguma coisa não deu certo:

\\r\\n
    \\r\\n
  • {{ error }}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControlName } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../commom/generic.form.validator\";\r\nimport { CiotService } from '../../ciot/services/ciot.service';\r\nimport { ConsultarSituacaoCiotRequest } from '../../ciot/models/consulta-ciot/consultar-situacao-ciot-request';\r\nimport { ToastsManager } from 'ng2-toastr';\r\nimport { Mensagens } from '../../ciot/util/enums';\r\nimport { ReCaptcha } from '../../ciot/models/ReCaptcha';\r\nimport { RecaptchaService } from '../../ciot/services/recaptcha.service';\r\n\r\n@Component({\r\n selector: 'app-consultar',\r\n templateUrl: './consultar.component.html'\r\n})\r\nexport class ConsultarComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public meetupForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private validRecaptcha: boolean;\r\n\r\n constructor(private fb: FormBuilder,\r\n private service: CiotService,\r\n private toastr: ToastsManager,\r\n private router: Router,\r\n private recaptchaService: RecaptchaService) {\r\n\r\n this.validationMessages = {\r\n ciot: {\r\n required: 'O CIOT é obrigatório.'\r\n },\r\n senha: {\r\n required: 'A senha é obrigatório.'\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n ngOnInit() {\r\n this.meetupForm = this.fb.group({\r\n ciot: ['', [Validators.required]],\r\n senha: ['', [Validators.required]]\r\n });\r\n this.recaptchaService.isValid().subscribe(valid => this.validRecaptcha = valid);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.meetupForm);\r\n });\r\n }\r\n\r\n consultar() {\r\n // if (this.validRecaptcha) {\r\n if (this.meetupForm.dirty && this.meetupForm.valid) {\r\n let request = new ConsultarSituacaoCiotRequest();\r\n request.ciot = this.meetupForm.value.ciot;\r\n request.senhaAlteracao = this.meetupForm.value.senha;\r\n this.service.consultarCiot(request)\r\n .subscribe(\r\n response => {\r\n if (response.Retorno.Sucesso) {\r\n this.router.navigate(['consulta-ciot', request.ciot, request.senhaAlteracao, \"123\", \"123\", \"123\", \"123\", false], { skipLocationChange: true })\r\n } else {\r\n this.toastr.error(Mensagens.CIOT_NAO_ENCONTRADO_CREDENCIAIS_INFORMADAS, Mensagens.OOPS);\r\n }\r\n },\r\n error => { this.onError(error) }\r\n );\r\n }\r\n // } else {\r\n // this.toastr.error(Mensagens.INFORME_CAMPO_NAO_SOU_ROBO, Mensagens.OOPS)\r\n // }\r\n } \r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.meetupForm.reset();\r\n this.errors = [];\r\n\r\n this.router.navigate(['/meetups']);\r\n }\r\n\r\n resolved(captchaResponse: string) { \r\n if(captchaResponse) {\r\n this.service.validarTokenReCaptcha(captchaResponse)\r\n .subscribe(\r\n result => {\r\n debugger;\r\n this.onValidRecaptcha(result)\r\n },\r\n error => {\r\n this.onErrorRecaptcha(error);\r\n });\r\n } else {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } \r\n }\r\n\r\n onValidRecaptcha(result: ReCaptcha) {\r\n debugger;\r\n if (!result.Retorno) {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } else {\r\n this.recaptchaService.setValid(true);\r\n }\r\n }\r\n\r\n onErrorRecaptcha(error) {\r\n this.toastr.error(Mensagens.ERRO_CONSULTAR_INFORMACOES_RECAPTCHA, Mensagens.OOPS);\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
0\\\">\\r\\n
Opa! Alguma coisa não deu certo:
\\r\\n
    \\r\\n
  • {{ error }}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n Registro Nacional de Transportadores Rodoviários de Carga.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren, ViewContainerRef } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControlName } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../commom/generic.form.validator\";\r\nimport { CiotService } from '../../ciot/services/ciot.service';\r\nimport { ToastsManager } from 'ng2-toastr';\r\nimport { ConsultaSituacaoTransportadorRequest, ConsultaSituacaoTransportadorResponse } from '../../ciot/models/consulta-situacao-transportador/consulta-situacao-transportador';\r\nimport { Mensagens } from '../../ciot/util/enums';\r\nimport { RecaptchaService } from '../../ciot/services/recaptcha.service';\r\nimport { ReCaptcha } from '../../ciot/models/ReCaptcha';\r\n\r\n\r\n@Component({\r\n selector: 'app-declaracao',\r\n templateUrl: './declaracao.component.html'\r\n})\r\nexport class DeclaracaoComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public declaracaoForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private request: ConsultaSituacaoTransportadorRequest = new ConsultaSituacaoTransportadorRequest();\r\n private response: ConsultaSituacaoTransportadorResponse = new ConsultaSituacaoTransportadorResponse();\r\n private validRecaptcha: boolean;\r\n maskCpfCnpj = '';\r\n maskCpfCnpjContratante = '';\r\n\r\n constructor(private fb: FormBuilder,\r\n private router: Router,\r\n private ciotService: CiotService,\r\n private toastr: ToastsManager,\r\n private recaptchaService: RecaptchaService) {\r\n\r\n this.validationMessages = {\r\n documentoTransportador: {\r\n required: 'O documento do transportador é obrigatório.',\r\n minlength: 'O documento do transportador precisa ter no mínimo 11 caracteres',\r\n maxlength: 'A documento do transportador precisa ter no máximo 14 caracteres'\r\n },\r\n documentoContratante: {\r\n required: 'A documento do contratante é obrigatório.',\r\n minlength: 'O documento do transportador precisa ter no mínimo 11 caracteres',\r\n maxlength: 'A documento do transportador precisa ter no máximo 14 caracteres'\r\n },\r\n rntrc: {\r\n required: 'O RNTRC é obrigatório.',\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n ngOnInit() {\r\n this.declaracaoForm = this.fb.group({\r\n documentoTransportador: ['', [Validators.required, Validators.minLength(11)]],\r\n documentoContratante: ['', [Validators.required, Validators.minLength(11)]],\r\n rntrc: ['', [Validators.required]],\r\n });\r\n this.recaptchaService.isValid().subscribe(valid => this.validRecaptcha = valid);\r\n\r\n this.declaracaoForm.get('documentoTransportador').valueChanges.map(valor=>valor.length).subscribe(length=>{\r\n if(length>11){\r\n this.maskCpfCnpj = '00.000.000/0000-00'\r\n } else {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n\r\n if (length < 11 && this.maskCpfCnpj == '00.000.000/0000-00') {\r\n this.maskCpfCnpj = '000.000.000-000'\r\n }\r\n })\r\n\r\n this.declaracaoForm.get('documentoContratante').valueChanges.map(valor=>valor.length).subscribe(length=>{\r\n if(length>11){\r\n this.maskCpfCnpjContratante = '00.000.000/0000-00'\r\n } else {\r\n this.maskCpfCnpjContratante = '000.000.000-000'\r\n }\r\n\r\n if (length < 11 && this.maskCpfCnpjContratante == '00.000.000/0000-00') {\r\n this.maskCpfCnpjContratante = '000.000.000-000'\r\n }\r\n })\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.declaracaoForm);\r\n });\r\n }\r\n\r\n declarar() {\r\n // Alterado para testes\r\n if(this.declaracaoForm.value.documentoTransportador.length != 11 && this.declaracaoForm.value.documentoTransportador.length != 14) {\r\n return this.toastr.error(\"Preencha o campo CPF/CNPJ Transportador corretamente!\");\r\n }\r\n\r\n if(this.declaracaoForm.value.documentoContratante.length != 11 && this.declaracaoForm.value.documentoContratante.length != 14) {\r\n return this.toastr.error(\"Preencha o campo CPF/CNPJ Contratante corretamente!\");\r\n }\r\n \r\n // if (this.validRecaptcha) {\r\n this.request.CpfCnpjTransportador = this.declaracaoForm.value.documentoTransportador;\r\n this.request.CpfCnpjInteressado = this.declaracaoForm.value.documentoContratante;\r\n this.request.RNTRCTransportador = this.declaracaoForm.value.rntrc;\r\n this.ciotService.consultarSituacaoTransportador(this.request)\r\n .subscribe(\r\n result => {\r\n this.onSaveComplete(result, this.request);\r\n },\r\n error => {\r\n this.onError(error);\r\n });\r\n // this.router.navigate(['/ciot'], { skipLocationChange: true });\r\n // } else {\r\n // this.toastr.error(Mensagens.INFORME_CAMPO_NAO_SOU_ROBO, Mensagens.OOPS)\r\n // return;\r\n // }\r\n } \r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n this.toastr.error(Mensagens.NAO_POSSIVEL_ENCONTRAR_USUARIO, Mensagens.OOPS);\r\n }\r\n\r\n onSaveComplete(result: ConsultaSituacaoTransportadorResponse, request: ConsultaSituacaoTransportadorRequest): void {\r\n this.response = result;\r\n \r\n if (this.response.Retorno.Sucesso) {\r\n this.router.navigate(['/ciot', this.response.Retorno.NomeRazaoSocialTransportador,\r\n this.response.Retorno.CpfCnpjTransportador, this.response.Retorno.RNTRCTransportador,\r\n request.CpfCnpjInteressado], { skipLocationChange: true });\r\n } else {\r\n this.toastr.error(this.response.Retorno.Excecao.Mensagem, Mensagens.OOPS);\r\n }\r\n }\r\n\r\n resolved(captchaResponse: string) { \r\n if(captchaResponse) {\r\n this.ciotService.validarTokenReCaptcha(captchaResponse)\r\n .subscribe(\r\n result => {\r\n this.onValidRecaptcha(result)\r\n },\r\n error => {\r\n this.onErrorRecaptcha(error);\r\n });\r\n } else {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } \r\n }\r\n\r\n onValidRecaptcha(result: ReCaptcha) {\r\n if (!result.Retorno) {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } else {\r\n this.recaptchaService.setValid(true);\r\n }\r\n }\r\n\r\n onErrorRecaptcha(error) {\r\n this.toastr.error(Mensagens.ERRO_CONSULTAR_INFORMACOES_RECAPTCHA, Mensagens.OOPS);\r\n }\r\n}","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\">\\r\\n

Opa! Alguma coisa não deu certo:

\\r\\n
    \\r\\n
  • {{ error }}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControlName } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport { GenericValidator } from \"../../commom/generic.form.validator\";\r\nimport { ConsultarSituacaoCiotRequest } from '../../ciot/models/consulta-ciot/consultar-situacao-ciot-request';\r\nimport { CiotService } from '../../ciot/services/ciot.service';\r\nimport { ToastsManager } from 'ng2-toastr';\r\nimport { Mensagens } from '../../ciot/util/enums';\r\nimport { ReCaptcha } from '../../ciot/models/ReCaptcha';\r\nimport { RecaptchaService } from '../../ciot/services/recaptcha.service';\r\n\r\n@Component({\r\n selector: 'app-encerrar',\r\n templateUrl: './encerrar.component.html'\r\n})\r\nexport class EncerrarComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, { read: ElementRef }) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public meetupForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private validRecaptcha: boolean;\r\n\r\n constructor(private fb: FormBuilder,\r\n private service: CiotService,\r\n private toastr: ToastsManager,\r\n private router: Router,\r\n private recaptchaService: RecaptchaService) {\r\n\r\n this.validationMessages = {\r\n ciotEncerrar: {\r\n required: 'O CIOT é obrigatório.'\r\n },\r\n senhaEncerrar: {\r\n required: 'A senha é obrigatória'\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n ngOnInit() {\r\n this.meetupForm = this.fb.group({\r\n ciotEncerrar: ['', [Validators.required]],\r\n senhaEncerrar: ['', [Validators.required]]\r\n });\r\n this.recaptchaService.isValid().subscribe(valid => this.validRecaptcha = valid);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.meetupForm);\r\n });\r\n }\r\n\r\n encerrar() {\r\n // if (this.validRecaptcha) {\r\n let request = new ConsultarSituacaoCiotRequest();\r\n request.ciot = this.meetupForm.value.ciotEncerrar;\r\n request.senhaAlteracao = this.meetupForm.value.senhaEncerrar;\r\n\r\n this.service.consultarCiot(request)\r\n .subscribe(\r\n response => {\r\n if (response.Retorno.Sucesso) {\r\n if(response.Retorno.Encerrado){\r\n this.toastr.error(Mensagens.DECLARACAO_INFORMADA_ENCERRADA, \"Oops\");\r\n return;\r\n }\r\n this.router.navigate(['/encerramento', this.meetupForm.value.ciotEncerrar, this.meetupForm.value.senhaEncerrar], { skipLocationChange: true });\r\n } else {\r\n this.toastr.error(Mensagens.CIOT_NAO_ENCONTRADO_CREDENCIAIS_INFORMADAS, \"Oops\");\r\n }\r\n },\r\n error => { this.onError(error) }\r\n );\r\n // } else {\r\n // this.toastr.error(Mensagens.INFORME_CAMPO_NAO_SOU_ROBO, Mensagens.OOPS)\r\n // }\r\n } \r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n this.toastr.error(Mensagens.CIOT_NAO_ENCONTRADO_CREDENCIAIS_INFORMADAS, \"Oops\");\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.meetupForm.reset();\r\n }\r\n\r\n resolved(captchaResponse: string) {\r\n if(captchaResponse) {\r\n this.service.validarTokenReCaptcha(captchaResponse)\r\n .subscribe(\r\n result => {\r\n this.onValidRecaptcha(result)\r\n },\r\n error => {\r\n this.onErrorRecaptcha(error);\r\n });\r\n } else {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } \r\n }\r\n\r\n onValidRecaptcha(result: ReCaptcha) {\r\n if (!result.Retorno) {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } else {\r\n this.recaptchaService.setValid(true);\r\n }\r\n }\r\n\r\n onErrorRecaptcha(error) {\r\n this.toastr.error(Mensagens.ERRO_CONSULTAR_INFORMACOES_RECAPTCHA, Mensagens.OOPS);\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { CiotService } from '../ciot/services/ciot.service';\r\nimport { ToastsManager } from 'ng2-toastr';\r\nimport { Mensagens } from '../ciot/util/enums';\r\nimport { ReCaptcha } from '../ciot/models/ReCaptcha';\r\nimport { RecaptchaService } from '../ciot/services/recaptcha.service';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html'\r\n})\r\nexport class HomeComponent {\r\n\r\n constructor(private service: CiotService,\r\n private toastr: ToastsManager) {\r\n }\r\n}","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\">\\r\\n

Opa! Alguma coisa não deu certo:

\\r\\n
    \\r\\n
  • {{ error }}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","import {Component, OnInit, ViewEncapsulation, AfterViewInit, ElementRef, ViewChildren} from '@angular/core';\r\nimport {FormGroup, FormBuilder, Validators, FormControlName} from \"@angular/forms\";\r\nimport {Router} from \"@angular/router\";\r\n\r\nimport {Observable} from \"rxjs/Observable\";\r\nimport 'rxjs/add/operator/debounceTime';\r\nimport 'rxjs/add/observable/fromEvent';\r\nimport 'rxjs/add/observable/merge';\r\n\r\nimport {GenericValidator} from \"../../commom/generic.form.validator\";\r\nimport {CiotService} from '../../ciot/services/ciot.service';\r\nimport {ToastsManager} from 'ng2-toastr';\r\nimport {Mensagens} from '../../ciot/util/enums';\r\nimport {ReCaptcha} from '../../ciot/models/ReCaptcha';\r\nimport {RecaptchaService} from '../../ciot/services/recaptcha.service';\r\nimport {ConsultarSituacaoCiotRequest} from \"../../ciot/models/consulta-ciot/consultar-situacao-ciot-request\";\r\n\r\n@Component({\r\n selector: 'app-retificar',\r\n templateUrl: './retificar.component.html'\r\n})\r\nexport class RetificarComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(FormControlName, {read: ElementRef}) formInputElements: ElementRef[];\r\n\r\n public errors: any[] = [];\r\n public meetupForm: FormGroup;\r\n public displayMessage: { [key: string]: string } = {};\r\n private validationMessages: { [key: string]: { [key: string]: string } };\r\n private genericValidator: GenericValidator;\r\n private validRecaptcha: boolean;\r\n\r\n constructor(private fb: FormBuilder,\r\n private service: CiotService,\r\n private toastr: ToastsManager,\r\n private router: Router,\r\n private recaptchaService: RecaptchaService) {\r\n\r\n this.validationMessages = {\r\n ciotRetificar: {\r\n required: 'O CIOT é requerido.'\r\n },\r\n senhaRetificar: {\r\n required: 'A senha é requerida.'\r\n }\r\n };\r\n\r\n this.genericValidator = new GenericValidator(this.validationMessages);\r\n }\r\n\r\n ngOnInit() {\r\n this.meetupForm = this.fb.group({\r\n ciotRetificar: ['', [Validators.required]],\r\n senhaRetificar: ['', [Validators.required]]\r\n });\r\n this.recaptchaService.isValid().subscribe(valid => this.validRecaptcha = valid);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let controlBlurs: Observable[] = this.formInputElements\r\n .map((formControl: ElementRef) => Observable.fromEvent(formControl.nativeElement, 'blur'));\r\n\r\n Observable.merge(...controlBlurs).subscribe(value => {\r\n this.displayMessage = this.genericValidator.processMessages(this.meetupForm);\r\n });\r\n }\r\n\r\n retificar() {\r\n if (this.meetupForm.dirty && this.meetupForm.valid) {\r\n // if (this.validRecaptcha) {\r\n let request = new ConsultarSituacaoCiotRequest();\r\n request.ciot = this.meetupForm.value.ciotRetificar;\r\n request.senhaAlteracao = this.meetupForm.value.senhaRetificar;\r\n\r\n this.service.consultarCiot(request)\r\n .subscribe(\r\n response => {\r\n if (response.Retorno.Sucesso) {\r\n if (response.Retorno.TipoViagem != 3) {\r\n this.toastr.error(\"Não é permitida a retificação de CIOT do tipo padrão\", \"Oops\");\r\n return;\r\n }\r\n\r\n if (response.Retorno.Encerrado) {\r\n this.toastr.error(Mensagens.DECLARACAO_INFORMADA_ENCERRADA, \"Oops\");\r\n return;\r\n }\r\n var oneDay=1000*60*60*24;\r\n var dataAtualMs = new Date().getTime();\r\n var dataFinalMs = new Date(response.Retorno.DataTerminoFrete).getTime();\r\n\r\n // Calculate the difference in milliseconds\r\n var differenceMs = dataAtualMs - dataFinalMs;\r\n\r\n // Convert back to days and return\r\n var dias = Math.round(differenceMs/oneDay);\r\n\r\n if (dias > 3) {\r\n this.toastr.error(Mensagens.DECLARACAO_INFORMADA_PRAZO_72, \"Oops\");\r\n return;\r\n }\r\n this.router.navigate(['/retificacao', this.meetupForm.value.ciotRetificar, this.meetupForm.value.senhaRetificar,], {skipLocationChange: true})\r\n } else {\r\n this.toastr.error(Mensagens.CIOT_NAO_ENCONTRADO_CREDENCIAIS_INFORMADAS, \"Oops\");\r\n }\r\n },\r\n error => {\r\n this.onError(error)\r\n }\r\n );\r\n // } else {\r\n // this.toastr.error(Mensagens.INFORME_CAMPO_NAO_SOU_ROBO, Mensagens.OOPS)\r\n // }\r\n }\r\n } \r\n\r\n onError(serviceReturn) {\r\n this.errors = Object.assign([], serviceReturn.error.errors);\r\n }\r\n\r\n onSaveComplete(): void {\r\n this.meetupForm.reset();\r\n this.errors = [];\r\n\r\n this.router.navigate(['/meetups']);\r\n }\r\n\r\n resolved(captchaResponse: string) { \r\n if(captchaResponse) {\r\n this.service.validarTokenReCaptcha(captchaResponse)\r\n .subscribe(\r\n result => {\r\n this.onValidRecaptcha(result)\r\n },\r\n error => {\r\n this.onErrorRecaptcha(error);\r\n });\r\n } else {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n }\r\n }\r\n\r\n onValidRecaptcha(result: ReCaptcha) {\r\n if (!result.Retorno) {\r\n this.toastr.error(Mensagens.ERRO_VALIDAR_RECAPTCHA, Mensagens.OOPS);\r\n this.recaptchaService.setValid(false);\r\n } else {\r\n this.recaptchaService.setValid(true);\r\n }\r\n }\r\n\r\n onErrorRecaptcha(error) {\r\n this.toastr.error(Mensagens.ERRO_CONSULTAR_INFORMACOES_RECAPTCHA, Mensagens.OOPS);\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
\\r\\n Sistema Info - 2018\\r\\n
\\r\\n
\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styles: [],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class FooterComponent {\r\n}\r\n","module.exports = \"\"","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-menu-superior',\r\n templateUrl: './menu-superior.component.html'\r\n})\r\nexport class MenuSuperiorComponent{\r\n\r\n public isCollapsed: boolean = true; \r\n}\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Pipe({ name: 'placaAutomovel' })\r\nexport class PlacaAutomovelPipe implements PipeTransform {\r\n\r\n transform(value: string) {\r\n if (value) {\r\n value = value.toString();\r\n if (value.length === 7) {\r\n return value.substring(0, 3).concat(\"-\")\r\n .concat(value.substring(3, 7))\r\n }\r\n }\r\n return value;\r\n }\r\n}","// Versão para ambiente do desenvolvedor Localhost\r\n// ng serve => Hospedar server localhost para testar\r\n// ng build => Gerar versão com este arquivo de configuração\r\n\r\nexport const environment = {\r\n production: false,\r\n // url: \"http://hml-mhservices.sistemainfo.com.br\"\r\n //url: \"http://sw12-140:1000\"\r\n // url: \"http://hml-mhservices.sistemainfo.com.br\"\r\n // url: \"http://hmlciotpws.bancobbcdigital.com.br:8091/\"\r\n //url: \"http://10.151.0.31:1982/\"\r\n //url: \"http://localhost:65413/\"\r\n url: \"http://ciotpws.bancobbcdigital.com.br:8091\"\r\n}\r\n\r\n","import { enableProdMode } from \"@angular/core\";\r\nimport { platformBrowserDynamic } from \"@angular/platform-browser-dynamic\";\r\n\r\nimport { AppModule } from \"./app/app.module\";\r\nimport { environment } from \"./environments/environment\";\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n"],"sourceRoot":""}