{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app-routing.module.ts","webpack:///./src/app/app.component.css","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/model/Beneficiario.ts","webpack:///./src/app/model/CartaoBeneficiario.ts","webpack:///./src/app/model/DadosBeneficiario.ts","webpack:///./src/app/model/DataCEP.ts","webpack:///./src/app/model/Dentista.ts","webpack:///./src/app/model/Email.ts","webpack:///./src/app/model/Endereco.ts","webpack:///./src/app/model/Produtosformulario.ts","webpack:///./src/app/model/Retorno.ts","webpack:///./src/app/model/RetornoProdutos.ts","webpack:///./src/app/model/Telefones.ts","webpack:///./src/app/pages/CadastroConsumerCarePaciente/CadastroPacienteConsumerCare.component.css","webpack:///./src/app/pages/CadastroConsumerCarePaciente/CadastroPacienteConsumerCare.component.html","webpack:///./src/app/pages/CadastroConsumerCarePaciente/CadastroPacienteConsumerCare.component.ts","webpack:///./src/app/pages/CadastroOdontoCarePaciente/CadastroPacienteOdontoCare.component.css","webpack:///./src/app/pages/CadastroOdontoCarePaciente/CadastroPacienteOdontoCare.component.html","webpack:///./src/app/pages/CadastroOdontoCarePaciente/CadastroPacienteOdontoCare.component.ts","webpack:///./src/app/pages/GerarCuponsOdontoCare/GerarCuponsOdontoCare.component.css","webpack:///./src/app/pages/GerarCuponsOdontoCare/GerarCuponsOdontoCare.component.html","webpack:///./src/app/pages/GerarCuponsOdontoCare/GerarCuponsOdontoCare.component.ts","webpack:///./src/app/pages/Home/Home.component.css","webpack:///./src/app/pages/Home/Home.component.html","webpack:///./src/app/pages/Home/Home.component.ts","webpack:///./src/app/providers/CustomHttpClient.ts","webpack:///./src/app/service/cadastro/cadastro.service.ts","webpack:///./src/app/service/farmacias/farmacias.service.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 { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { HomeComponent } from './pages/Home/Home.component';\r\nimport { CadastroPacienteConsumerCareComponent } from './pages/CadastroConsumerCarePaciente/CadastroPacienteConsumerCare.component';\r\nimport { CadastroPacienteOdontoCareComponent } from './pages/CadastroOdontoCarePaciente/CadastroPacienteOdontoCare.component';\r\nimport { GerarCuponsOdontoCareComponent } from './pages/GerarCuponsOdontoCare/GerarCuponsOdontoCare.component';\r\n\r\nconst routes: Routes = [\r\n { path: 'home', component: HomeComponent },\r\n { path: 'cadastro', component: CadastroPacienteConsumerCareComponent },\r\n { path: 'valideseucupom', component: CadastroPacienteOdontoCareComponent },\r\n { path: 'profissional', component: GerarCuponsOdontoCareComponent },\r\n { path: '', redirectTo: '/home', pathMatch: 'full'},\r\n { path: '**', redirectTo: '/home', pathMatch: 'full'}\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","module.exports = \"\"","module.exports = \"\\r\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\n\r\nexport class AppComponent implements OnInit{\r\n \r\n constructor(private activatedRoute: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n}\r\n","import { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { HomeComponent } from './pages/Home/Home.component';\r\nimport { CadastroPacienteConsumerCareComponent } from './pages/CadastroConsumerCarePaciente/CadastroPacienteConsumerCare.component';\r\nimport { CadastroPacienteOdontoCareComponent } from './pages/CadastroOdontoCarePaciente/CadastroPacienteOdontoCare.component';\r\nimport { GerarCuponsOdontoCareComponent } from './pages/GerarCuponsOdontoCare/GerarCuponsOdontoCare.component';\r\n\r\nimport { CadastroService } from \"./service/cadastro/cadastro.service\";\r\nimport { FarmaciasService } from \"./service/farmacias/farmacias.service\";\r\nimport { CustomHttpClient, CustomHttpClientCreator } from './providers/CustomHttpClient';\r\n\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\nimport { NgxSpinnerModule, NgxSpinnerService } from 'ngx-spinner';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { NgxUploaderModule } from 'ngx-uploader';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { DataTableModule } from \"angular-6-datatable\";\r\nimport { TypeaheadModule } from 'ngx-bootstrap/typeahead';\r\nimport { BsDatepickerModule } from \"ngx-bootstrap/datepicker\";\r\nimport { NgxPaginationModule } from 'ngx-pagination';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { APP_BASE_HREF } from '@angular/common';\r\nimport * as $ from 'jquery';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HomeComponent,\r\n CadastroPacienteConsumerCareComponent,\r\n CadastroPacienteOdontoCareComponent,\r\n GerarCuponsOdontoCareComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n CommonModule,\r\n RouterModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n NgxSpinnerModule,\r\n NgxUploaderModule,\r\n NgSelectModule,\r\n NgxPaginationModule,\r\n ModalModule.forRoot(),\r\n NgxMaskModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n TypeaheadModule.forRoot(),\r\n DataTableModule,\r\n AppRoutingModule\r\n ],\r\n providers: [CadastroService, FarmaciasService, { provide: APP_BASE_HREF, useValue: '/' },\r\n {\r\n provide: CustomHttpClient,\r\n useFactory: CustomHttpClientCreator,\r\n deps: [HttpClient, NgxSpinnerService]\r\n }],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { DadosBeneficiario } from \"./DadosBeneficiario\";\r\nimport { Endereco } from \"./Endereco\";\r\nimport { Telefones } from \"./Telefones\";\r\n\r\nexport class Beneficiario {\r\n cartaoTitular: string;\r\n cartaoUsuario: string;\r\n planoCodigo: string;\r\n inicioVigencia: string;\r\n fimVigencia: string;\r\n matricula: string;\r\n grauDependencia: string;\r\n tipoBeneficiario: string;\r\n dadosBeneficiario: DadosBeneficiario;\r\n endereco: Endereco;\r\n telefones: Telefones;\r\n}\r\n","import { Beneficiario } from \"./Beneficiario\";\r\n\r\nexport class CartaoBeneficiario{\r\n tokenCupom: string;\r\n beneficiario: Beneficiario;\r\n croDentista: string;\r\n ufDentista: string;\r\n aceito_SMS_e_Email: boolean;\r\n}\r\n","export class DadosBeneficiario {\r\n nomeBeneficiario: string;\r\n cpf: string;\r\n rg: string;\r\n dataNascimento: string;\r\n sexo: string;\r\n email1: string;\r\n email2: string;\r\n}\r\n","export class DataCEP {\r\n tipo: number;\r\n logradouro: string = \"\";\r\n numero: string = \"\";\r\n complemento: string = \"\";\r\n bairro: string = \"\";\r\n cidade: string = \"\";\r\n uf: string = \"\";\r\n cep: string = \"\";\r\n referencia: string = \"\";\r\n}\r\n","export class Dentista {\r\n cpf: string;\r\n cro: string;\r\n uf: string;\r\n qtdCupons: number;\r\n}\r\n","export class Email {\r\n destinatario: string;\r\n numeroCupom: string;\r\n nomeDentista: string;\r\n descontos: string[];\r\n}\r\n","export class Endereco {\r\n cep: string;\r\n logradouro: string;\r\n numero: string;\r\n complemento: string;\r\n bairro: string;\r\n cidade: string;\r\n uf: string;\r\n tipoEndereco: string;\r\n}\r\n","export class Produtosformulario {\r\n produtosLista: Array; \r\n}\r\n\r\nexport class Produtoformulario {\r\n codigoProduto: string;\r\n descontoProduto: string;\r\n}\r\n","export class Retorno {\r\n sucesso: boolean;\r\n erro: string;\r\n tokens: string[];\r\n}\r\n","import { Produtosformulario } from \"./Produtosformulario\";\r\n\r\nexport class RetornoProdutos {\r\n sucesso: boolean;\r\n erro: string;\r\n produtos: Produtosformulario;\r\n}\r\n","export class Telefones {\r\n celular: string;\r\n residencial: string;\r\n comercial: string;\r\n}\r\n","module.exports = \".ng-valids {\\r\\n border-color: #42A948; /* green */\\r\\n}\\r\\n\\r\\n.ng-invalids:not(form) {\\r\\n border-color: #a94442; /* red */\\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 Descontos exclusivos
\\r\\n em seu tratamento\\r\\n

\\r\\n

\\r\\n Cadastre-se aqui no
\\r\\n site e retire na farmácia\\r\\n

\\r\\n Quero me cadastrar\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\\"\\\" Como funciona

\\r\\n
\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Realize o seu cadastro
    \\r\\n aqui no site Kin Odontocare.\\r\\n

    \\r\\n
  • \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Após finalizar o cadastro
    \\r\\n você já estará apto a retirar
    \\r\\n seus produtos com descontos.
    \\r\\n \\r\\n Você terá a opção de imprimir
    \\r\\n ou recebê-lo em seu e-mail.\\r\\n
    \\r\\n

    \\r\\n Confira aqui os produtos disponíveis\\r\\n
  • \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Pronto! Basta informar
    \\r\\n o número do seu CPF no
    \\r\\n momento da compra.
    \\r\\n \\r\\n Para consultar a rede de
    \\r\\n farmácias participantes clique aqui\\r\\n
    \\r\\n

    \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\\"\\\" Onde encontrar

\\r\\n
\\r\\n Procure aqui as redes
\\r\\n participantes do programa\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{farmacia.loja}}

\\r\\n

Endereço: {{farmacia.endereco}} {{farmacia.complemento}}

\\r\\n

Telefone: {{farmacia.telefone}}

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

\\\"\\\" Cadastre-se

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

\\r\\n Descontos exclusivos
\\r\\n em seu tratamento
\\r\\n \\r\\n Cadastre-se aqui no
\\r\\n site e retire na farmácia\\r\\n
\\r\\n

\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n

\\r\\n (11) 4041-8089
\\r\\n contato@kinodontocare.com.br\\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n

REGULAMENTO PROGRAMA KIN ODONTOCARE

\\r\\n

O Programa KIN ODONTOCARE é um programa de relacionamento exclusivo da PHARMAKIN, que tem como objetivo oferecer benefício aos pacientes cadastrados nos programas. 

\\r\\n

Os termos, condições e benefícios serão especificados neste regulamento (“Regulamento”).

\\r\\n
\\r\\n
I.   COMO PARTICIPAR 
\\r\\n

Condições necessárias para a participação no Programas: 

\\r\\n

1.   O cadastro pode ser realizado gratuitamente via site www.kinodontocare.com.br.

\\r\\n

2.   As informações necessárias para realização do cadastro são: Nome Completo, CPF, Data de Nascimento, Telefone, E-mail, Sexo e CRO/UF do dentista.

