@@ -12,6 +12,7 @@ import { DriveService } from 'src/app/services/drive.service';
1212import { OrganizacionService } from 'src/app/services/organizacion.service' ;
1313import { ProfesionalService } from 'src/app/services/profesional.service' ;
1414import { DerivacionesService } from './../../../../services/com/derivaciones.service' ;
15+ import { EstrategiaAtencionService } from './../../../../services/com/estrategiaAtencion.service' ;
1516import { AdjuntosService } from './../../../rup/services/adjuntos.service' ;
1617
1718@Component ( {
@@ -54,6 +55,7 @@ export class NuevaDerivacionComponent implements OnInit, OnDestroy {
5455 obraSocial : null ,
5556 historial : [ ] ,
5657 motivoDerivacion : '' ,
58+ estrategiaAtencion : null ,
5759 diagnosticoActual : '' ,
5860 estadoClinico : '' ,
5961 diagnosticoBase : '' ,
@@ -78,6 +80,8 @@ export class NuevaDerivacionComponent implements OnInit, OnDestroy {
7880 { id : 'rehabilitacion' , nombre : 'Rehabilitación' } ,
7981 ] ;
8082
83+ public estrategiasAtencion = [ ] ;
84+
8185 constructor (
8286 private plex : Plex ,
8387 private auth : Auth ,
@@ -92,7 +96,8 @@ export class NuevaDerivacionComponent implements OnInit, OnDestroy {
9296 private router : Router ,
9397 private driveService : DriveService ,
9498 private elementoRupService : ElementosRUPService ,
95- private servicioPrestacion : PrestacionesService
99+ private servicioPrestacion : PrestacionesService ,
100+ private estrategiaAtencionService : EstrategiaAtencionService
96101 ) { }
97102
98103 ngOnInit ( ) {
@@ -125,6 +130,7 @@ export class NuevaDerivacionComponent implements OnInit, OnDestroy {
125130
126131 this . cargarDestinos ( ) ;
127132 this . cargarTipoTraslados ( ) ;
133+ this . cargarEstrategiasAtencion ( ) ;
128134 }
129135
130136 ngOnDestroy ( ) {
@@ -176,6 +182,12 @@ export class NuevaDerivacionComponent implements OnInit, OnDestroy {
176182 } ) ;
177183 }
178184
185+ cargarEstrategiasAtencion ( ) {
186+ this . estrategiaAtencionService . search ( ) . subscribe ( resultado => {
187+ this . estrategiasAtencion = resultado ;
188+ } ) ;
189+ }
190+
179191 guardarDerivacion ( $event ) {
180192 if ( $event . formValid ) {
181193 this . derivacionesService . search ( { paciente : this . paciente . id , estado : '~finalizada' , cancelada : false } ) . subscribe ( resultado => {
@@ -232,8 +244,16 @@ export class NuevaDerivacionComponent implements OnInit, OnDestroy {
232244 dispositivo : ( this . modelo . dispositivo ) ? this . modelo . dispositivo : null ,
233245 observacion : 'Inicio de derivación'
234246 } ) ;
235- this . modelo . condicion = this . modelo . condicion . nombre ;
236- this . modelo . necesidad = this . modelo . necesidad . nombre ;
247+ this . modelo . condicion = this . modelo . condicion ?. nombre ;
248+ this . modelo . necesidad = this . modelo . necesidad ?. nombre ;
249+ if ( this . modelo . estrategiaAtencion ) {
250+ this . modelo . estrategiaAtencion = {
251+ id : this . modelo . estrategiaAtencion . id || this . modelo . estrategiaAtencion . _id ,
252+ nombre : this . modelo . estrategiaAtencion . nombre
253+ } ;
254+ } else {
255+ this . modelo . estrategiaAtencion = null ;
256+ }
237257 this . modelo . adjuntos = this . adjuntos ;
238258 return this . derivacionesService . create ( this . modelo ) ;
239259 }
0 commit comments