public ResultadoOperacionDto GuardarListaNotificacion(ListaNotificacionDto dto, long idUsuarioExec, long idEmpresaExc) { var resultado = new ResultadoOperacionDto() { Resultado = true }; try { resultado = ListaNotificacionRepository.Guardar(dto); var param = new List <object>() { dto.Nombre }; var informacionAuditoria = new InformacionAuditoriaDto( idUsuarioExec, dto.IdListaNotificacion == 0 ? ConstantsAccionAuditable.Insertar : ConstantsAccionAuditable.Actualizar, ConstantsModulo.ListasNotificacion, dto.IdListaNotificacion == 0 ? MensajesServicios.InsertarListaNotificacion : MensajesServicios.ActualizarListaNotificacion, param, idEmpresaExc ); resultado.InformacionAuditoria = informacionAuditoria; } catch (Exception ex) { LogUtil.Error(ex); resultado.Resultado = false; resultado.InformacionAuditoria = null; } return(resultado); }
/// <summary> /// Genera el registro de auditoría para bitacorizar la exportación a excel de los destinatarios de una lista de notificación. /// </summary> /// <param name="idListaNotificacion">Identificador de la lista de notificación.</param> /// <param name="idUsuarioExec">Identificador del usuario que exporto la información.</param> /// <param name="idEmpresaExc">Identificador de la empresa que realiza esta acción.</param> /// <returns>Resultado de la operación.</returns> public ResultadoOperacionDto RegistrarAccionAuditoriaExportarExcelDestinatarios(long idListaNotificacion, long idUsuarioExec, long idEmpresaExc) { var resultado = new ResultadoOperacionDto() { Resultado = true }; try { var param = new List <object> { ListaNotificacionRepository.Obtener(idListaNotificacion).Nombre }; var informacionAuditoria = new InformacionAuditoriaDto( idUsuarioExec, ConstantsAccionAuditable.Exportar, ConstantsModulo.ListasNotificacion, MensajesServicios.ExportarExcelDestinatariosNotificacion, param, idEmpresaExc ); RegistrarAccionAuditoria(informacionAuditoria); } catch (Exception ex) { LogUtil.Error(ex); resultado.Resultado = false; resultado.InformacionAuditoria = null; } return(resultado); }
public ResultadoOperacionDto BorrarDestinatarioNotificacion(long idDestinatarioNotificacion, long idUsuarioExec, long idEmpresaExc) { var resultado = new ResultadoOperacionDto(); try { var dto = DestinatarioNotificacionRepository.Obtener(idDestinatarioNotificacion); var param = new List <object> { dto.Nombre, ListaNotificacionRepository.Obtener(dto.IdListaNotificacion).Nombre }; resultado.InformacionAuditoria = new InformacionAuditoriaDto( idUsuarioExec, ConstantsAccionAuditable.Borrar, ConstantsModulo.ListasNotificacion, MensajesServicios.BorrarDestinatarioNotificacion, param, idEmpresaExc ); DestinatarioNotificacionRepository.Borrar(idDestinatarioNotificacion); resultado.Resultado = true; resultado.InformacionExtra = true; } catch (Exception exception) { resultado.Resultado = false; resultado.Mensaje = exception.Message; resultado.InformacionExtra = exception; resultado.InformacionAuditoria = null; } return(resultado); }
/// <summary> /// Envía el correo de notificación a la lista de distribución: /// En caso de procesamiento existoso, a la lista de distribución para un procesamiento exitoso /// En caso de un procesamiento no existoso a la lista de distribución para un procesamiento no exitoso /// Estas listas están dadas por parámetros de configuración generales /// </summary> /// <param name="bitacora">Objeto de bitácora actualmente procesado</param> private void NotificarAListaDeDistribucion(BitacoraVersionDocumento bitacora, DocumentoInstanciaXbrlDto documentoInstancia) { ParametroSistema paramLista = null; if (bitacora.Estatus == DistribucionDocumentoConstants.DISTRIBUCION_ESTATUS_APLICADO) { paramLista = ParametroSistemaRepository.GetQueryable(x => x.Nombre.Equals(ConstantsParametrosSistema.CLAVE_PARAM_LISTA_DIST_EXITO_XBRL)).FirstOrDefault(); } else if (bitacora.Estatus == DistribucionDocumentoConstants.DISTRIBUCION_ESTATUS_ERROR) { paramLista = ParametroSistemaRepository.GetQueryable(x => x.Nombre.Equals(ConstantsParametrosSistema.CLAVE_PARAM_LISTA_DIST_ERROR_XBRL)).FirstOrDefault(); } if (paramLista != null) { var lista = ListaNotificacionRepository.ObtenerListaNotificacionCompletaPorClave(paramLista.Valor); if (lista != null) { EnviarCorreoALista(lista, bitacora, documentoInstancia); } } }
/// <summary> /// Retorna una lista de notificación basandose en su identificador. /// </summary> /// <returns>Un entity con la información de una lista de notificación.</returns> public ListaNotificacionDto ObtenerListaNotificacion(long idListaNotificacion) { return(ListaNotificacionRepository.Obtener(idListaNotificacion)); }
/// <summary> /// Retorna las listas de notificación que cumplan con un criterio de busqueda. /// </summary> /// <returns>Lista con las listas de notificación.</returns> public IQueryable <ListaNotificacionDto> ObtenerListasNotificacion(string search) { return(ListaNotificacionRepository.Obtener(search)); }
/// <summary> /// Retorna todas las listas de notificación existentes en BD. /// </summary> /// <returns>Lista con todas las listas de notificación existentes.</returns> public List <ListaNotificacionDto> ObtenerListasNotificacion() { return(ListaNotificacionRepository.Obtener()); }