//Competencia -> Factor -> Pregunta public Factor(string cod, string nom, Competencia comp, string des = null, int nOrden = 0) { codigo = cod; competenciaAsociada = comp; Nombre = nom; Descripcion = des; nro_orden = nOrden; listaPreguntas = new List<Pregunta>(); }
/* * La mision que justifica la existencia de los gestores es hacer de "interfaz" entre las ENTIDADES y el resto del sistema * Por esto el gestor debe tener la responsabilidad de instanciar la/s que le corresponde gestionar */ public Factor instanciarFactor(string codigo, string nombre, Competencia competenciaAsociada, string descripcion = null, int nrOrden = 0) { Factor nuevoFactor = new Factor(codigo, nombre, competenciaAsociada, descripcion, nrOrden); return nuevoFactor; }
public void addListaCaracteristicas(Competencia comp, Ponderacion pond) { Caracteristica elemento; elemento.dato1 = comp; elemento.dato2 = pond; caracteristicas.Add(elemento); }
/* * - RecuperarFactores tiene la misión de recuperar los factores para una competencia puntual * de a la BASE DE DATOS */ public List<Factor> recuperarFactores(Competencia competenciaAsociada) { bool conexionExitosa; GestorFactores gestorFactores = new GestorFactores(); List<Factor> listaDeFactores = new List<Factor>();//Para el retorno de datos string consultaSql = "SELECT f.nombre, f.codigo, nroOrden " + "FROM `factor` AS f " + "JOIN `competencia` AS comp on (comp.codigo = '" + competenciaAsociada.Codigo + "') " + "WHERE f.`Competencia_codigo` = comp.codigo;"; conexionExitosa = iniciarConexion(); if (!conexionExitosa) { MessageBox.Show("No se realizo la conexion con la base de datos"); terminarConexion(); return null; } MySql.Data.MySqlClient.MySqlCommand comando; comando = ObjConexion.CreateCommand(); comando.CommandText = consultaSql; MySqlDataReader reader = comando.ExecuteReader(); if (!reader.HasRows) { //si el reader esta vacio, es qe no encontro a ese candidato terminarConexion(); return null; } while (reader.Read()) { string cod = reader["codigo"].ToString(); string nomFactor = reader["nombre"].ToString(); int nrOrden = Int32.Parse(reader["nroOrden"].ToString()); //Ahora vamos a crear una instancia del objeto factor, a través del gestor de factores Factor factorEv = gestorFactores.instanciarFactor(cod, nomFactor, competenciaAsociada, null, nrOrden); listaDeFactores.Add(factorEv); } terminarConexion(); //Agregamos la lista de Factores para cada una de las competencias encontradas for (int i = 0; i < listaDeFactores.Count; i++) { List<Pregunta> preguntasList = recuperarPreguntas(listaDeFactores[i]); if (preguntasList != null) { if (preguntasList.Count >= 5) listaDeFactores[i].ListaPreguntas = preguntasList; else listaDeFactores[i].Codigo = "INSUFICIENTES PREG"; } else listaDeFactores[i].Codigo = "INSUFICIENTES PREG"; } return listaDeFactores; }
/* * La mision que justifica la existencia de los gestores es hacer de "interfaz" entre las ENTIDADES y el resto del sistema * Por esto el gestor debe tener la responsabilidad de instanciar la/s que le corresponde gestionar */ public Competencia instanciarCompetencia(string codigo, string nombre, string descripcion = null, List<Factor> factoresAsociados = null) { Competencia nuevaCompetencia = new Competencia(codigo, nombre, descripcion, factoresAsociados); return nuevaCompetencia; }