Skip to content

Commit

Permalink
(FEAT) Corregir scroll al buscar pacientes
Browse files Browse the repository at this point in the history
  • Loading branch information
MarianoCampetella committed Jan 18, 2024
1 parent dcb85e1 commit 4bdfa30
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 50 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -404,10 +404,12 @@ export class FichaEpidemiologicaCrudComponent implements OnInit, OnChanges {
map(paises => {
seccion.fields['nacionalidad'] = paises.find(pais => pais.nombre === 'Argentina');
})).subscribe();
seccion.fields['direccioncaso'] = this.paciente.direccion[0].valor ? this.paciente.direccion[0].valor : '';
seccion.fields['lugarresidencia'] = this.paciente.direccion[0].ubicacion.provincia ? this.paciente.direccion[0].ubicacion.provincia : '';
seccion.fields['localidadresidencia'] = this.paciente.direccion[0].ubicacion.localidad ? this.paciente.direccion[0].ubicacion.localidad : '';
this.setLocalidades({ provincia: this.paciente.direccion[0].ubicacion.provincia?.id });
if (this.paciente.direccion) {
seccion.fields['direccioncaso'] = this.paciente.direccion[0].valor ? this.paciente.direccion[0].valor : '';
seccion.fields['lugarresidencia'] = this.paciente.direccion[0].ubicacion.provincia ? this.paciente.direccion[0].ubicacion.provincia : '';
seccion.fields['localidadresidencia'] = this.paciente.direccion[0].ubicacion.localidad ? this.paciente.direccion[0].ubicacion.localidad : '';
this.setLocalidades({ provincia: this.paciente.direccion[0].ubicacion.provincia?.id });
}
break;
case 'antecedentesEpidemiologicos':
this.setEstadoVacunacion(seccion.fields);
Expand Down Expand Up @@ -596,35 +598,35 @@ export class FichaEpidemiologicaCrudComponent implements OnInit, OnChanges {
barrio: null,
pais: null
},
codigoPostal: this.paciente.direccion[0].codigoPostal,
codigoPostal: this.paciente.direccion ? this.paciente.direccion[0].codigoPostal : null,
ranking: 0,
geoReferencia: this.paciente.direccion[0].geoReferencia
geoReferencia: this.paciente.direccion ? this.paciente.direccion[0].geoReferencia : null
};
this.paciente.direccion[0] = nuevaDireccion;
(this.paciente.direccion) ? this.paciente.direccion[0] = nuevaDireccion : this.paciente.direccion = [nuevaDireccion];
}
this.servicePaciente.save(this.paciente).subscribe();
}