\\r\\n
\\r\\n
\\r\\n
II.   BENEFÍCIOS, TERMOS E CONDIÇÕES
\\r\\n

1.   Os dados pessoais do beneficiário fornecidos ao Programa KIN ODONTOCARE a qualquer tempo (no cadastro, na atualização ou a qualquer outro momento) são de total responsabilidade do participante.

\\r\\n

2.   As informações solicitadas no cadastro serão utilizadas para assegurar o correto acesso aos benefícios do programa e recebimento de materiais informativos. 

\\r\\n

3.   O participante poderá cancelar sua participação no Programa KIN ODONTOCARE a qualquer momento e sem necessidade de aviso prévio.  

\\r\\n

4.   O participante será excluído do Programa KIN ODONTOCARE caso preste informações inverídicas, utilize os benefícios concedidos em favor de terceiros.  

\\r\\n

5.   Este regulamento encontra-se vigente e vigorará por prazo indeterminado, podendo a PHARMAKIN alterá-lo, suspendê-lo ou encerrá-lo a qualquer momento mediante comunicado aos participantes por meio do site: www.kinodontocare.com.br

\\r\\n

6.   Os descontos aplicados aos produtos podem ser alterados, a exclusivo critério do Programa, mediante a divulgação no site www.kinodontocare.com.br. Assim como, a inclusão e exclusão de produtos participantes, em qualquer tempo.

\\r\\n

7.   O Programa não se responsabiliza por outros descontos praticados por estabelecimentos credenciados.

\\r\\n

8.   Os descontos oferecidos não são cumulativos.

\\r\\n
\\r\\n
\\r\\n
III.   PRIVACIDADE DOS DADOS 
\\r\\n

1.   As informações pessoais fornecidas pelos participantes do Programa KIN ODONTOCARE serão utilizadas exclusivamente em atos relacionados a estes Programas, com exceção à participação em pesquisas relacionadas ao uso dos Programas, mediante expressa autorização por parte do participante do Programa KIN ODONTOCARE.

\\r\\n

2.   A PHARMAKIN se responsabiliza pela manutenção da base de dados do Programa KIN ODONTOCARE em um ambiente seguro de acesso restrito, garantindo sua integridade e confidencialidade.

\\r\\n
\\r\\n
\\r\\n
IV.   COMPARTILHAMENTO DAS INFORMAÇÕES
\\r\\n

1.   Será garantida a total privacidade e a proteção dos dados pessoais e individuais do paciente.

\\r\\n

2.   A PHARMAKIN não compartilha, sem a expressa autorização do participante, as informações da utilização do Programa KIN ODONTOCARE com terceiros para qualquer fim que não seja o mínimo necessário para o correto funcionamento do Programa KIN ODONTOCARE.

\\r\\n
\\r\\n
\\r\\n
V.   DISPOSIÇÕES GERAIS
\\r\\n

1.   A PHARMAKIN reserva-se o direito de alterar este Regulamento a qualquer momento, sem aviso prévio. A versão atualizada deste Regulamento sempre estará disponível no site: www.kinodontocare.com.br.

\\r\\n

2.   Ao realizar o cadastro no Programa, o participante formaliza o entendimento e concordância com as cláusulas deste regulamento.

\\r\\n

3.   Cabe ao dentista indicar os produtos que julgar adequados para seus pacientes. Em hipótese alguma será concedido ao dentista que prescrever produtos da PHARMAKIN qualquer tipo de benefício.

\\r\\n

4.   A existência do Programa KIN ODONTOCARE deve beneficiar exclusivamente os pacientes que atendam aos requisitos expressos nesse Regulamento.

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

Encaminhar por e-mail

\\r\\n
Informe o e-mail desejado
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
Cupom de desconto
\\r\\n
CPF cadastrado:
\\r\\n

{{cpfCupom}}

\\r\\n
{{user.beneficiario.dadosBeneficiario.nomeBeneficiario}}
\\r\\n
\\r\\n
\\r\\n
Instruções
\\r\\n

Dirija-se ao balcão da farmácia e informe o número de CPF cadastrado

\\r\\n \\r\\n
\\r\\n Imprimir\\r\\n Enviar por e-mail\\r\\n
\\r\\n
\\r\\n
\\r\\n
Informações ao balconista
\\r\\n

Para efetuar a venda com desconto, procure pelo programa
Kin Odontocare no Autorizador ePharma.

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n (11)4041-8089\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
Cupom de desconto
\\r\\n
CPF cadastrado:
\\r\\n

{{cpfCupom}}

\\r\\n
{{user.beneficiario.dadosBeneficiario.nomeBeneficiario}}
\\r\\n
\\r\\n
\\r\\n
Instruções
\\r\\n

Dirija-se ao balcão da farmácia e informe o número de CPF cadastrado

\\r\\n
\\r\\n
\\r\\n
Informações ao balconista
\\r\\n

Para efetuar a venda com desconto, procure pelo programa
Kin Odontocare no Autorizador ePharma.

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n

