Skip to content

Commit

Permalink
feat(HUDS-77): Declaración jurada de acceso a la HUDS (#3009)
Browse files Browse the repository at this point in the history
Co-authored-by: aldoEMatamala <[email protected]>
  • Loading branch information
aldoEMatamala and aldoEMatamala authored Jun 3, 2024
1 parent c7eee0f commit 291a3a2
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ export class HudsBusquedaPacienteComponent implements OnInit {
}

onConfirmSelect(motivoAccesoHuds) {
if (motivoAccesoHuds[0]) {
if (motivoAccesoHuds) {
// se obtiene token y loguea el acceso a la huds del paciente
const paramsToken = {
usuario: this.auth.usuario,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,35 @@
import { Component, Output, ViewChild, Input, EventEmitter } from '@angular/core';
import { Component, Output, ViewChild, Input, EventEmitter, OnInit } from '@angular/core';
import { PlexModalComponent } from '@andes/plex/src/lib/modal/modal.component';
import { Auth } from '@andes/auth';
import { ProfesionalService } from 'src/app/services/profesional.service';
import { DomSanitizer } from '@angular/platform-browser';
import { catchError, of } from 'rxjs';

@Component({
selector: 'modal-motivo-acceso-huds',
templateUrl: 'modal-motivo-acceso-huds.html'
})

export class ModalMotivoAccesoHudsComponent {

export class ModalMotivoAccesoHudsComponent implements OnInit {
public profesional;
public binaryString = null;
public firmas = null;
public urlFirma = null;
public base64textString: String = '';
public binaryStringAdmin = null;
public urlFirmaAdmin = null;
public base64textStringAdmin: String = '';
public nombreAdministrativo = '';
public firmaAdmin = null;
@ViewChild('modal', { static: true }) modal: PlexModalComponent;
foto: any;
tieneFoto: boolean;
constructor(
public auth: Auth,
public _profesionalService: ProfesionalService,
public sanitizer: DomSanitizer,

) { };
@Input()
set show(value) {
if (value) {
Expand All @@ -25,7 +46,26 @@ export class ModalMotivoAccesoHudsComponent {
];
public motivoSelected = null;
public detalleMotivo = '';
// eslint-disable-next-line @angular-eslint/use-lifecycle-interface

ngOnInit(): void {
if (this.auth.profesional) {

this._profesionalService.getFirma({ id: this.auth.profesional }).pipe(catchError(() => of(null))).subscribe(resp => {
this.urlFirma = resp.length ? this.sanitizer.bypassSecurityTrustResourceUrl('data:image/jpeg;base64,' + resp) : null;
});
this._profesionalService.getFirma({ firmaAdmin: this.auth.profesional }).pipe(catchError(() => of(null))).subscribe(resp => {
if (resp?.firma) {
this.urlFirmaAdmin = this.sanitizer.bypassSecurityTrustResourceUrl('data:image/jpeg;base64,' + resp.firma);
this.firmaAdmin = resp.firma;
this.nombreAdministrativo = resp.administracion;
} else {
this.urlFirmaAdmin = null;
this.firmaAdmin = null;
this.nombreAdministrativo = '';
}
});
}
}

motivoSelect() {
return this.motivoSelected === null;
Expand Down
49 changes: 31 additions & 18 deletions src/app/modules/rup/components/huds/modal-motivo-acceso-huds.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,45 @@
<plex-modal-subtitle type="">Por favor, indique el motivo de acceso:</plex-modal-subtitle>
<main>
<div class="w-100">
<div class="w-60 ">
<plex-radio [(ngModel)]="motivoSelected" [data]="motivosAccesoHuds">
</plex-radio>
</div>
<div class="mt-4">
<plex-radio [(ngModel)]="motivoSelected" [data]="motivosAccesoHuds">
</plex-radio>
<div class="mt-2">
<plex-label><strong>Detalle de motivo (opcional)</strong></plex-label>
<plex-text placeholder="Describa brevemente el motivo de acceso" multiline="true" name="multi"
[(ngModel)]="detalleMotivo">
</plex-text>
</div>

<div class="mt-4">
<small>
Recuerde que todos los ingresos y acciones realizados en la HUDS a través de su usuario y contraseña
quedarán registrados.
<div class="mt-2">
<p class="text-justify mt-2 mb-1">
<small>
Declaro que tengo pleno conocimiento y acepto que todos los datos a los que pueda acceder en el
ejercicio de mis funciones, los trataré con absoluta confidencialidad. En este sentido, me
comprometo a no divulgar, publicar, utilizar, reproducir, difundir o transmitir de ninguna
manera la información, sin importar sus características, ni proporcionarla a terceros bajo
ninguna circunstancia.
<br>
<b>Es importante destacar que el manejo de la información está limitada exclusivamente al
cumplimiento de mis responsabilidades en este centro asistencial.
</b>
</small>
</p>
<div class="text-center">
<img *ngIf='urlFirma' [src]="urlFirma" height="100px" class="mb-2" />
<br>
El formulario aquí presente reviste el carácter de Declaración Jurada, quedando sujetos los
infractores
a las penalidades previstas en el Código Penal.
Es importante recordar que la Ley 2611, en su artículo 4°, inciso K, señala: “Los
pacientes tienen derecho a la intimidad y confidencialidad de los datos. En
correspondencia con este derecho el servidor público debe indefectiblemente
guardar y preservar el secreto profesional”
</small>

Profesional:
<plex-modal-subtitle center type="">
<strong>{{ ' '+auth.usuario.nombreCompleto }}</strong>
</plex-modal-subtitle>
<br>
DNI:
<plex-modal-subtitle center type="">
<strong>{{' '+auth.usuario.documento}}</strong>
</plex-modal-subtitle>
</div>
</div>
</div>

</main>

<plex-button modal right type="success" (click)="notificarAccion(true)" [disabled]="motivoSelect()">
Expand Down

0 comments on commit 291a3a2

Please sign in to comment.