public void EnviarMail(string idRecordatorio) { ServicioParametricas servParametricas = new ServicioParametricas(); Recordatorio recordatorio = this.Obtener(idRecordatorio); Parametro parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_HOST"); string hostSMTP = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_PUERTO"); string puertoSMTP = (parms != null) ? parms.Valor : "0"; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_USER"); string userSMTP = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_PWD"); string pwdSMTP = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "REMITENTE_AVISOS"); string remitente = (parms != null) ? parms.Valor : string.Empty; CorreoElectronico email = new CorreoElectronico(hostSMTP, puertoSMTP.ConvertirInt(), userSMTP, pwdSMTP); string[] destinatarios = recordatorio.Destinatarios.Split(';'); email.Destinatarios.AddRange(destinatarios.ToList <string>()); email.Remitente = remitente; email.Asunto = recordatorio.Asunto; email.Contenido = recordatorio.TextoMail; email.EnviarMail(); }
public void GrabarParticipantes(string idActa, string participantes) { ServicioEquipos servEquipo = new ServicioEquipos(); ServicioParametricas servParametricas = new ServicioParametricas(); Acta acta = this.Obtener(idActa); acta.EliminarParticipantes(); if (participantes.Trim().Length > 0) { string[] actaParticipantes = participantes.Substring(1).Split(ServiciosHelpers.ID_SEP); foreach (string participante in actaParticipantes) { string[] infoParticipante = participante.Split(','); Profesional profesional = servEquipo.ProfesionalObtener(infoParticipante[0].ConvertirInt()); RolComite rolComite = servParametricas.ObtenerObjeto <RolComite>(infoParticipante[1].ConvertirInt()); this.AgregarParticipante(acta, profesional, rolComite); } } if (acta.ComentarioInicialFijo.Trim().Length > 0) { acta.ComentarioInicialFijo = this.ArmarComentarioInicialFijo(acta); } this.Grabar(acta); }
private static void InicializarClave() { try { AppSettingsReader webConfigReader = new AppSettingsReader(); key = "QEzBx86jTAs="; claveEncriptada = (string)webConfigReader.GetValue("nhibernateConfiguration", typeof(string)); ServicioParametricas servicio = new ServicioParametricas(); baseDatos = servicio.BaseDatos; servidor = servicio.ServidorBaseDatos; comite = servicio.ObtenerObjeto <Parametro>("Descripcion", "Comite"); fechaImplementacion = servicio.ObtenerObjeto <Parametro>("Descripcion", "FechaImplementacion"); } catch { } }
public void GrabarDocumento(Acta acta, string idActaDocumento, string idDocumento, string idDocumentoVersion, string comentario, string idResponsableComite, string imprimirCarta, Usuario usuarioLogin) { ServicioDocumentos servDocumento = new ServicioDocumentos(); ServicioEquipos servEquipo = new ServicioEquipos(); ActaDocumento actaDocumento = null; int _idDocumentoVersion = idDocumentoVersion.ConvertirInt(); if (_idDocumentoVersion == -1) { throw new ApplicationException("Debe seleccionar documento y versión a comentar"); } int _idActaDocumento = idActaDocumento.ConvertirInt(); if (_idActaDocumento == -1) { actaDocumento = new ActaDocumento(); } else { actaDocumento = acta.ObtenerDocumento(_idActaDocumento); } DocumentoVersion docVersion = servDocumento.Obtener(idDocumento) .ObtenerVersion(_idDocumentoVersion); actaDocumento.DocumentoVersion = docVersion; actaDocumento.Descripcion = comentario; actaDocumento.ResponsableComite = servEquipo.ProfesionalObtener(idResponsableComite.ConvertirInt()); actaDocumento.OrdenEstudio = acta.ObtenerOrdenEstudio(docVersion.Documento.Estudio.Id); actaDocumento.OrdenDocumento = acta.ObtenerOrdenUltimoDocumentoDelEstudio(docVersion.Documento.Estudio.Id); actaDocumento.ImprimirCarta = imprimirCarta.ConvertirBool(); if (_idActaDocumento == -1) { ServicioParametricas servParametricas = new ServicioParametricas(); Parametro parmsEstado = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "ESTADO_DOC_EN_EVALUACION"); string _idEstado = (parmsEstado != null) ? parmsEstado.Valor : null; EstadoDocumento estado = servParametricas.EstadoDocumentoObtener(_idEstado.ConvertirInt()); servDocumento.GrabarDocumentoVersionEstado(docVersion, estado, false, usuarioLogin); } actaDocumento.Validar(); if (_idActaDocumento == -1) { /*Si el estudio al cual pertenece el documento no existe en el acta, * se crea automaticamente notas al pie y al continuacion de los documentos tratados*/ if (!acta.EstudioTieneNotas(docVersion.Documento.IdEstudio)) { string descripcionNota = string.Format("{0} - ESTUDIO {1}", acta.Descripcion, docVersion.Documento.NombreEstudio); this.GrabarNuevaNota(acta.Id.ToString(), "0", "-1", docVersion.Documento.Estudio.Id.ToString(), string.Format("{0} - INICIO", descripcionNota), DateTime.Now.ToString(), null, string.Empty); this.GrabarNuevaNota(acta.Id.ToString(), "1", "-1", docVersion.Documento.Estudio.Id.ToString(), string.Format("{0} - FINAL", descripcionNota), DateTime.Now.ToString(), null, string.Empty); } acta.AgregarDocumento(actaDocumento); } }
public void EnviarMailContactoHomePage(string datosContacto) { ServicioParametricas servParametricas = new ServicioParametricas(); Parametro parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_HOST"); string hostSMTP = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_PUERTO"); string puertoSMTP = (parms != null) ? parms.Valor : "0"; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_USER"); string userSMTP = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "SMTP_PWD"); string pwdSMTP = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "REMITENTE_AVISOS"); string remitente = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "EMAIL_CONTACTOHOMEPAGE_ASUNTO"); string asunto = (parms != null) ? parms.Valor : string.Empty; parms = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "EMAIL_CONTACTOHOMEPAGE_DESTINATARIOS"); string mailDestinatarios = (parms != null) ? parms.Valor : string.Empty; CorreoElectronico email = new CorreoElectronico(hostSMTP, puertoSMTP.ConvertirInt(), userSMTP, pwdSMTP); dynamic datosAux = ServiciosHelpers.DeserializarGenerico(datosContacto); ContactoHP contacto = new ContactoHP(); contacto.Fecha = DateTime.Now; contacto.Email = datosAux.email; contacto.Telefono = datosAux.telefono; contacto.Nombre = datosAux.nombre; contacto.Comite = datosAux.comite; contacto.Mensaje = datosAux.mensaje; RepositoryGenerico <ContactoHP> repositoryContacto = new RepositoryGenerico <ContactoHP>(); repositoryContacto.Actualizar(contacto); string[] destinatarios = mailDestinatarios.Split(';'); email.Destinatarios.AddRange(destinatarios.ToList <string>()); email.Remitente = remitente; email.Asunto = asunto; email.ContenidoHTML = false; email.Contenido = string.Format(" Se contactó: {0}\n Comité de Ética: {1}\n Email: {2}\n Teléfopno: {3}\n Mensaje:\n{4}", contacto.Nombre, contacto.Comite, contacto.Email, contacto.Telefono, contacto.Mensaje); email.EnviarMail(); }
public int GrabarDocumento(string idEstudio, string idDocumento, string descripion, string idTipoDocumento, string limitante, Usuario usuarioLogin, bool verificarVersion, string idVersion, string versionDescripion, string versionFecha, string versionAprobadoANMAT, string versionFechaAprobadoANMAT, string versionFechaEstado, string versionIdEstado, string participantes, string requiereAlertaInactividad, string mesesAlertaInactividad, string requiereAlertaInformeAvance, string mesesAlertaInformeAvance) { //ServiciosHelpers.ValidarClave(estudio); Documento documento = null; int _idDocumento = idDocumento.ConvertirInt(); if (_idDocumento != -1) { documento = repository.Obtener(_idDocumento); } if (documento == null) { documento = new Documento(); } documento.Descripcion = string.IsNullOrEmpty(descripion) ? string.Empty : descripion; documento.TipoDocumento = this.TipoDocumentoObtener(idTipoDocumento.ConvertirInt()); documento.Limitante = limitante.ConvertirBool(); documento.Vigente = true; documento.IdEstudio = idEstudio.ConvertirInt(); documento.Validar(); if (verificarVersion) { this.ActualizarDocumentoVersion(documento, idVersion, versionDescripion, versionFecha, versionAprobadoANMAT, versionFechaAprobadoANMAT, versionFechaEstado, versionIdEstado, participantes, usuarioLogin); } else if (documento.TipoDocumento != null && !documento.TipoDocumento.RequiereVersion && documento.Versiones.Count == 0) { ServicioParametricas servParametricas = new ServicioParametricas(); DocumentoVersion version = new DocumentoVersion(); version.Fecha = null; version.Descripcion = string.Empty; Parametro parmsEstado = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "ESTADO_DOC_INGRESADO"); string idEstado = (parmsEstado != null) ? parmsEstado.Valor : null; DocumentoVersionEstado versionEstado = this.CrearDocumentoVersionEstado(documento.TipoDocumento, idEstado, DateTime.Now.ToString(), usuarioLogin); version.AgregarVersionEstado(versionEstado); this.AgregarParticipantes(participantes, documento, version); documento.AgregarVersion(version); } return(this.Grabar(documento)); }
public void EliminarDocumento(string idActa, string idActaDocumento) { int _idActaDocumento = idActaDocumento.ConvertirInt(); if (_idActaDocumento == -1) { throw new ApplicationException("No seleccionó documento que desea eliminar"); } Acta acta = this.Obtener(idActa); ActaDocumento actaDocumento = acta.ObtenerDocumento(_idActaDocumento); int idEstudio = actaDocumento.IdEstudio; //verifico si el ultimo estado es EN EVALUACION, se elimina ServicioParametricas servParametricas = new ServicioParametricas(); Parametro parmsEstado = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "ESTADO_DOC_EN_EVALUACION"); string idEstado = (parmsEstado != null) ? parmsEstado.Valor : null; DocumentoVersion docVersion = actaDocumento.DocumentoVersion; if (docVersion.ObtenerVersionEstado().Id.Equals(idEstado.ConvertirInt())) { ServicioDocumentos servDocumentos = new ServicioDocumentos(); //Refactorizar para no tener que enviarle todos los parametros cada vez que se invoque, enviar solo docVersion servDocumentos.EliminarDocumentoVersionEstado(docVersion.Documento.IdEstudio.ToString(), docVersion.Documento.Id.ToString(), docVersion.Id.ToString(), docVersion.ObtenerVersionEstado().Id.ToString(), idEstado); } acta.EliminarDocumento(actaDocumento); //Si el estudio quedo sin documentos y sin notas, se debe eliminar el estudio del acta ActaEstudios y Notas por IdEstudio bool estudioConDocumentos = acta.Documentos.ToList <ActaDocumento>() .FindAll(item => item.IdEstudio == idEstudio).Count > 0; bool estudioConNotas = acta.Notas.ToList <Nota>() .FindAll(item => item.IdEstudio == idEstudio && item.Texto.Trim().Length > 0) .Count > 0; if (!estudioConDocumentos && !estudioConNotas) { acta.EliminarEstudio(idEstudio); acta.Notas.ToList <Nota>() .FindAll(item => item.IdEstudio == idEstudio) .ForEach(delegate(Nota nota) { acta.EliminarNota(nota); }); } this.Grabar(acta); }
public void TipoUsuarioGrabar(string id, string descripcion, string permisos) { ServicioParametricas servParametricas = new ServicioParametricas(); TipoUsuario tipoUSR = null; int _id = -1; if (!int.TryParse(id, out _id)) { _id = -1; } if (_id == -1) { tipoUSR = new TipoUsuario(); } else { tipoUSR = this.TipoUsuarioObtener(_id); } tipoUSR.Descripcion = descripcion == null ? string.Empty : descripcion; tipoUSR.Vigente = true; if (permisos.Trim().Length > 0) { TipoUsuarioAcceso tipoUsuarioAcceso = null; string[] permisosSeleccionados = permisos.Substring(1).Split(';'); foreach (string permiso in permisosSeleccionados) { tipoUsuarioAcceso = new TipoUsuarioAcceso(); string[] menuAccesos = permiso.Split(','); tipoUsuarioAcceso.IdMenuPrincipal = menuAccesos[0].ConvertirInt(); tipoUsuarioAcceso.IdMenuSecundario = menuAccesos[1].ConvertirInt(); tipoUsuarioAcceso.NivelAcceso = servParametricas.ObtenerObjeto <NivelAcceso>(menuAccesos[2].ConvertirInt()); tipoUSR.AsignarPermiso(tipoUsuarioAcceso); } } RepositoryGenerico <TipoUsuario> repository = new RepositoryGenerico <TipoUsuario>(); repository.Actualizar(tipoUSR); }
public void ProfesionalGrabar(string id, string apellido, string nombre, string idTipoProfesional, string IdRolcomite, string titulo, string ordenActa) { ServicioParametricas servParametricas = new ServicioParametricas(); Profesional profesional; int _id = -1; if (!int.TryParse(id, out _id)) { _id = -1; } if (_id == -1) { profesional = new Profesional(); } else { profesional = this.ProfesionalObtener(_id); } profesional.Apellido = apellido.ConvertirString(); profesional.Nombre = nombre.ConvertirString(); profesional.Titulo = titulo.ConvertirString(); profesional.RolComite = servParametricas.ObtenerObjeto <RolComite>(IdRolcomite.ConvertirInt()); profesional.OrdenActa = ordenActa.ConvertirInt(); profesional.Vigente = true; if (idTipoProfesional.ConvertirInt() != -1) { profesional.TipoProfesional = this.TipoProfesionalObtener(idTipoProfesional.ConvertirInt()); } profesional.Validar(); RepositoryGenerico <Profesional> repository = new RepositoryGenerico <Profesional>(); repository.Actualizar(profesional); }
public void GrabarDocumentoVersionEstado(DocumentoVersion version, EstadoDocumento estado, bool actualizarEstadoFinal, Usuario usuarioLogin) { if (estado == null && !actualizarEstadoFinal) { return; } ServicioParametricas servParametricas = new ServicioParametricas(); DocumentoVersionEstado versionEstadoActual = version.ObtenerVersionEstado(); if (versionEstadoActual != null && versionEstadoActual.Estado != null) { //para no duplicar el estado, si ya lo tiene no hce nada if (versionEstadoActual.Estado == estado) { return; } //si ya tiene un estado final y no se está actualizando estado final, se quita primero para que quede un solo estado final if (versionEstadoActual.EstadoFinal.HasValue && versionEstadoActual.EstadoFinal.Value) { if (actualizarEstadoFinal) { return; } else { version.EliminarVersionEstado(versionEstadoActual.Id); } } } EstadoDocumento estadoAprobadoExistente = null; EstadoDocumento estadoTomaConocimientoExistente = null; EstadoDocumento nuevoEstado = null; if (actualizarEstadoFinal) { List <EstadoDocumento> listEstados = version.Documento.TipoDocumento.ObtenerFlujoDefault().ObtenerEstados(versionEstadoActual.Estado); Parametro parmsEstado = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "ESTADO_DOC_APROBADO"); string idEstadoAprobado = (parmsEstado != null) ? parmsEstado.Valor : null; estadoAprobadoExistente = listEstados.Find(delegate(EstadoDocumento match) { return(match.Id == idEstadoAprobado.ConvertirInt()); }); parmsEstado = servParametricas.ObtenerObjeto <Parametro>("Descripcion", "ESTADO_DOC_TOMA_CONOCIMIENTO"); string idEstadoTomaConocimiento = (parmsEstado != null) ? parmsEstado.Valor : null; estadoTomaConocimientoExistente = listEstados.Find(delegate(EstadoDocumento match) { return(match.Id == idEstadoTomaConocimiento.ConvertirInt()); }); if (estadoAprobadoExistente == null && estadoTomaConocimientoExistente == null) { return; } nuevoEstado = (estadoAprobadoExistente != null) ? estadoAprobadoExistente : estadoTomaConocimientoExistente; } else { nuevoEstado = estado; } DocumentoVersionEstado versionEstado = new DocumentoVersionEstado(); versionEstado.Fecha = DateTime.Now; versionEstado.Estado = nuevoEstado; versionEstado.Usuario = usuarioLogin; versionEstado.Observaciones = string.Empty; TipoDocumentoFlujoEstado flujoEstado = version.Documento.TipoDocumento.ObtenerFlujoDefault().ObtenerFlujoEstado(nuevoEstado); if (flujoEstado != null) { versionEstado.EstadoFinal = flujoEstado.Final; } else { versionEstado.EstadoFinal = false; } versionEstado.Validar(); version.AgregarVersionEstado(versionEstado); }
public int Grabar(string idActa, string descripcion, string fecha, string hora, string comentarioInicialFijo, string comentarioInicial, string comentarioFinal, string cerrada, string participantes) { ServicioEstudios servEstudio = new ServicioEstudios(); ServicioEquipos servEquipo = new ServicioEquipos(); ServicioParametricas servParametricas = new ServicioParametricas(); Acta acta = null; int _idActa = idActa.ConvertirInt(); descripcion = string.IsNullOrEmpty(descripcion) ? string.Empty : descripcion; if (descripcion.StartsWith("DOSSIER")) { descripcion = string.Format("{0} - Acta número: {1} - {2}", descripcion, idActa.ToString(), DateTime.Now.ToString("dd/mm/yyyy")); } if (_idActa == -1) { List <Acta> actasMismaDescripcion = repository.ObtenerTodosVigentes(descripcion).ToList <Acta>(); if (actasMismaDescripcion.Count > 0) { throw new ApplicationException(string.Format(@"Ya existe una Acta con la Descripcion {0}", descripcion)); } acta = new Acta(); this.InicializarParticipantes(acta); } else { acta = this.Obtener(idActa); string[] actaParticipantes = participantes.Split(';'); foreach (string participante in actaParticipantes) { if (participante.Trim().Length > 0) { string[] infoParticipante = participante.Split(','); int idActaParticipante = infoParticipante[0].ConvertirInt(); Profesional profesional = servEquipo.ProfesionalObtener(infoParticipante[1].ConvertirInt()); RolComite rolComite = servParametricas.ObtenerObjeto <RolComite>(infoParticipante[2].ConvertirInt()); acta.ActualizarParticipanteRolcomite(idActaParticipante, rolComite); } } } acta.Descripcion = descripcion.ConvertirString(); acta.Fecha = fecha.ConvertirDateTime(); acta.Hora = hora; acta.ComentarioInicialFijo = comentarioInicialFijo; acta.ComentarioInicial = comentarioInicial.ConvertirString(); acta.ComentarioInicial = comentarioInicial.ConvertirString(); acta.ComentarioFinal = comentarioFinal.ConvertirString(); acta.Cerrada = cerrada.ConvertirBool(); acta.Vigente = true; return(this.Grabar(acta)); }