(11)4041-8089

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
E-mail encaminhado com sucesso
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
{{retorno.erro}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators, AbstractControl } from '@angular/forms';\r\nimport { CadastroService } from \"../../service/cadastro/cadastro.service\";\r\nimport { FarmaciasService } from \"../../service/farmacias/farmacias.service\";\r\nimport { Localizador } from \"../../model/Localizador\";\r\nimport { CartaoBeneficiario } from '../../model/CartaoBeneficiario';\r\nimport { Retorno } from '../../model/Retorno';\r\nimport { Beneficiario } from '../../model/Beneficiario';\r\nimport { DadosBeneficiario } from '../../model/DadosBeneficiario';\r\nimport { Endereco } from '../../model/Endereco';\r\nimport { Telefones } from '../../model/Telefones';\r\nimport { DataCEP } from '../../model/DataCEP';\r\nimport { Uf } from '../../model/Uf';\r\nimport { Email } from '../../../app/model/Email';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-cadastro',\r\n templateUrl: './CadastroPacienteConsumerCare.component.html',\r\n styleUrls: ['./CadastroPacienteConsumerCare.component.css'],\r\n providers: [CadastroService, FarmaciasService]\r\n})\r\n\r\nexport class CadastroPacienteConsumerCareComponent implements OnInit\r\n{\r\n uflista: Uf[];\r\n user: CartaoBeneficiario;\r\n show: boolean;\r\n planoId: number;\r\n emailPattern = \"^[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+).(\\.[a-z]{2,3})$\";\r\n cpfPattern = \"^[0-9]{3}\\.[0-9]{3}\\.[0-9]{3}\\-[0-9]{2}$\";\r\n\r\n public estadosCadastro: any[];\r\n public cidadesCadastro: any[];\r\n public cepCadastro: DataCEP;\r\n public estados: any[];\r\n public cidades: any[];\r\n public bairros: any[];\r\n public estadoSelecionado: string;\r\n public cidadeSelecionada: string;\r\n public bairroSelecionado: string;\r\n public farmacias: any[];\r\n public esconder: boolean;\r\n public testeestado: any[];\r\n public testecidade: any[];\r\n public testebairro: any[];\r\n public retorno: Retorno = new Retorno();\r\n public cpfCupom: string;\r\n public cepInvalido: boolean;\r\n public emailv: Email = new Email();\r\n public carregando: boolean;\r\n\r\n cadastroBeneficiarioForm = new FormGroup({\r\n nomeBeneficiario: new FormControl('', [Validators.required, Validators.pattern(\"^[A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ]+$\")]),\r\n email: new FormControl('', [Validators.required, Validators.pattern(this.emailPattern)]),\r\n telefone: new FormControl('', [Validators.required]),\r\n cpf: new FormControl('', [Validators.required, Validators.pattern(this.cpfPattern), GenericValidator.isValidCpf()]),\r\n dataNascimento: new FormControl('', [Validators.required, GenericValidator.validateDate()]),\r\n sexo: new FormControl('', Validators.required),\r\n croDentista: new FormControl(),\r\n ufDentista: new FormControl(),\r\n aceitotermo: new FormControl('', Validators.requiredTrue),\r\n aceitopromo: new FormControl()\r\n });\r\n\r\n constructor(private cadastroService: CadastroService, private farmaciasService: FarmaciasService) { }\r\n\r\n ngOnInit()\r\n {\r\n this.user = new CartaoBeneficiario();\r\n this.user.beneficiario = new Beneficiario();\r\n this.user.beneficiario.dadosBeneficiario = new DadosBeneficiario();\r\n this.user.beneficiario.endereco = new Endereco();\r\n this.user.beneficiario.telefones = new Telefones();\r\n this.cepCadastro = new DataCEP();\r\n this.esconder = true;\r\n this.cepInvalido = false;\r\n this.estadoSelecionado = \"\";\r\n this.cidadeSelecionada = \"\";\r\n this.bairroSelecionado = \"\";\r\n this.carregando = false;\r\n this.carregarEstados();\r\n\r\n //$(\"#emailModal\").modal(\"show\");\r\n\r\n this.uflista = [\r\n { nome: \"AC\" },\r\n { nome: \"AL\" },\r\n { nome: \"AP\" },\r\n { nome: \"AM\" },\r\n { nome: \"BA\" },\r\n { nome: \"CE\" },\r\n { nome: \"DF\" },\r\n { nome: \"ES\" },\r\n { nome: \"GO\" },\r\n { nome: \"MA\" },\r\n { nome: \"MT\" },\r\n { nome: \"MS\" },\r\n { nome: \"MG\" },\r\n { nome: \"PA\" },\r\n { nome: \"PB\" },\r\n { nome: \"PR\" },\r\n { nome: \"PE\" },\r\n { nome: \"PI\" },\r\n { nome: \"RJ\" },\r\n { nome: \"RN\" },\r\n { nome: \"RS\" },\r\n { nome: \"RO\" },\r\n { nome: \"RR\" },\r\n { nome: \"SC\" },\r\n { nome: \"SP\" },\r\n { nome: \"SE\" },\r\n { nome: \"TO\" }\r\n ];\r\n\r\n //$(\"#ufDentista\").value = 0;\r\n this.cadastroBeneficiarioForm.controls['ufDentista'].setValue(0);\r\n }\r\n\r\n private carregarEstados()\r\n {\r\n this.farmaciasService.CarregarEstadosConsumerCare().subscribe((result: Localizador) =>\r\n {\r\n this.estados = result.estados;\r\n });\r\n }\r\n\r\n private carregarCidade(estado: string)\r\n {\r\n this.farmaciasService.CarregarCidadeConsumerCare(estado).subscribe((result: Localizador) =>\r\n {\r\n this.cidades = result.cidades;\r\n });\r\n }\r\n\r\n private carregarBairro(estado: string, cidade: string)\r\n {\r\n this.farmaciasService.CarregarBairroConsumerCare(estado, cidade).subscribe((result: Localizador) =>\r\n {\r\n this.bairros = result.bairros;\r\n });\r\n }\r\n\r\n private carregarFarmacias(estado: string, cidade: string, bairro: string)\r\n {\r\n this.farmaciasService.CarregarFarmaciasConsumerCare(estado, cidade, bairro).subscribe(result =>\r\n {\r\n this.farmacias = result['farmacias'];\r\n this.esconder = false;\r\n });\r\n }\r\n\r\n private onSelectEstado(value)\r\n {\r\n this.carregarCidade(value);\r\n this.cidadeSelecionada = \"\";\r\n this.bairroSelecionado = \"\";\r\n }\r\n\r\n private onSelectCidade(value)\r\n {\r\n this.cidadeSelecionada = value;\r\n this.carregarBairro(this.estadoSelecionado, this.cidadeSelecionada);\r\n this.bairroSelecionado = \"\";\r\n }\r\n\r\n private onSelectBairro(value)\r\n {\r\n this.bairroSelecionado = value;\r\n this.carregarFarmacias(this.estadoSelecionado, this.cidadeSelecionada, this.bairroSelecionado);\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component)\r\n {\r\n var ativa = this.cadastroBeneficiarioForm.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n \r\n if (ativa)\r\n {\r\n campoObrigatorioerror = this.cadastroBeneficiarioForm.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component)\r\n {\r\n var ativa = this.cadastroBeneficiarioForm.controls[nomecampo].invalid;\r\n var cpfinvalido = false;\r\n var dataInvalida = false;\r\n var patterninvalido = false;\r\n if (ativa) {\r\n cpfinvalido = this.cadastroBeneficiarioForm.controls[nomecampo].errors.cpfNotValid;\r\n dataInvalida = this.cadastroBeneficiarioForm.controls[nomecampo].errors.dataNotValid;\r\n patterninvalido = this.cadastroBeneficiarioForm.controls[nomecampo].errors.pattern;\r\n cpfinvalido = (cpfinvalido !== null && cpfinvalido) ? true : false;\r\n dataInvalida = (dataInvalida !== null && dataInvalida) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n\r\n ativa = ativa && (cpfinvalido || patterninvalido || dataInvalida);\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltip(ativa, component)\r\n {\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n\r\n public limparCampos()\r\n {\r\n this.cadastroBeneficiarioForm = new FormGroup({\r\n nomeBeneficiario: new FormControl('', [Validators.required, Validators.pattern(\"^[A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ]+$\")]),\r\n email: new FormControl('', [Validators.required, Validators.pattern(this.emailPattern)]),\r\n telefone: new FormControl('', [Validators.required]),\r\n cpf: new FormControl('', [Validators.required, Validators.pattern(this.cpfPattern), GenericValidator.isValidCpf()]),\r\n dataNascimento: new FormControl('', [Validators.required, GenericValidator.validateDate()]),\r\n sexo: new FormControl('', Validators.required),\r\n croDentista: new FormControl(),\r\n ufDentista: new FormControl(),\r\n aceitotermo: new FormControl('', Validators.requiredTrue),\r\n aceitopromo: new FormControl()\r\n });\r\n\r\n this.cadastroBeneficiarioForm.controls['ufDentista'].setValue(0);\r\n\r\n }\r\n\r\n public Imprimir()\r\n {\r\n $(\".printable\").printThis({\r\n debug: false, // show the iframe for debugging\r\n importCSS: true, // import parent page css\r\n importStyle: false, // import style tags\r\n printContainer: true, // print outer container/$.selector\r\n loadCSS: \"\", // path to additional css file - use an array [] for multiple\r\n pageTitle: \"\", // add title to print page\r\n removeInline: false, // remove inline styles from print elements\r\n removeInlineSelector: \"*\", // custom selectors to filter inline styles. removeInline must be true\r\n printDelay: 333, // variable print delay\r\n header: null, // prefix to html\r\n footer: null, // postfix to html\r\n base: false, // preserve the BASE tag or accept a string for the URL\r\n formValues: true, // preserve input/form values\r\n canvas: false, // copy canvas content\r\n doctypeString: '...', // enter a different doctype for older markup\r\n removeScripts: false, // remove script tags from print content\r\n copyTagClasses: false, // copy classes from the html & body tag\r\n beforePrintEvent: null, // function for printEvent in iframe\r\n beforePrint: null, // function called before iframe is filled\r\n afterPrint: null // function called before iframe is removed\r\n });\r\n }\r\n\r\n public AnimacaoComoFunciona()\r\n {\r\n $('html, body').animate({\r\n scrollTop: $('#como-funciona').offset().top\r\n }, 1000);\r\n }\r\n\r\n public AnimacaoOndeEncontrar()\r\n {\r\n $('html, body').animate({\r\n scrollTop: $('#onde-encontrar').offset().top\r\n }, 1000);\r\n }\r\n\r\n public AnimacaoCadastrar()\r\n {\r\n $('html, body').animate({\r\n scrollTop: $('#cadastre-se').offset().top\r\n }, 1000);\r\n }\r\n\r\n public abrirTermo()\r\n {\r\n $('#TermoModal').modal('show');\r\n }\r\n\r\n public EscolherEmail()\r\n {\r\n $('.modal')\r\n .on({\r\n 'show.bs.modal': function () {\r\n var idx = $('.modal:visible').length;\r\n\r\n $(this).css('z-index', 1040 + (10 * idx));\r\n var url = $(this).find('[data-url]').data('url');\r\n if (url != undefined && url != '') {\r\n var id = $(this).attr('id');\r\n $('#' + id + ' .modal-body').load(url);\r\n }\r\n },\r\n 'shown.bs.modal': function () {\r\n var idx = ($('.modal:visible').length) - 1; // raise backdrop after animation.\r\n $('.modal-backdrop').not('.stacked')\r\n .css('z-index', 1039 + (10 * idx))\r\n .addClass('stacked');\r\n },\r\n 'hidden.bs.modal': function () {\r\n if ($('.modal:visible').length > 0) {\r\n // restore the modal-open class to the body element, so that scrolling works\r\n // properly after de-stacking a modal.\r\n setTimeout(function () {\r\n $(document.body).addClass('modal-open');\r\n }, 0);\r\n }\r\n }\r\n });\r\n\r\n $(\"#myModal2\").modal('hide');\r\n $(\"#emailModal\").modal('show');\r\n }\r\n\r\n public fecharEmail()\r\n {\r\n $(\"#myModal3 .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public fecharEmail2()\r\n {\r\n $(\"#emailModal .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public EmailEnviado()\r\n {\r\n $(\"#myModal3 .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public EnviarEmail()\r\n {\r\n var enviou;\r\n\r\n this.carregando = true;\r\n\r\n this.emailv.destinatario = $(\"#emailEnviado\").val();\r\n this.emailv.numeroCupom = this.cpfCupom;\r\n this.emailv.nomeDentista = this.user.beneficiario.dadosBeneficiario.nomeBeneficiario;\r\n this.emailv.descontos = [];\r\n\r\n this.cadastroService\r\n .EnviarEmailConsumerCare(this.emailv)\r\n .then((res: Retorno) =>\r\n {\r\n enviou = res.sucesso;\r\n \r\n if (enviou)\r\n {\r\n $(\"#emailModal .close\").click()\r\n $(\"#myModal3\").modal('show');\r\n }\r\n else\r\n {\r\n this.retorno.erro = \"Erro ao enviar e-mail\"\r\n $('#myModalErro').modal('show');\r\n }\r\n \r\n this.carregando = false;\r\n })\r\n .catch(() => this.mostrarErroInterno);\r\n }\r\n \r\n public onCadastrar()\r\n {\r\n this.carregando = true;\r\n\r\n this.cpfCupom = this.cadastroBeneficiarioForm.controls['cpf'].value.toString();\r\n \r\n this.user.beneficiario.dadosBeneficiario = {\r\n nomeBeneficiario: this.cadastroBeneficiarioForm.controls['nomeBeneficiario'].value,\r\n cpf: this.cadastroBeneficiarioForm.controls['cpf'].value.toString().replace(/\\.|\\-/g, ''),\r\n rg: \"\",\r\n dataNascimento: this.cadastroBeneficiarioForm.controls['dataNascimento'].value,\r\n sexo: this.cadastroBeneficiarioForm.controls['sexo'].value,\r\n email1: this.cadastroBeneficiarioForm.controls['email'].value,\r\n email2: \"\",\r\n };\r\n\r\n this.user.beneficiario.endereco = {\r\n cep: \"\",\r\n numero: \"\",\r\n logradouro: \"\",\r\n bairro: \"\",\r\n cidade: \"\",\r\n uf: \"\",\r\n complemento: \"\",\r\n tipoEndereco: \"\"\r\n };\r\n\r\n this.user.beneficiario.telefones = {\r\n residencial: this.cadastroBeneficiarioForm.controls['telefone'].value.toString().replace(/\\(|\\)|\\-|\\s/g, ''),\r\n celular: this.user.beneficiario.telefones.residencial,\r\n comercial: \"\"\r\n };\r\n\r\n if (this.cadastroBeneficiarioForm.controls['croDentista'].value != null)\r\n this.user.croDentista = this.cadastroBeneficiarioForm.controls['croDentista'].value;\r\n else\r\n this.user.croDentista = \"\";\r\n\r\n if (this.cadastroBeneficiarioForm.controls['ufDentista'].value != null)\r\n this.user.ufDentista = (this.user.croDentista == \"\" ? \"\" : this.cadastroBeneficiarioForm.controls['ufDentista'].value);\r\n else\r\n this.user.ufDentista = \"\";\r\n\r\n if (this.cadastroBeneficiarioForm.controls['aceitopromo'].value != null)\r\n this.user.aceito_SMS_e_Email = this.cadastroBeneficiarioForm.controls['aceitopromo'].value;\r\n else\r\n this.user.aceito_SMS_e_Email = false;\r\n\r\n this.cadastroService\r\n .CriarBeneficiarioConsumerCare(this.user)\r\n .then((res: Retorno) =>\r\n {\r\n this.retorno = res;\r\n \r\n if (res.sucesso)\r\n $('#myModal2').modal('show');\r\n else\r\n $('#myModalErro').modal('show');\r\n\r\n this.carregando = false;\r\n })\r\n .catch(() => this.mostrarErroInterno);\r\n }\r\n\r\n public mostrarErroInterno()\r\n {\r\n this.retorno.erro = \"Erro interno\";\r\n $('#myModalErro').modal('show');\r\n this.carregando = false;\r\n }\r\n\r\n public cssObrigatorio(nomecampo)\r\n {\r\n if (this.cadastroBeneficiarioForm.controls[nomecampo].invalid && (this.cadastroBeneficiarioForm.controls[nomecampo].touched || this.cadastroBeneficiarioForm.controls[nomecampo].dirty)) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.cadastroBeneficiarioForm.controls[nomecampo].valid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"white\");\r\n }\r\n }\r\n}\r\n\r\nexport class GenericValidator\r\n{\r\n constructor() { }\r\n\r\n /**\r\n * Valida se a data é valida\r\n */\r\n static validateDate()\r\n {\r\n return (control: AbstractControl): Validators =>\r\n {\r\n var RegExPattern = /^((((0?[1-9]|[12]\\d|3[01])[\\.\\-\\/](0?[13578]|1[02])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|[12]\\d|30)[\\.\\-\\/](0?[13456789]|1[012])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|1\\d|2[0-8])[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|(29[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|[12]\\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|1\\d|2[0-8])02((1[6-9]|[2-9]\\d)?\\d{2}))|(2902((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;\r\n if (control.value.toString()) {\r\n if (!((control.value.match(RegExPattern)) && (control.value != ''))) {\r\n return { dataNotValid: true };\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf()\r\n {\r\n return (control: AbstractControl): Validators => {\r\n const cpf = control.value.toString().replace(/\\.|\\-/g, '');\r\n if (cpf) {\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n","module.exports = \"\"","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