addContactoMpi(key, value) {
const index = this.paciente.contacto.findIndex(item => item.tipo === key);
if (index >= 0) {
this.paciente.contacto[index].valor = value;
const nuevo = {
tipo: key,
valor: value,
ranking: 1,
activo: true,
ultimaActualizacion: new Date()
};
if (this.paciente.contacto) {
const index = this.paciente.contacto.findIndex(item => item.tipo === key);
(index >= 0) ? this.paciente.contacto[index].valor = value : this.paciente.contacto.push(nuevo);
} else {
const nuevo = {
tipo: key,
valor: value,
ranking: 1,
activo: true,
ultimaActualizacion: new Date()
};
this.paciente.contacto.push(nuevo);
this.paciente.contacto = [nuevo];
}
}

setDireccion(nuevaDir) {
return (nuevaDir.dirPaciente.direccioncaso !== this.paciente.direccion[0]?.valor ||
return (this.paciente.direccion ? nuevaDir.dirPaciente.direccioncaso !== this.paciente.direccion[0]?.valor ||
nuevaDir.provinciaPaciente.lugarresidencia.id !== this.paciente.direccion[0].ubicacion?.provincia?.id ||
nuevaDir.localidadPaciente.localidadresidencia.id !== this.paciente.direccion[0].ubicacion?.localidad?.id);
nuevaDir.localidadPaciente.localidadresidencia.id !== this.paciente.direccion[0].ubicacion?.localidad?.id : true);
}

pacienteInternado(event) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,30 +1,24 @@
<plex-layout main="8" resizable="true" min="1" max="4">
<plex-layout-main *ngIf="!showFicha ; else elseFicha">
<plex-title titulo="punto de inicio - ficha epidemiológica"></plex-title>
<div class="row">
<div class="col-12">
<paciente-busqueda (searchStart)="searchStart()" (searchEnd)="searchEnd($event)"
(searchClear)="onSearchClear()" (selected)="onSelect($event)">
</paciente-busqueda>
</div>
</div>
<div *ngIf="!pacienteSelected" justify="center" class="h-75">
<paciente-busqueda (searchStart)="searchStart()" (searchEnd)="searchEnd($event)" (searchClear)="onSearchClear()"
(selected)="onSelect($event)" [offset]="110">
</paciente-busqueda>
<div *ngIf="showLabel" justify="center" class="h-75">
<plex-label icon="arrow-up" type="default" size="xl" direction="column"
titulo='Comience buscando y seleccionando un paciente en la barra superior'>
</plex-label>
</div>
</plex-layout-main>
<ng-template #elseFicha>
<plex-layout-main>
<app-ficha-epidemiologica-crud *ngIf="showFicha === 'covid19'" [paciente]="pacienteSelected"
[fichaPaciente]="fichaPaciente$ | async" [editFicha]="editFicha"
[fichaName]="showFicha" [form]="selectedForm" (volver)="volver()">
</app-ficha-epidemiologica-crud>
<app-ficha-epidemiologica-generic *ngIf="showFicha !== 'covid19'" [fichaName]="showFicha"
[fichaPaciente]="fichaPaciente$ | async" [paciente]="pacienteSelected"
[form]="selectedForm" (volver)="volver()" [editFicha]="editFicha">
</app-ficha-epidemiologica-generic>
</plex-layout-main>
<app-ficha-epidemiologica-crud *ngIf="showFicha === 'covid19'" [paciente]="pacienteSelected"
[fichaPaciente]="fichaPaciente$ | async" [editFicha]="editFicha"
[fichaName]="showFicha" [form]="selectedForm" (volver)="volver()">
</app-ficha-epidemiologica-crud>
<app-ficha-epidemiologica-generic *ngIf="showFicha !== 'covid19'" [fichaName]="showFicha"
[fichaPaciente]="fichaPaciente$ | async" [paciente]="pacienteSelected"
[form]="selectedForm" (volver)="volver()" [editFicha]="editFicha">
</app-ficha-epidemiologica-generic>
</ng-template>
<plex-layout-sidebar [type]="'invert'">
<ng-container *ngIf="pacienteSelected">
Expand Down
21 changes: 9 additions & 12 deletions src/app/modules/mpi/components/paciente-relaciones.component.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@

import { IPaciente } from '../../../core/mpi/interfaces/IPaciente';
import { Component, Input, Output, EventEmitter } from '@angular/core';
import { Plex } from '@andes/plex';
import { IPacienteRelacion } from '../interfaces/IPacienteRelacion.inteface';
import { PacienteService } from '../../../core/mpi/services/paciente.service';

@Component({
selector: 'paciente-relaciones',
Expand Down Expand Up @@ -39,23 +39,20 @@ export class PacienteRelacionesComponent {
}

// Evento que se emite cuando se selecciona un paciente (click en la listado)
@Output() selected: EventEmitter<IPacienteRelacion> = new EventEmitter<IPacienteRelacion>();
@Output() selected: EventEmitter<IPaciente> = new EventEmitter<IPaciente>();

constructor(
private plex: Plex
private plex: Plex,
private pacienteService: PacienteService
) { }

public seleccionar(paciente: IPacienteRelacion) {
(paciente.id) ? this.selected.emit(paciente) : this.selected.emit(null);
}

public seleccionarRelacion(relacionado: IPacienteRelacion) {
const pacienteRelacion: any = relacionado;
if (relacionado.referencia) {
pacienteRelacion.id = relacionado.referencia;
pacienteRelacion.sexo = relacionado.sexo ? relacionado.sexo : 'S/D';
pacienteRelacion.validado = 'S/D';
let pacienteRel: IPaciente;
this.pacienteService.getById(relacionado.referencia).subscribe(result => {
pacienteRel = result;
(pacienteRel) ? this.selected.emit(pacienteRel) : this.selected.emit(null);
});
}
(relacionado.id) ? this.selected.emit(relacionado) : this.selected.emit(null);
}
}

0 comments on commit 4bdfa30

Please sign in to comment.