public Estudio Obtener(string idEstudio) { Estudio estudio = this.ObtenerSoloEstudio(idEstudio); if (estudio != null) { estudio.Documentos = this.ObtenerDocumentos(idEstudio); estudio.Notas = this.ObtenerEstudioNotas(idEstudio); estudio.IdRecordatorioRenovacionAnual = this.ObtenerRecodatorioRenovacionAnual(idEstudio); estudio.EstadoSemaforo = DeterminarSemaforoEstudio(estudio); if (estudio.IdTipoEstudio.HasValue) { ServicioParametricas servParams = new ServicioParametricas(); estudio.TipoEstudio = servParams.TipoEstudioObtener(estudio.IdTipoEstudio.Value); } else { estudio.TipoEstudio = null; } } return(estudio); }
public List <string> ImprimirCartaRespuesta(string idActa, string idEstudio, bool exportarWord) { ServicioParametricas servParametricas = new ServicioParametricas(); ServicioDocumentos servDocumentos = new ServicioDocumentos(); string idEstadoPedidoCambio = servParametricas.ParametroObtener("ESTADO_DOC_PEDIDO_CAMBIO"); string idEstadoAprobado = servParametricas.ParametroObtener("ESTADO_DOC_APROBADO"); ServicioActas servicio = new ServicioActas(); Acta acta = servicio.Obtener(idActa); List <ActaDocumento> actaDocs = acta.Documentos.ToList <ActaDocumento>() .FindAll(item => item.DocumentoVersion.Documento.Estudio.Id == idEstudio.ConvertirInt()); //&& item.ImprimirCarta); if (actaDocs == null || actaDocs.Count == 0) { return(new List <string>()); } ProcesadorPlantillaCarta procesador = new ProcesadorPlantillaCarta(); procesador.IdEstadoPedidoCambio = idEstadoPedidoCambio.ConvertirInt(); procesador.IdEstadoAprobado = idEstadoAprobado.ConvertirInt(); procesador.ComiteNombreCompleto = servParametricas.ParametroObtener("COMITE_NOMBRE_COMPLETO"); procesador.ComiteIniciales = servParametricas.ParametroObtener("COMITE_INICIALES"); procesador.Vocales = acta.Vocales; procesador.PresidenteComite = acta.PresidenteComite != null ? acta.PresidenteComite.NombreYApellido : string.Empty; procesador.LeyendaPresidenteComite = acta.ObtenerRolComiteParticipantes(acta.PresidenteComite) != null?acta.ObtenerRolComiteParticipantes(acta.PresidenteComite).Descripcion : "Presidente"; procesador.FechaActa = acta.Fecha; //ProcesadorHelpers ActaEstudio actaEstudio = acta.ObtenerEstudio(idEstudio.ConvertirInt()); if (actaEstudio.Estudio.IdTipoEstudio.HasValue) { actaEstudio.Estudio.TipoEstudio = servParametricas.TipoEstudioObtener(actaEstudio.Estudio.IdTipoEstudio.Value); } procesador.actaEstudio = actaEstudio; if (actaEstudio.Estudio.CentroHabilitado != null) { procesador.CentrosInternacion = servParametricas.CentroObtenerCentrosInternacion(actaEstudio.Estudio.CentroHabilitado.Id); } procesador.TiposDocumentosTratados = servDocumentos.TiposDocumentoObtenerListarCartaRespuesta(-1); procesador.TiposDocumentosEvaluados = servDocumentos.TiposDocumentoObtenerListarCartaRespuesta((int)TIPO_DOCUMENTO_GRUPO.SE_EVALUA); if (actaEstudio.CartaRespuestaModelo.IncluirTodosDocumentosEstudio) { actaDocs = servicio.ListarDocumentoTratadosXEstudio(idEstudio); } procesador.plantillasTexto = servParametricas.PlantillaObtenerVigentes((int)TIPOS_PLANTILLA.APROBACION_ESTUDIO); //procesador.NombrePlantilla = "AprobacionEstudioModelo.html"; procesador.NombrePlantilla = string.Format("{0}{1}.html", actaEstudio.CartaRespuestaModelo.NombrePlantilla, (exportarWord ? "Word" : string.Empty)); procesador.ProcesarCartaRespuesta(actaDocs); return(procesador.HTMLProcesado); }