Valide aqui seu cupom

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

\\\"\\\" Como funciona

\\r\\n
\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Valide seu cupom
    \\r\\n aqui no site Kin Odontocare.\\r\\n

    \\r\\n
  • \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Após finalizar o cadastro
    \\r\\n você já estará apto a retirar
    \\r\\n seus produtos com descontos.
    \\r\\n \\r\\n Você terá a opção de imprimir
    \\r\\n ou recebê-lo em seu e-mail.\\r\\n
    \\r\\n

    \\r\\n Confira aqui os produtos disponíveis\\r\\n
  • \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Pronto! basta o paciente
    \\r\\n informar o número do cupom
    \\r\\n no momento da compra.
    \\r\\n \\r\\n Para consultar a rede de
    \\r\\n farmácias participantes clique aqui\\r\\n
    \\r\\n

    \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\\"\\\" Onde encontrar

\\r\\n
\\r\\n Procure aqui as redes
\\r\\n participantes do programa\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{farmacia.loja}}

\\r\\n

Endereço: {{farmacia.endereco}} {{farmacia.complemento}}

\\r\\n

Telefone: {{farmacia.telefone}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n

\\r\\n (11) 4041-8089
\\r\\n contato@kinodontocare.com.br\\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n

REGULAMENTO PROGRAMA KIN ODONTOCARE

\\r\\n

O Programa KIN ODONTOCARE é um programa de relacionamento exclusivo da PHARMAKIN, que tem como objetivo oferecer benefício aos pacientes cadastrados no programa. 

\\r\\n

Os termos, condições e benefícios serão especificados neste regulamento (“Regulamento”).

\\r\\n
\\r\\n
I.   COMO PARTICIPAR 
\\r\\n

Condições necessárias para a participação no Programas: 

\\r\\n

1.   O cadastro pode ser realizado gratuitamente via site www.kinodontocare.com.br.

\\r\\n

2.   As informações necessárias para realização do cadastro são: Nome Completo, CPF, Data de Nascimento, Telefone, E-mail, Sexo e CRO/UF do dentista.

\\r\\n
\\r\\n
\\r\\n
II.   BENEFÍCIOS, TERMOS E CONDIÇÕES
\\r\\n

1.   Os dados pessoais do beneficiário fornecidos ao Programa KIN ODONTOCARE a qualquer tempo (no cadastro, na atualização ou a qualquer outro momento) são de total responsabilidade do participante.

\\r\\n

2.   As informações solicitadas no cadastro serão utilizadas para assegurar o correto acesso aos benefícios do programa e recebimento de materiais informativos. 

\\r\\n

3.   O participante poderá cancelar sua participação no Programa KIN ODONTOCARE a qualquer momento e sem necessidade de aviso prévio.  

\\r\\n

4.   O participante será excluído do Programa KIN ODONTOCARE caso preste informações inverídicas, utilize os benefícios concedidos em favor de terceiros.  

\\r\\n

5.   Este regulamento encontra-se vigente e vigorará por prazo indeterminado, podendo a PHARMAKIN alterá-lo, suspendê-lo ou encerrá-lo a qualquer momento mediante comunicado aos participantes por meio do site: www.kinodontocare.com.br

\\r\\n

6.   Os descontos aplicados aos produtos podem ser alterados, a exclusivo critério do Programa, mediante a divulgação no site www.kinodontocare.com.br. Assim como, a inclusão e exclusão de produtos participantes, em qualquer tempo.

\\r\\n

7.   O Programa não se responsabiliza por outros descontos praticados por estabelecimentos credenciados.

\\r\\n

8.   Os descontos oferecidos não são cumulativos.

\\r\\n
\\r\\n
\\r\\n
III.   PRIVACIDADE DOS DADOS 
\\r\\n

1.   As informações pessoais fornecidas pelos participantes do Programa KIN ODONTOCARE serão utilizadas exclusivamente em atos relacionados a estes Programas, com exceção à participação em pesquisas relacionadas ao uso do Programa, mediante expressa autorização por parte do participante do Programa KIN ODONTOCARE.

\\r\\n

2.   A PHARMAKIN se responsabiliza pela manutenção da base de dados do Programa KIN ODONTOCARE em um ambiente seguro de acesso restrito, garantindo sua integridade e confidencialidade.

\\r\\n
\\r\\n
\\r\\n
IV.   COMPARTILHAMENTO DAS INFORMAÇÕES
\\r\\n

1.   Será garantida a total privacidade e a proteção dos dados pessoais e individuais do paciente.

\\r\\n

2.   A PHARMAKIN não compartilha, sem a expressa autorização do participante, as informações da utilização do Programa KIN ODONTOCARE com terceiros para qualquer fim que não seja o mínimo necessário para o correto funcionamento do Programa KIN ODONTOCARE.

\\r\\n
\\r\\n
\\r\\n
V.   DISPOSIÇÕES GERAIS
\\r\\n

1.   A PHARMAKIN reserva-se o direito de alterar este Regulamento a qualquer momento, sem aviso prévio. A versão atualizada deste Regulamento sempre estará disponível no site: www.kinodontocare.com.br.

\\r\\n

2.   Ao realizar o cadastro no Programa, o participante formaliza o entendimento e concordância com as cláusulas deste regulamento.

\\r\\n

3.   Cabe ao dentista indicar os produtos que julgar adequados para seus pacientes. Em hipótese alguma será concedido ao dentista que prescrever produtos da PHARMAKIN qualquer tipo de benefício.

\\r\\n

4.   A existência do Programa KIN ODONTOCARE deve beneficiar exclusivamente os pacientes que atendam aos requisitos expressos nesse Regulamento.

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

Encaminhar por e-mail

\\r\\n
Informe o e-mail desejado
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
Cupom de desconto
\\r\\n
CPF cadastrado:
\\r\\n

{{cpfCupom}}

\\r\\n
{{user.beneficiario.dadosBeneficiario.nomeBeneficiario}}
\\r\\n
\\r\\n
\\r\\n
Instruções
\\r\\n

Dirija-se ao balcão da farmácia e informe o número de CPF cadastrado

\\r\\n \\r\\n
\\r\\n Imprimir\\r\\n Enviar por e-mail\\r\\n
\\r\\n
\\r\\n
\\r\\n
Informações ao balconista
\\r\\n

Para efetuar a venda com desconto, procure pelo programa
Kin Odontocare no Autorizador ePharma.

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n (11)4041-8089\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
Cupom de desconto
\\r\\n
CPF cadastrado:
\\r\\n

{{cpfCupom}}

\\r\\n
{{user.beneficiario.dadosBeneficiario.nomeBeneficiario}}
\\r\\n
\\r\\n
\\r\\n
Instruções
\\r\\n

Dirija-se ao balcão da farmácia e informe o número de CPF cadastrado

\\r\\n
\\r\\n
\\r\\n
Informações ao balconista
\\r\\n

Para efetuar a venda com desconto, procure pelo programa
Kin Odontocare no Autorizador ePharma.

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n

(11)4041-8089

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
E-mail encaminhado com sucesso
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
{{retorno.erro}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import { Component,OnInit, NgModule } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators, ValidatorFn, ValidationErrors, AbstractControl } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CadastroService } from \"../../service/cadastro/cadastro.service\";\r\nimport { FarmaciasService } from \"../../service/farmacias/farmacias.service\";\r\nimport { Localizador } from \"../../model/Localizador\";\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { CartaoBeneficiario } from '../../model/CartaoBeneficiario';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead';\r\nimport { Retorno } from '../../model/Retorno';\r\nimport { Beneficiario } from '../../model/Beneficiario';\r\nimport { DadosBeneficiario } from '../../model/DadosBeneficiario';\r\nimport { Endereco } from '../../model/Endereco';\r\nimport { Telefones } from '../../model/Telefones';\r\nimport { CEP } from '../../model/CEP';\r\nimport { Estados } from '../../model/Estados';\r\nimport { DataCEP } from '../../model/DataCEP';\r\nimport { Uf } from '../../model/Uf';\r\nimport { Email } from 'src/app/model/Email';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-validaCupom',\r\n templateUrl: './CadastroPacienteOdontoCare.component.html',\r\n styleUrls: ['./CadastroPacienteOdontoCare.component.css'],\r\n providers: [CadastroService, FarmaciasService]\r\n})\r\n\r\nexport class CadastroPacienteOdontoCareComponent implements OnInit{\r\n uflista: Uf[];\r\n user: CartaoBeneficiario;\r\n show: boolean;\r\n planoId: number;\r\n emailPattern = \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$\";\r\n cpfPattern = \"^[0-9]{3}\\.[0-9]{3}\\.[0-9]{3}\\-[0-9]{2}$\";\r\n\r\n public estadosCadastro: any[];\r\n public cidadesCadastro: any[];\r\n public cepCadastro: DataCEP;\r\n public estados: any[];\r\n public cidades: any[];\r\n public bairros: any[];\r\n public estadoSelecionado: string;\r\n public cidadeSelecionada: string;\r\n public bairroSelecionado: string;\r\n public farmacias: any[];\r\n public esconder: boolean;\r\n public testeestado: any[];\r\n public testecidade: any[];\r\n public testebairro: any[];\r\n public retorno: Retorno = new Retorno();\r\n public cpfCupom: string;\r\n public cepInvalido: boolean;\r\n public emailv: Email = new Email();\r\n\r\n cadastroBeneficiarioForm = new FormGroup({\r\n numeroCupom: new FormControl('', Validators.required),\r\n nomeBeneficiario: new FormControl('', [Validators.required, Validators.pattern(\"^[A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ]+$\")]),\r\n email: new FormControl('', [Validators.required, Validators.pattern(this.emailPattern)]),\r\n telefone: new FormControl('', Validators.required),\r\n cpf: new FormControl('', [Validators.required, Validators.pattern(this.cpfPattern), GenericValidator.isValidCpf()]),\r\n dataNascimento: new FormControl('', [Validators.required, GenericValidator.validateDate()]),\r\n sexo: new FormControl('', Validators.required),\r\n croDentista: new FormControl('',Validators.required),\r\n ufDentista: new FormControl('',Validators.required),\r\n aceitotermo: new FormControl('', Validators.requiredTrue),\r\n aceitopromo: new FormControl()\r\n });\r\n\r\n constructor(\r\n private cadastroService: CadastroService,\r\n private farmaciasService: FarmaciasService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n this.user = new CartaoBeneficiario();\r\n this.user.beneficiario = new Beneficiario();\r\n this.user.beneficiario.dadosBeneficiario = new DadosBeneficiario();\r\n this.user.beneficiario.endereco = new Endereco();\r\n this.user.beneficiario.telefones = new Telefones();\r\n this.cepCadastro = new DataCEP();\r\n this.esconder = true;\r\n this.cepInvalido = false;\r\n this.estadoSelecionado = \"\";\r\n this.cidadeSelecionada = \"\";\r\n this.bairroSelecionado = \"\";\r\n this.carregarEstados();\r\n\r\n this.uflista = [\r\n { nome: \"AC\" },\r\n { nome: \"AL\" },\r\n { nome: \"AP\" },\r\n { nome: \"AM\" },\r\n { nome: \"BA\" },\r\n { nome: \"CE\" },\r\n { nome: \"DF\" },\r\n { nome: \"ES\" },\r\n { nome: \"GO\" },\r\n { nome: \"MA\" },\r\n { nome: \"MT\" },\r\n { nome: \"MS\" },\r\n { nome: \"MG\" },\r\n { nome: \"PA\" },\r\n { nome: \"PB\" },\r\n { nome: \"PR\" },\r\n { nome: \"PE\" },\r\n { nome: \"PI\" },\r\n { nome: \"RJ\" },\r\n { nome: \"RN\" },\r\n { nome: \"RS\" },\r\n { nome: \"RO\" },\r\n { nome: \"RR\" },\r\n { nome: \"SC\" },\r\n { nome: \"SP\" },\r\n { nome: \"SE\" },\r\n { nome: \"TO\" }\r\n ];\r\n }\r\n\r\n private carregarEstados() {\r\n this.farmaciasService.CarregarEstadosOdontoCare().subscribe((result: Localizador) => {\r\n this.estados = result.estados;\r\n });\r\n }\r\n\r\n private carregarCidade(estado: string) {\r\n this.farmaciasService.CarregarCidadeOdontoCare(estado).subscribe((result: Localizador) => {\r\n this.cidades = result.cidades;\r\n });\r\n }\r\n\r\n private carregarBairro(estado: string, cidade: string) {\r\n this.farmaciasService.CarregarBairroOdontoCare(estado, cidade).subscribe((result: Localizador) => {\r\n this.bairros = result.bairros;\r\n });\r\n }\r\n\r\n private carregarFarmacias(estado: string, cidade: string, bairro: string) {\r\n this.farmaciasService.CarregarFarmaciasOdontoCare(estado, cidade, bairro).subscribe(result => {\r\n this.farmacias = result['farmacias'];\r\n this.esconder = false;\r\n });\r\n }\r\n \r\n private onSelectEstado(value) {\r\n this.carregarCidade(value);\r\n this.cidadeSelecionada = \"\";\r\n this.bairroSelecionado = \"\";\r\n }\r\n\r\n private onSelectCidade(value) {\r\n this.cidadeSelecionada = value;\r\n this.carregarBairro(this.estadoSelecionado, this.cidadeSelecionada);\r\n this.bairroSelecionado = \"\";\r\n }\r\n\r\n private onSelectBairro(value) {\r\n this.bairroSelecionado = value;\r\n this.carregarFarmacias(this.estadoSelecionado, this.cidadeSelecionada, this.bairroSelecionado);\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component) {\r\n\r\n var ativa = this.cadastroBeneficiarioForm.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.cadastroBeneficiarioForm.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component) {\r\n\r\n var ativa = this.cadastroBeneficiarioForm.controls[nomecampo].invalid;\r\n var cpfinvalido = false;\r\n var dataInvalida = false;\r\n var patterninvalido = false;\r\n if (ativa) {\r\n cpfinvalido = this.cadastroBeneficiarioForm.controls[nomecampo].errors.cpfNotValid;\r\n dataInvalida = this.cadastroBeneficiarioForm.controls[nomecampo].errors.dataNotValid;\r\n patterninvalido = this.cadastroBeneficiarioForm.controls[nomecampo].errors.pattern;\r\n cpfinvalido = (cpfinvalido !== null && cpfinvalido) ? true : false;\r\n dataInvalida = (dataInvalida !== null && dataInvalida) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n\r\n ativa = ativa && (cpfinvalido || patterninvalido || dataInvalida);\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltip(ativa, component) {\r\n\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n\r\n public limparCampos() {\r\n\r\n this.cadastroBeneficiarioForm = new FormGroup({\r\n numeroCupom: new FormControl('', Validators.required),\r\n nomeBeneficiario: new FormControl('', [Validators.required, Validators.pattern(\"^[A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ]+$\")]),\r\n email: new FormControl('', [Validators.required, Validators.pattern(this.emailPattern)]),\r\n telefone: new FormControl('', Validators.required),\r\n cpf: new FormControl('', [Validators.required, Validators.pattern(this.cpfPattern), GenericValidator.isValidCpf()]),\r\n dataNascimento: new FormControl('', [Validators.required, GenericValidator.validateDate()]),\r\n sexo: new FormControl('', Validators.required),\r\n croDentista: new FormControl('', Validators.required),\r\n ufDentista: new FormControl('', Validators.required),\r\n aceitotermo: new FormControl('', Validators.requiredTrue),\r\n aceitopromo: new FormControl()\r\n });\r\n\r\n }\r\n\r\n public EscolherEmail() {\r\n $('.modal')\r\n .on({\r\n 'show.bs.modal': function () {\r\n var idx = $('.modal:visible').length;\r\n\r\n $(this).css('z-index', 1040 + (10 * idx));\r\n var url = $(this).find('[data-url]').data('url');\r\n if (url != undefined && url != '') {\r\n var id = $(this).attr('id');\r\n $('#' + id + ' .modal-body').load(url);\r\n }\r\n },\r\n 'shown.bs.modal': function () {\r\n var idx = ($('.modal:visible').length) - 1; // raise backdrop after animation.\r\n $('.modal-backdrop').not('.stacked')\r\n .css('z-index', 1039 + (10 * idx))\r\n .addClass('stacked');\r\n },\r\n 'hidden.bs.modal': function () {\r\n if ($('.modal:visible').length > 0) {\r\n // restore the modal-open class to the body element, so that scrolling works\r\n // properly after de-stacking a modal.\r\n setTimeout(function () {\r\n $(document.body).addClass('modal-open');\r\n }, 0);\r\n }\r\n }\r\n });\r\n\r\n $(\"#myModal2\").modal('hide');\r\n $(\"#myModal\").modal('show');\r\n }\r\n\r\n public fecharEmail() {\r\n $(\"#myModal3 .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public fecharEmail2() {\r\n $(\"#myModal .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public EmailEnviado() {\r\n $(\"#myModal3 .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public EnviarEmail() {\r\n var enviou;\r\n\r\n this.emailv.destinatario = $(\"#emailEnviado\").val();\r\n this.emailv.numeroCupom = this.cpfCupom;\r\n this.emailv.nomeDentista = this.user.beneficiario.dadosBeneficiario.nomeBeneficiario;\r\n this.emailv.descontos = [];\r\n\r\n this.cadastroService.EnviarEmailOdontoCare(this.emailv).subscribe((res: Retorno) => {\r\n enviou = res.sucesso;\r\n if (enviou) {\r\n $(\"#myModal .close\").click()\r\n $(\"#myModal3\").modal('show');\r\n }\r\n });\r\n }\r\n\r\n public Imprimir() {\r\n $(\".printable\").printThis();\r\n }\r\n\r\n public AnimacaoComoFunciona() {\r\n $('html, body').animate({\r\n scrollTop: $('#como-funciona').offset().top\r\n }, 1000);\r\n }\r\n\r\n public AnimacaoOndeEncontrar() {\r\n $('html, body').animate({\r\n scrollTop: $('#onde-encontrar').offset().top\r\n }, 1000);\r\n }\r\n\r\n public AnimacaoCadastrar() {\r\n $('html, body').animate({\r\n scrollTop: $('#banner').offset().top\r\n }, 1000);\r\n }\r\n\r\n public abrirTermo() {\r\n $('#TermoModal').modal('show');\r\n }\r\n\r\n public onCadastrar() {\r\n this.user.tokenCupom = this.cadastroBeneficiarioForm.controls['numeroCupom'].value;\r\n this.user.beneficiario.dadosBeneficiario.nomeBeneficiario = this.cadastroBeneficiarioForm.controls['nomeBeneficiario'].value;\r\n this.cpfCupom = this.cadastroBeneficiarioForm.controls['cpf'].value.toString();\r\n this.user.beneficiario.dadosBeneficiario.cpf = this.cadastroBeneficiarioForm.controls['cpf'].value.toString().replace(/\\.|\\-/g, '');\r\n this.user.beneficiario.dadosBeneficiario.rg = \"\";\r\n this.user.beneficiario.dadosBeneficiario.dataNascimento = this.cadastroBeneficiarioForm.controls['dataNascimento'].value;\r\n this.user.beneficiario.dadosBeneficiario.sexo = (this.cadastroBeneficiarioForm.controls['sexo'].value == \"O\" ? \"\" : this.cadastroBeneficiarioForm.controls['sexo'].value);\r\n this.user.beneficiario.dadosBeneficiario.email1 = this.cadastroBeneficiarioForm.controls['email'].value;\r\n this.user.beneficiario.dadosBeneficiario.email2 = \"\";\r\n this.user.beneficiario.endereco.cep = \"\";\r\n this.user.beneficiario.endereco.numero = \"\";\r\n this.user.beneficiario.endereco.logradouro = \"\";\r\n this.user.beneficiario.endereco.bairro = \"\";\r\n this.user.beneficiario.endereco.cidade = \"\";\r\n this.user.beneficiario.endereco.uf = \"\";\r\n this.user.beneficiario.endereco.complemento = \"\";\r\n this.user.beneficiario.endereco.tipoEndereco = \"\";\r\n this.user.beneficiario.telefones.residencial = this.cadastroBeneficiarioForm.controls['telefone'].value.toString().replace(/\\(|\\)|\\-|\\s/g, '');\r\n this.user.beneficiario.telefones.celular = this.user.beneficiario.telefones.residencial;\r\n this.user.beneficiario.telefones.comercial = \"\";\r\n\r\n if (this.cadastroBeneficiarioForm.controls['croDentista'].value != null) {\r\n\r\n this.user.croDentista = this.cadastroBeneficiarioForm.controls['croDentista'].value;\r\n }\r\n else {\r\n this.user.croDentista = \"\";\r\n }\r\n\r\n if (this.cadastroBeneficiarioForm.controls['ufDentista'].value != null) {\r\n\r\n this.user.ufDentista = this.cadastroBeneficiarioForm.controls['ufDentista'].value;\r\n }\r\n else {\r\n this.user.ufDentista = \"\";\r\n }\r\n\r\n this.user.aceito_SMS_e_Email = this.cadastroBeneficiarioForm.controls['aceitopromo'].value;\r\n\r\n this.cadastroService.CriarBeneficiarioOdontoCare(this.user).subscribe((res: Retorno) => {\r\n this.retorno = res;\r\n if (res.sucesso) {\r\n $('#myModal2').modal('show');\r\n }\r\n else {\r\n $('#myModalErro').modal('show');\r\n }\r\n });\r\n }\r\n\r\n public cssObrigatorio(nomecampo) {\r\n if (this.cadastroBeneficiarioForm.controls[nomecampo].invalid && (this.cadastroBeneficiarioForm.controls[nomecampo].touched || this.cadastroBeneficiarioForm.controls[nomecampo].dirty)) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.cadastroBeneficiarioForm.controls[nomecampo].valid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#0c7e7d\");\r\n }\r\n }\r\n\r\n}\r\n\r\nexport class GenericValidator {\r\n constructor() { }\r\n\r\n /**\r\n * Valida se a data é valida\r\n */\r\n static validateDate() {\r\n return (control: AbstractControl): Validators => {\r\n var RegExPattern = /^((((0?[1-9]|[12]\\d|3[01])[\\.\\-\\/](0?[13578]|1[02]) [\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|[12]\\d|30)[\\.\\-\\/](0?[13456789]|1[012])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|1\\d|2[0-8])[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|(29[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|[12]\\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|1\\d|2[0-8])02((1[6-9]|[2-9]\\d)?\\d{2}))|(2902((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;\r\n if (control.value.toString()) {\r\n if (!((control.value.match(RegExPattern)) && (control.value != ''))) {\r\n return { dataNotValid: true };\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf() {\r\n return (control: AbstractControl): Validators => {\r\n const cpf = control.value.toString().replace(/\\.|\\-/g, '');\r\n if (cpf) {\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n\r\n\r\n","module.exports = \"/* print styles*/\\r\\n@media print {\\r\\n\\r\\n @page {\\r\\n size: landscape;\\r\\n }\\r\\n\\r\\n .non-printable {\\r\\n display: none;\\r\\n }\\r\\n\\r\\n .printable {\\r\\n display: block;\\r\\n height: auto;\\r\\n width: auto;\\r\\n }\\r\\n\\r\\n .screen {\\r\\n display: none;\\r\\n }\\r\\n}\\r\\n.space-normal-two\\r\\n{\\r\\n display: flex;\\r\\n justify-content: space-evenly;\\r\\n width: 100%;\\r\\n}\\r\\n.image\\r\\n{\\r\\n width: 25%;\\r\\n padding: 0 10px;\\r\\n}\\r\\n.image img { width: 100%; }\"","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 Insira seus dados\\r\\n para gerar cupons\\r\\n

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

