/// <summary> /// Obtienen un listado con todos los organismo que ha integrado el funcionario /// </summary> /// <param name="idFuncionario"></param> /// <returns></returns> public ObservableCollection<Integraciones> GetHistorialFuncionarios(int idFuncionario) { ObservableCollection<Integraciones> listaIntegracion = new ObservableCollection<Integraciones>(); SqlConnection oleConne = new SqlConnection(ConfigurationManager.ConnectionStrings["Directorio"].ToString()); SqlCommand cmd = null; SqlDataReader reader = null; String sqlCadena = "SELECT H.IdIntegracion, I.FechaIntegracion, O.Organismo " + " FROM (HistorialIntegracion H INNER JOIN Integraciones I ON H.IdIntegracion = I.IdIntegracion) " + " INNER JOIN Organismos O ON I.IdOrganismo = O.IdOrganismo " + " WHERE H.IdFuncionario = @IdFuncionario"; try { oleConne.Open(); cmd = new SqlCommand(sqlCadena, oleConne); cmd.Parameters.AddWithValue("@IdFuncionario", idFuncionario); reader = cmd.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { Integraciones integracion = new Integraciones() { IdIntegracion = reader["IdIntegracion"] as int? ?? -1, FechaIntegracion = DateTimeUtilities.GetDateFromReader(reader, "FechaIntegracion"), Organismo = reader["Organismo"].ToString() }; listaIntegracion.Add(integracion); } } } catch (SqlException ex) { string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; ErrorUtilities.SetNewErrorMessage(ex, methodName + " Exception, FuncionariosModel", 0); } catch (Exception ex) { string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; ErrorUtilities.SetNewErrorMessage(ex, methodName + " Exception, FuncionariosModel", 0); } finally { cmd.Dispose(); reader.Close(); oleConne.Close(); } return listaIntegracion; }
/// <summary> /// Obtiene un listado con el historial de integraciones del Organismo /// </summary> /// <returns></returns> public ObservableCollection<Integraciones> GetIntegracionesByOrganismo() { ObservableCollection<Integraciones> listaIntegraciones = new ObservableCollection<Integraciones>(); SqlConnection oleConne = new SqlConnection(ConfigurationManager.ConnectionStrings["Directorio"].ToString()); SqlCommand cmd = null; SqlDataReader reader = null; const String SqlQuery = "SELECT IdIntegracion,FechaIntegracion FROM Integraciones WHERE IdOrganismo = @IdOrganismo"; FuncionariosModel model = new FuncionariosModel(); try { oleConne.Open(); cmd = new SqlCommand(SqlQuery, oleConne); cmd.Parameters.AddWithValue("@IdOrganismo", idOrganismo); reader = cmd.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { Integraciones integracion = new Integraciones(); integracion.IdIntegracion = reader["IdIntegracion"] as int? ?? 0; integracion.FechaIntegracion = DateTimeUtilities.GetDateFromReader(reader, "FechaIntegracion"); integracion.Integrantes = model.GetFuncionariosByIntegracion(integracion.IdIntegracion); integracion.Presidentes = model.GetPresidentesByIntegracion(integracion.IdIntegracion); listaIntegraciones.Add(integracion); } } } catch (SqlException ex) { string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; ErrorUtilities.SetNewErrorMessage(ex, methodName + " Exception, IntegracionesModel", 0); } catch (Exception ex) { string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; ErrorUtilities.SetNewErrorMessage(ex, methodName + " Exception, IntegracionesModel", 0); } finally { cmd.Dispose(); reader.Close(); oleConne.Close(); } return listaIntegraciones; }