//metodo que se invoca al agregar documentos public void GrabarEstudioActa(Acta acta, string idEstudio) { ServicioParametricas servParametricas = new ServicioParametricas(); ServicioEstudios servEstudios = new ServicioEstudios(); ActaEstudio actaEstudio = null; Estudio estudio = null; if (acta.Estudios.Count > 0) { actaEstudio = acta.ObtenerEstudio(idEstudio.ConvertirInt()); } if (actaEstudio == null) { estudio = servEstudios.Obtener(idEstudio); actaEstudio = new ActaEstudio(); actaEstudio.Estudio = estudio; actaEstudio.EstadoEstudio = estudio.Estado; actaEstudio.OrdenEstudio = acta.ObtenerOrdenEstudio(estudio.Id); acta.AgregarEstudio(actaEstudio); } }
//metodo que se invoca cuando setea estados, modelo carta de respuesta, texto desde el acta public void GrabarDatosEstudio(string idActa, string datosActaEstudio) { ServicioParametricas servParametricas = new ServicioParametricas(); ServicioEstudios servEstudios = new ServicioEstudios(); Acta acta = this.Obtener(idActa); ActaEstudio actaEstudio = null; dynamic datosAux = ServiciosHelpers.DeserializarGenerico(datosActaEstudio); int idEstudio = datosAux.IdEstudio; actaEstudio = acta.ObtenerEstudio(idEstudio); if (actaEstudio == null) { actaEstudio = new ActaEstudio(); actaEstudio.Estudio = servEstudios.Obtener(idEstudio.ToString()); actaEstudio.OrdenEstudio = acta.ObtenerOrdenEstudio(idEstudio); } actaEstudio.EstadoEstudio = servParametricas.EstadoEstudioObtener(datosAux.IdEstadoEstudio); actaEstudio.CartaRespuestaModelo = this.CartaRespuestaModeloObtener(datosAux.IdCartaRespuestaModelo); actaEstudio.TextoLibreCartaRespuesta = datosAux.TextoLibreCartaRespuesta; acta.AgregarEstudio(actaEstudio); this.Grabar(acta); /*actualizamos las notas del estudio*/ RepositoryGenerico <Nota> notaRepository = new RepositoryGenerico <Nota>(); Nota nota = null; int idNotaAntesDocumentos = acta.Notas.ToList <Nota>().Find(item => item.IdEstudio == idEstudio && !item.ActaImprimeAlFinal).Id; nota = notaRepository.Obtener(idNotaAntesDocumentos); nota.Texto = string.Format("{0}", datosAux.ComentarioAntesDocumentos); notaRepository.Actualizar(nota); nota = null; int idNotaDespuesDocumentos = acta.Notas.ToList <Nota>().Find(item => item.IdEstudio == idEstudio && item.ActaImprimeAlFinal).Id; nota = notaRepository.Obtener(idNotaDespuesDocumentos); nota.Texto = string.Format("{0}", datosAux.ComentarioDespuesDocumentos); notaRepository.Actualizar(nota); if (!acta.Cerrada && actaEstudio.EstadoEstudio != null) { servEstudios.GrabarEstado(actaEstudio.Estudio.Id.ToString(), actaEstudio.EstadoEstudio.Id.ToString()); } }