\\\"\\\" Como funciona

\\r\\n
\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Gere seus cupons
    \\r\\n aqui no site Kin Odontocare.\\r\\n

    \\r\\n
  • \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Após finalizar o cadastro
    \\r\\n você já estará apto a retirar
    \\r\\n seus produtos com descontos.
    \\r\\n \\r\\n Você terá a opção de imprimir
    \\r\\n ou recebê-lo em seu e-mail.\\r\\n
    \\r\\n

    \\r\\n Confira aqui os produtos disponíveis\\r\\n
  • \\r\\n
  • \\r\\n \\\"\\\"\\r\\n

    \\r\\n Pronto! basta o paciente
    \\r\\n informar o número do cupom
    \\r\\n no momento da compra.
    \\r\\n \\r\\n Para consultar a rede de
    \\r\\n farmácias participantes clique aqui\\r\\n
    \\r\\n

    \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\\"\\\" Onde encontrar

\\r\\n
\\r\\n Procure aqui as redes
\\r\\n participantes do programa\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{farmacia.loja}}

\\r\\n

Endereço: {{farmacia.endereco}} {{farmacia.complemento}}

\\r\\n

Telefone: {{farmacia.telefone}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n

\\r\\n (11) 4041-8089
\\r\\n contato@kinodontocare.com.br\\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Encaminhar por e-mail

\\r\\n
Informe o e-mail desejado
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{nomeDentista}}\\r\\n
\\r\\n
\\r\\n {{numeroCupom}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
E-mail encaminhado com sucesso
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
{{retorno.erro}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import { Component, OnInit, NgModule } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators, ValidatorFn, ValidationErrors, AbstractControl } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CadastroService } from \"../../service/cadastro/cadastro.service\";\r\nimport { FarmaciasService } from \"../../service/farmacias/farmacias.service\";\r\nimport { Localizador } from \"../../model/Localizador\";\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { CartaoBeneficiario } from '../../model/CartaoBeneficiario';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead';\r\nimport { Retorno } from '../../model/Retorno';\r\nimport { RetornoProdutos } from '../../model/RetornoProdutos';\r\nimport { Beneficiario } from '../../model/Beneficiario';\r\nimport { DadosBeneficiario } from '../../model/DadosBeneficiario';\r\nimport { Endereco } from '../../model/Endereco';\r\nimport { Telefones } from '../../model/Telefones';\r\nimport { CEP } from '../../model/CEP';\r\nimport { Estados } from '../../model/Estados';\r\nimport { DataCEP } from '../../model/DataCEP';\r\nimport { Uf } from '../../model/Uf';\r\nimport { Dentista } from '../../model/Dentista';\r\nimport { Produtosformulario } from '../../model/Produtosformulario';\r\nimport * as jsPDF from 'jspdf'\r\nimport { Email } from '../../model/Email';\r\ndeclare var $: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-gerarCupons',\r\n templateUrl: './GerarCuponsOdontoCare.component.html',\r\n styleUrls: ['./GerarCuponsOdontoCare.component.css'],\r\n providers: [CadastroService, FarmaciasService]\r\n})\r\n\r\nexport class GerarCuponsOdontoCareComponent implements OnInit\r\n{\r\n uflista: Uf[];\r\n user: Dentista;\r\n show: boolean;\r\n planoId: number;\r\n cpfPattern = \"^[0-9]{3}\\.[0-9]{3}\\.[0-9]{3}\\-[0-9]{2}$\";\r\n public descontoProduto1: string;\r\n public descontoProduto2: string;\r\n public descontoProduto3: string;\r\n public descontoProduto4: string;\r\n public descontoProduto5: string;\r\n public descontoProduto6: string;\r\n public descontoProduto7: string;\r\n public descontoProduto8: string;\r\n public estadosCadastro: any[];\r\n public cidadesCadastro: any[];\r\n public cepCadastro: DataCEP;\r\n public estados: any[];\r\n public cidades: any[];\r\n public bairros: any[];\r\n public estadoSelecionado: string;\r\n public cidadeSelecionada: string;\r\n public bairroSelecionado: string;\r\n public farmacias: any[];\r\n public esconder: boolean;\r\n public testeestado: any[];\r\n public testecidade: any[];\r\n public testebairro: any[];\r\n public retorno: Retorno = new Retorno();\r\n public retornoProdutos: RetornoProdutos = new RetornoProdutos();\r\n public numeroCupom: string;\r\n public cepInvalido: boolean;\r\n public paginaAtual: number;\r\n public paginaTotal: number;\r\n public paginaIndex: number;\r\n public nomeDentista: string;\r\n public xepOnline: any;\r\n public emailv: Email = new Email();\r\n public emailDestinatario: string;\r\n public cupons: string[]\r\n // public carregandoGerar: boolean;\r\n public carregando: boolean;\r\n\r\n gerarCupomDentistaForm = new FormGroup({\r\n cpf: new FormControl('', [Validators.required, Validators.pattern(this.cpfPattern), GenericValidator.isValidCpf()]),\r\n croDentista: new FormControl('', Validators.required),\r\n ufDentista: new FormControl('', Validators.required),\r\n qtdCupons: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(private cadastroService: CadastroService,\r\n private farmaciasService: FarmaciasService) { }\r\n\r\n ngOnInit()\r\n {\r\n this.user = new Dentista();\r\n this.emailv = new Email();\r\n this.retornoProdutos.produtos = new Produtosformulario();\r\n this.esconder = true;\r\n this.cepInvalido = false;\r\n this.estadoSelecionado = \"\";\r\n this.cidadeSelecionada = \"\";\r\n this.bairroSelecionado = \"\";\r\n // this.carregandoGerar = false;\r\n this.carregando = false;\r\n this.carregarEstados();\r\n\r\n this.uflista = [\r\n { nome: \"AC\" },\r\n { nome: \"AL\" },\r\n { nome: \"AP\" },\r\n { nome: \"AM\" },\r\n { nome: \"BA\" },\r\n { nome: \"CE\" },\r\n { nome: \"DF\" },\r\n { nome: \"ES\" },\r\n { nome: \"GO\" },\r\n { nome: \"MA\" },\r\n { nome: \"MT\" },\r\n { nome: \"MS\" },\r\n { nome: \"MG\" },\r\n { nome: \"PA\" },\r\n { nome: \"PB\" },\r\n { nome: \"PR\" },\r\n { nome: \"PE\" },\r\n { nome: \"PI\" },\r\n { nome: \"RJ\" },\r\n { nome: \"RN\" },\r\n { nome: \"RS\" },\r\n { nome: \"RO\" },\r\n { nome: \"RR\" },\r\n { nome: \"SC\" },\r\n { nome: \"SP\" },\r\n { nome: \"SE\" },\r\n { nome: \"TO\" }\r\n ];\r\n }\r\n\r\n private primeiraPagina()\r\n {\r\n this.numeroCupom = this.retorno.tokens[0];\r\n this.paginaIndex = 0;\r\n this.paginaAtual = 1;\r\n }\r\n\r\n private anteriorPagina()\r\n {\r\n var indexTemp = (((this.paginaIndex - 1) < 0) ? 0 : (this.paginaIndex - 1));\r\n this.numeroCupom = this.retorno.tokens[indexTemp];\r\n this.paginaIndex = indexTemp;\r\n this.paginaAtual = indexTemp + 1;\r\n }\r\n\r\n private proximaPagina()\r\n {\r\n var indexTemp = (((this.paginaIndex + 1) > (this.paginaTotal - 1)) ? (this.paginaTotal - 1) : (this.paginaIndex + 1));\r\n this.numeroCupom = this.retorno.tokens[indexTemp];\r\n this.paginaIndex = indexTemp;\r\n this.paginaAtual = indexTemp + 1;\r\n }\r\n\r\n private ultimaPagina()\r\n {\r\n this.numeroCupom = this.retorno.tokens[this.retorno.tokens.length - 1];\r\n this.paginaIndex = this.retorno.tokens.length - 1;\r\n this.paginaAtual = this.paginaTotal;\r\n }\r\n\r\n private carregarEstados()\r\n {\r\n this.farmaciasService.CarregarEstadosOdontoCare().subscribe((result: Localizador) => {\r\n this.estados = result.estados;\r\n });\r\n }\r\n\r\n private carregarCidade(estado: string)\r\n {\r\n this.farmaciasService\r\n .CarregarCidadeOdontoCare(estado)\r\n .subscribe((result: Localizador) =>\r\n {\r\n this.cidades = result.cidades;\r\n });\r\n }\r\n\r\n private carregarBairro(estado: string, cidade: string)\r\n {\r\n this.farmaciasService.CarregarBairroOdontoCare(estado, cidade).subscribe((result: Localizador) => {\r\n this.bairros = result.bairros;\r\n });\r\n }\r\n\r\n private carregarFarmacias(estado: string, cidade: string, bairro: string)\r\n {\r\n this.farmaciasService.CarregarFarmaciasOdontoCare(estado, cidade, bairro).subscribe(result => {\r\n this.farmacias = result['farmacias'];\r\n this.esconder = false;\r\n });\r\n }\r\n \r\n private onSelectEstado(value)\r\n {\r\n this.carregarCidade(value);\r\n this.cidadeSelecionada = \"\";\r\n this.bairroSelecionado = \"\";\r\n }\r\n\r\n private onSelectCidade(value)\r\n {\r\n this.cidadeSelecionada = value;\r\n this.carregarBairro(this.estadoSelecionado, this.cidadeSelecionada);\r\n this.bairroSelecionado = \"\";\r\n }\r\n\r\n private onSelectBairro(value)\r\n {\r\n this.bairroSelecionado = value;\r\n this.carregarFarmacias(this.estadoSelecionado, this.cidadeSelecionada, this.bairroSelecionado);\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component)\r\n {\r\n var ativa = this.gerarCupomDentistaForm.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.gerarCupomDentistaForm.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component)\r\n {\r\n var ativa = this.gerarCupomDentistaForm.controls[nomecampo].invalid;\r\n var cpfinvalido = false;\r\n var patterninvalido = false;\r\n if (ativa) {\r\n cpfinvalido = this.gerarCupomDentistaForm.controls[nomecampo].errors.cpfInvalido;\r\n patterninvalido = this.gerarCupomDentistaForm.controls[nomecampo].errors.pattern;\r\n cpfinvalido = (cpfinvalido !== null && cpfinvalido) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n\r\n ativa = ativa && (cpfinvalido || patterninvalido);\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltip(ativa, component)\r\n {\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n\r\n public limparCampos()\r\n {\r\n this.gerarCupomDentistaForm = new FormGroup({\r\n cpf: new FormControl('', [Validators.required, Validators.pattern(this.cpfPattern), GenericValidator.isValidCpf()]),\r\n croDentista: new FormControl('', Validators.required),\r\n ufDentista: new FormControl('', Validators.required),\r\n qtdCupons: new FormControl('', Validators.required),\r\n });\r\n }\r\n\r\n public Imprimir()\r\n {\r\n $(\".printable\").printThis({\r\n debug: false, // show the iframe for debugging\r\n importCSS: true, // import parent page css\r\n importStyle: true, // import style tags\r\n printContainer: true, // grab outer container as well as the contents of the selector\r\n loadCSS: \"\", // path to additional css file - use an array [] for multiple\r\n pageTitle: \"\", // add title to print page\r\n removeInline: false, // remove all inline styles from print elements\r\n removeInlineSelector: \"\", // custom selectors to filter inline styles. removeInline must be true\r\n printDelay: 333, // variable print delay\r\n header: null, // prefix to html\r\n footer: null, // postfix to html\r\n base: false, // preserve the BASE tag, or accept a string for the URL\r\n formValues: true, // preserve input/form values\r\n canvas: true, // copy canvas elements\r\n doctypeString: '...', // enter a different doctype for older markup\r\n removeScripts: false, // remove script tags from print content\r\n copyTagClasses: true, // copy classes from the html & body tag\r\n beforePrintEvent: null, // callback function for printEvent in iframe\r\n beforePrint: null, // function called before iframe is filled\r\n afterPrint: null // function called before iframe is removed\r\n });\r\n }\r\n\r\n public SalvarPDF()\r\n {\r\n var nome = this.nomeDentista;\r\n var produto1 = this.descontoProduto1;\r\n var produto2 = this.descontoProduto2;\r\n var produto3 = this.descontoProduto3;\r\n var produto4 = this.descontoProduto4;\r\n var produto5 = this.descontoProduto5;\r\n var produto6 = this.descontoProduto6;\r\n var produto7 = this.descontoProduto7;\r\n var produto8 = this.descontoProduto8;\r\n var cupons = this.cupons;\r\n\r\n var pdf = new jsPDF({\r\n orientation: 'landscape',\r\n unit: 'px'\r\n });\r\n var img = new Image;\r\n img.onload = function () {\r\n\r\n for (var i = 0; i < cupons.length; i++) {\r\n pdf.setFontSize(14);\r\n pdf.setFont('helvetica', 'regular');\r\n pdf.setTextColor(0, 0, 0)\r\n pdf.addImage(this, 'PNG', 0, 0, 635, 480);\r\n pdf.text(nome, 330, 26);\r\n pdf.text(cupons[i], 490, 26);\r\n pdf.setFontSize(18);\r\n pdf.setFont('helvetica', 'bold');\r\n\r\n if ((i + 1) != cupons.length)\r\n pdf.addPage();\r\n }\r\n\r\n var data = new Date();\r\n var dia = data.getDate(); \r\n var mes = ((data.getMonth() + 1) < 10) ? (\"0\" + (data.getMonth() + 1)) : ((data.getMonth() + 1)); \r\n var ano4 = data.getFullYear(); \r\n\r\n var str_data = dia + \"\" + mes + \"\" + ano4;\r\n\r\n pdf.save(\"KIN ODONTOCARE - \" + cupons.length + \" cupons - \" + str_data + \".pdf\");\r\n };\r\n\r\n img.crossOrigin = \"\";\r\n img.src = \"assets/img/cupomDesconto.png\";\r\n }\r\n\r\n public EscolherEmail()\r\n {\r\n $('.modal')\r\n .on({\r\n 'show.bs.modal': function () {\r\n var idx = $('.modal:visible').length;\r\n\r\n $(this).css('z-index', 1040 + (10 * idx));\r\n var url = $(this).find('[data-url]').data('url');\r\n if (url != undefined && url != '') {\r\n var id = $(this).attr('id');\r\n $('#' + id + ' .modal-body').load(url);\r\n }\r\n },\r\n 'shown.bs.modal': function () {\r\n var idx = ($('.modal:visible').length) - 1; // raise backdrop after animation.\r\n $('.modal-backdrop').not('.stacked')\r\n .css('z-index', 1039 + (10 * idx))\r\n .addClass('stacked');\r\n },\r\n 'hidden.bs.modal': function () {\r\n if ($('.modal:visible').length > 0) {\r\n // restore the modal-open class to the body element, so that scrolling works\r\n // properly after de-stacking a modal.\r\n setTimeout(function () {\r\n $(document.body).addClass('modal-open');\r\n }, 0);\r\n }\r\n }\r\n });\r\n\r\n $(\"#myModal2\").modal('hide');\r\n $(\"#myModal\").modal('show');\r\n }\r\n\r\n public fecharEmail()\r\n {\r\n $(\"#myModal3 .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public fecharEmail2()\r\n {\r\n $(\"#myModal .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n\r\n public EmailEnviado()\r\n {\r\n $(\"#myModal3 .close\").click()\r\n $(\"#myModal2\").modal('show');\r\n }\r\n \r\n public EnviarEmail()\r\n {\r\n this.carregando = true;\r\n\r\n this.emailv.destinatario = $(\"#emailEnviado\").val();\r\n this.emailv.numeroCupom = this.numeroCupom;\r\n this.emailv.nomeDentista = this.nomeDentista;\r\n this.emailv.descontos = [];\r\n this.emailv.descontos.push(this.descontoProduto1);\r\n this.emailv.descontos.push(this.descontoProduto2);\r\n this.emailv.descontos.push(this.descontoProduto3);\r\n this.emailv.descontos.push(this.descontoProduto4);\r\n this.emailv.descontos.push(this.descontoProduto5);\r\n this.emailv.descontos.push(this.descontoProduto6);\r\n this.emailv.descontos.push(this.descontoProduto7);\r\n this.emailv.descontos.push(this.descontoProduto8);\r\n\r\n this.cadastroService\r\n .EnviarEmailGerarCupomOdontoCare(this.emailv)\r\n .then((res: Retorno) =>\r\n {\r\n if (res.sucesso)\r\n {\r\n $(\"#myModal .close\").click()\r\n $(\"#myModal3\").modal('show');\r\n }\r\n else\r\n {\r\n this.retorno.erro = \"Erro ao enviar e-mail\"\r\n $('#myModalErro').modal('show');\r\n }\r\n\r\n this.carregando = false;\r\n })\r\n .catch(() => this.mostrarErroInterno);\r\n }\r\n \r\n public AnimacaoComoFunciona()\r\n {\r\n $('html, body').animate({\r\n scrollTop: $('#como-funciona').offset().top\r\n }, 1000);\r\n }\r\n\r\n public AnimacaoOndeEncontrar()\r\n {\r\n $('html, body').animate({\r\n scrollTop: $('#onde-encontrar').offset().top\r\n }, 1000);\r\n }\r\n\r\n public AnimacaoCadastrar()\r\n {\r\n $('html, body').animate({\r\n scrollTop: $('#banner').offset().top\r\n }, 1000);\r\n }\r\n\r\n public abrirTermo()\r\n {\r\n $('#TermoModal').modal('show');\r\n }\r\n\r\n public onGerarCupons()\r\n {\r\n this.carregando = true;\r\n\r\n this.user.cpf = this.gerarCupomDentistaForm.controls['cpf'].value.toString().replace(/\\.|\\-/g, '');\r\n this.user.cro = this.gerarCupomDentistaForm.controls['croDentista'].value;\r\n this.user.uf = this.gerarCupomDentistaForm.controls['ufDentista'].value;\r\n this.user.qtdCupons = this.gerarCupomDentistaForm.controls['qtdCupons'].value;\r\n\r\n this.nomeDentista = this.user.cro + \" \" + this.user.uf;\r\n\r\n this.cadastroService\r\n .ConsultarProdutos()\r\n .then((res: RetornoProdutos) =>\r\n {\r\n this.retornoProdutos = res;\r\n \r\n if (res.sucesso)\r\n {\r\n const { produtosLista } = this.retornoProdutos.produtos;\r\n\r\n //this.descontoProduto1 = produtosLista.find(p => p.codigoProduto === '8470003847766').descontoProduto;\r\n //this.descontoProduto2 = produtosLista.find(p => p.codigoProduto === '8436026213797').descontoProduto;\r\n //this.descontoProduto3 = produtosLista.find(p => p.codigoProduto === '8436026212103').descontoProduto;\r\n //this.descontoProduto4 = produtosLista.find(p => p.codigoProduto === '8436026212103').descontoProduto;\r\n //this.descontoProduto5 = produtosLista.find(p => p.codigoProduto === '8470001590879').descontoProduto;\r\n //this.descontoProduto6 = produtosLista.find(p => p.codigoProduto === '8470001840899').descontoProduto;\r\n //this.descontoProduto7 = produtosLista.find(p => p.codigoProduto === '8470001551467').descontoProduto;\r\n //this.descontoProduto8 = produtosLista.find(p => p.codigoProduto === '8470003111546').descontoProduto;\r\n\r\n this.cadastroService\r\n .GerarCupons(this.user)\r\n .then((res: Retorno) =>\r\n {\r\n this.retorno = res;\r\n \r\n if (res.sucesso)\r\n {\r\n this.cupons = this.retorno.tokens;\r\n this.numeroCupom = this.retorno.tokens[0];\r\n this.paginaIndex = 0;\r\n this.paginaTotal = this.retorno.tokens.length;\r\n this.paginaAtual = 1;\r\n $('#myModal2').modal('show');\r\n }\r\n else\r\n $('#myModalErro').modal('show');\r\n\r\n this.carregando = false;\r\n })\r\n .catch(() => this.mostrarErroInterno);\r\n }\r\n })\r\n .catch(() => this.mostrarErroInterno());\r\n }\r\n\r\n public mostrarErroInterno()\r\n {\r\n this.retorno.erro = 'Erro interno'; \r\n $('#myModalErro').modal('show');\r\n this.carregando = false;\r\n }\r\n\r\n public cssObrigatorio(nomecampo)\r\n {\r\n if (this.gerarCupomDentistaForm.controls[nomecampo].invalid && (this.gerarCupomDentistaForm.controls[nomecampo].touched || this.gerarCupomDentistaForm.controls[nomecampo].dirty)) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.gerarCupomDentistaForm.controls[nomecampo].valid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#0c7e7d\");\r\n }\r\n }\r\n}\r\n\r\nexport class GenericValidator\r\n{\r\n constructor() { }\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf() {\r\n return (control: AbstractControl): Validators => {\r\n const cpf = control.value.toString().replace(/\\.|\\-/g, '');\r\n if (cpf) {\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n\r\nexport function cpfValidator(): ValidatorFn\r\n{\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n var cpfNotValid = false;\r\n if (control.value) {\r\n var cpf = control.value.toString().replace(/\\.|\\-/g,'');\r\n \r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n\r\n\r\n if (cpf.length > 1) {\r\n cpfNotValid = true;\r\n }\r\n\r\n if (cpf.length === 11) {\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result === Number(digits.charAt(0))) {\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result === Number(digits.charAt(1))) {\r\n cpfNotValid = false;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return cpfNotValid ? { 'cpfInvalido': true } : null;\r\n }\r\n};\r\n","module.exports = \"#banner\\r\\n{\\r\\n padding-top:40px;\\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 Bem-vindo(a) ao programa de relacionamento da PharmaKin!
\\r\\n Escolha o perfil de usuário que deseja acessar:\\r\\n

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

\\r\\n Paciente\\r\\n
\\r\\n Cadastre-se aqui\\r\\n

\\r\\n
\\r\\n \\\"\\\"\\r\\n Entrar\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n

Profissional

\\r\\n
\\r\\n \\\"\\\"\\r\\n Entrar\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\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 } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport html2canvas from 'html2canvas';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './Home.component.html',\r\n styleUrls: ['./Home.component.css']\r\n})\r\n\r\nexport class HomeComponent implements OnInit{\r\n \r\n constructor(private activatedRoute: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport 'rxjs/Rx';\r\nimport 'rxjs/add/operator/map';\r\nimport 'rxjs/add/operator/catch';\r\nimport 'rxjs/add/observable/throw';\r\nimport { throwError } from 'rxjs';\r\n\r\n\r\nexport interface IRequestOptions {\r\n headers?: HttpHeaders;\r\n observe?: 'body';\r\n params?: HttpParams;\r\n reportProgress?: boolean;\r\n responseType?: 'json';\r\n withCredentials?: boolean;\r\n body?: any;\r\n}\r\n\r\nexport function CustomHttpClientCreator(http: HttpClient, spinner: NgxSpinnerService) {\r\n return new CustomHttpClient(http, spinner);\r\n}\r\n\r\n@Injectable()\r\nexport class CustomHttpClient {\r\n constructor(private http: HttpClient,\r\n private spinner: NgxSpinnerService) { }\r\n \r\n public Get(endPoint: string, options?: IRequestOptions): Observable {\r\n this.showLoader();\r\n return this.http.get(endPoint, this.addJwt(options))\r\n .catch(this.handleError)\r\n .finally(() => this.OnEnd());\r\n }\r\n\r\n public Post(endPoint: string, body: any, options?: IRequestOptions): Observable {\r\n this.showLoader();\r\n return this.http.post(endPoint, body, this.addJwt(options))\r\n .catch(this.handleError)\r\n .finally(() => this.OnEnd());\r\n }\r\n\r\n private OnEnd(): void {\r\n this.hideLoader();\r\n }\r\n\r\n private showLoader(): void {\r\n this.spinner.show();\r\n }\r\n\r\n private hideLoader(): void {\r\n this.spinner.hide();\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n return throwError(error);\r\n }\r\n\r\n private addJwt(options?: IRequestOptions): IRequestOptions {\r\n let requestOptions: IRequestOptions = { headers: new HttpHeaders() };\r\n options = options || requestOptions;\r\n return options;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { Data, Router } from '@angular/router';\r\nimport { CartaoBeneficiario } from '../../model/CartaoBeneficiario';\r\nimport { Dentista } from 'src/app/model/Dentista';\r\nimport { Email } from 'src/app/model/Email';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CadastroService\r\n{\r\n router: Router;\r\n\r\n constructor(private http: CustomHttpClient, router: Router)\r\n {\r\n this.router = router;\r\n }\r\n \r\n public CriarBeneficiarioConsumerCare(cartaoBeneficiario: CartaoBeneficiario)\r\n {\r\n return this.http\r\n .Post(\"api/cadastroconsumercare/cadastrar/\", cartaoBeneficiario)\r\n .toPromise();\r\n }\r\n\r\n public CriarBeneficiarioOdontoCare(cartaoBeneficiario: CartaoBeneficiario)\r\n {\r\n return this.http.Post(\"api/cadastroodontocare/cadastrar/\", cartaoBeneficiario);\r\n }\r\n\r\n public GerarCupons(dentista: Dentista)\r\n {\r\n return this.http\r\n .Post(\"api/gerarcupons/gerar/\", dentista)\r\n .toPromise();\r\n }\r\n\r\n public ConsultarProdutos()\r\n {\r\n return this.http\r\n .Post(\"api/gerarcupons/consultarprodutos/\", \"\")\r\n .toPromise();\r\n }\r\n\r\n public EnviarEmailConsumerCare(email: Email)\r\n {\r\n return this.http\r\n .Post(\"api/cadastroconsumercare/enviaremail/\", email)\r\n .toPromise();\r\n }\r\n\r\n public EnviarEmailOdontoCare(email: Email)\r\n {\r\n return this.http.Post(\"api/cadastroodontocare/enviaremail/\", email);\r\n }\r\n\r\n public EnviarEmailGerarCupomOdontoCare(email: Email)\r\n {\r\n return this.http\r\n .Post(\"api/gerarcupons/enviaremail/\", email)\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { Data, Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FarmaciasService\r\n{\r\n router: Router;\r\n\r\n constructor(private http: CustomHttpClient, router: Router)\r\n {\r\n this.router = router;\r\n }\r\n\r\n // Carregar Farmácias do plano Consumer Care\r\n public CarregarEstadosConsumerCare()\r\n {\r\n let url: string = \"buscarestados\";\r\n return this.CarregarConsumerCare(url);\r\n }\r\n\r\n public CarregarCidadeConsumerCare(estado: string)\r\n {\r\n let url: string = \"buscarcidades/\" + estado;\r\n return this.CarregarConsumerCare(url);\r\n }\r\n\r\n public CarregarBairroConsumerCare(estado: string, cidade: string)\r\n {\r\n let url: string = \"buscarbairros/\" + estado + \"/\" + cidade;\r\n return this.CarregarConsumerCare(url);\r\n }\r\n\r\n public CarregarFarmaciasConsumerCare(estado: string, cidade: string, bairro: string)\r\n {\r\n let url: string = \"buscarfarmacias/\" + estado + \"/\" + cidade + \"/\" + bairro;\r\n return this.CarregarConsumerCare(url);\r\n }\r\n\r\n private CarregarConsumerCare(url: string)\r\n {\r\n return this.http.Get(\"api/cadastroconsumercare/\" + url);\r\n }\r\n\r\n // Carregar Farmácias do plano Odonto Care\r\n public CarregarEstadosOdontoCare()\r\n {\r\n let url: string = \"buscarestados\";\r\n return this.CarregarOdontoCare(url);\r\n }\r\n\r\n public CarregarCidadeOdontoCare(estado: string)\r\n {\r\n let url: string = \"buscarcidades/\" + estado;\r\n return this.CarregarOdontoCare(url);\r\n }\r\n\r\n public CarregarBairroOdontoCare(estado: string, cidade: string)\r\n {\r\n let url: string = \"buscarbairros/\" + estado + \"/\" + cidade;\r\n return this.CarregarOdontoCare(url);\r\n }\r\n\r\n public CarregarFarmaciasOdontoCare(estado: string, cidade: string, bairro: string)\r\n {\r\n let url: string = \"buscarfarmacias/\" + estado + \"/\" + cidade + \"/\" + bairro;\r\n return this.CarregarOdontoCare(url);\r\n }\r\n\r\n private CarregarOdontoCare(url: string)\r\n {\r\n return this.http.Get(\"api/cadastroodontocare/\" + url);\r\n }\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\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.error(err));\r\n"],"sourceRoot":""}