/// <summary> /// Crea una entidad Área. /// </summary> /// <returns>Retorna un valor bool acorde a la ejecucion satisfactoria del metodo</returns> public bool Create() { try { DAL.WFBSEntities modelo = new DAL.WFBSEntities(); DAL.EVALUACION ev = new DAL.EVALUACION(); PeriodoEvaluacion pe = new PeriodoEvaluacion(); PeriodoEvaluacionOperacion peOp = new PeriodoEvaluacionOperacion(pe); ev.ID_EVALUACION = this._evaluacion.ID_EVALUACION; ev.ID_AREA = this._evaluacion.ID_AREA; ev.ID_PERIODO_EVALUACION = peOp.periodoEvaluacionActivo(); ev.ID_COMPETENCIA = this._evaluacion.ID_COMPETENCIA; ev.RUT_EVALUADO = this._evaluacion.RUT_EVALUADO; ev.RUT_EVALUADOR = this._evaluacion.RUT_EVALUADOR; ev.NOTA_ESPERADA_COMPETENCIA = this._evaluacion.NOTA_ESPERADA_COMPETENCIA; ev.FECHA_CONTESTA_ENCUESTA = this._evaluacion.FECHA_CONTESTA_ENCUESTA; ev.NOTA_ENCUESTA = this._evaluacion.NOTA_ENCUESTA; ev.ID_TIPO_EVALUACION = this._evaluacion.ID_TIPO_EVALUACION; modelo.EVALUACION.Add(ev); modelo.SaveChanges(); modelo = null; return(true); } catch (Exception ex) { Log.Logger.log("No se pudo Agregar la evaluación:" + ex.ToString()); return(false); } }
private void btnEliminarPeriodo_Click(object sender, RoutedEventArgs e) { if (dgPeriodo.SelectedItem != null) { PeriodoEvaluacion pe = (PeriodoEvaluacion)dgPeriodo.SelectedItem; if (pe.vigencia == 0) { MessageBox.Show("El Periodo de Evaluación se encuentra desactivado", "Aviso"); } else { string xml = pe.Serializar(); WFBS.Presentation.ServiceWCF.ServiceWFBSClient servicio = new WFBS.Presentation.ServiceWCF.ServiceWFBSClient(); if (servicio.EliminarPeriodoEvaluacion(xml)) { MessageBox.Show("El Periodo de Evaluación seleccionado ha sido desactivado", "Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); MantenedorPeriodoEvaluacion nextPage = new MantenedorPeriodoEvaluacion(); navService.Navigate(nextPage); } else { MessageBox.Show("No se pudo eliminar el Periodo de Evaluación", "Aviso"); } } } else { MessageBox.Show("Debe seleccionar un Periodo de Evaluación antes", "Aviso:"); } }
public string LeerPeriodosEvaluaciones() { XML formato = new XML(); PeriodoEvaluacion pe = new PeriodoEvaluacion(); PeriodoEvaluacionOperacion periodoOp = new PeriodoEvaluacionOperacion(pe); List <PeriodoEvaluacion> periodos = periodoOp.Listar(); return(formato.Serializar(periodos)); }
public async Task Create(PeriodoEvaluacion model) { try { _db.periodoEvaluacion.Add(model); await _db.SaveChangesAsync(); } catch (Exception e) { throw new Exception(e.Message, e); } }
public bool EliminarPeriodoEvaluacion(string xml) { try { XML formato = new XML(); PeriodoEvaluacion periodoEva = formato.Deserializar <PeriodoEvaluacion>(xml); PeriodoEvaluacionOperacion periodoOp = new PeriodoEvaluacionOperacion(periodoEva); return(periodoOp.Delete()); } catch (Exception ex) { Logger.log("No se pudo Desactivar el Periodo de Evaluación: " + ex.ToString()); return(false); } }
private void btnModificarPeriodo_Click(object sender, RoutedEventArgs e) { if (dgPeriodo.SelectedItem != null) { PeriodoEvaluacion us = (PeriodoEvaluacion)dgPeriodo.SelectedItem; //MessageBox.Show(us.Rut, "Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); ModificarPeriodo nextPage = new ModificarPeriodo(us.idPeriodo); navService.Navigate(nextPage); } else { MessageBox.Show("Debe seleccionar un periodo antes", "Aviso:"); } }
private void btnModificarPeriodo_Click(object sender, RoutedEventArgs e) { if (dgPeriodo.SelectedItem != null) { PeriodoEvaluacion ar = (PeriodoEvaluacion)dgPeriodo.SelectedItem; int id = Convert.ToInt32(ar.idPeriodo); NavigationService navService = NavigationService.GetNavigationService(this); ModificarPeriodo nextPage = new ModificarPeriodo(id); navService.Navigate(nextPage); } else { MessageBox.Show("Debe seleccionar un Periodo de Evaluación antes", "Aviso:"); } }
private void btnEliminarPeriodo_Click(object sender, RoutedEventArgs e) { if (dgPeriodo.SelectedItem != null) { PeriodoEvaluacion us = (PeriodoEvaluacion)dgPeriodo.SelectedItem; us.Delete(); MessageBox.Show("El periodo seleccionado ha sido desactivada", "Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); MantenedorPeriodoEvaluacion nextPage = new MantenedorPeriodoEvaluacion(); navService.Navigate(nextPage); } else { MessageBox.Show("Debe seleccionar un periodo antes", "Aviso:"); } }
/* Reporte evaluación por grupo */ /// <summary> /// Lista de las notas de los funcionarios por cada Competencia. /// </summary> /// <param name="id_area">Recibe un parametro id referente a un Área</param> /// <param name="id_competencia">Recibe un parametro id referente a una Competencia</param> /// <returns>Retorna las notas de los funcionarios evaluados por Área</returns> public List <float> ObtenerNotasCompetencia(int id_area, int id_competencia) {// Obtener las brechas de todos los funcionarios PeriodoEvaluacion pe = new PeriodoEvaluacion(); PeriodoEvaluacionOperacion peOp = new PeriodoEvaluacionOperacion(pe); int id_periodo = peOp.periodoEvaluacionActivo(); var notasDB = CommonBC.ModeloWFBS.EVALUACION.Where(e => e.ID_PERIODO_EVALUACION == id_periodo && e.ID_AREA == id_area && e.ID_COMPETENCIA == id_competencia).Select(e => e.NOTA_ENCUESTA); List <float> notas = new List <float>(); foreach (var item in notasDB) { notas.Add((float)item); } return(notas); }
public async Task UpdateEstado(PeriodoEvaluacion obj) { try { var _obj = await _db.periodoEvaluacion.FirstOrDefaultAsync(e => e.PeriodoEvaluaionId == obj.PeriodoEvaluaionId); if (_obj != null) { _obj.Estado = obj.Estado; await _db.SaveChangesAsync(); } } catch (Exception e) { throw new Exception(e.Message, e); } }
public async Task Update(PeriodoEvaluacion model) { try { var _model = await _db.periodoEvaluacion.FirstOrDefaultAsync(e => e.PeriodoEvaluaionId == model.PeriodoEvaluaionId); if (_model != null) { _db.Entry(_model).CurrentValues.SetValues(model); await _db.SaveChangesAsync(); } } catch (Exception e) { throw new Exception(e.Message, e); } }
public int periodoActivo() { try { XML formato = new XML(); PeriodoEvaluacion pe = new PeriodoEvaluacion(); PeriodoEvaluacionOperacion peOp = new PeriodoEvaluacionOperacion(pe); int id = peOp.periodoEvaluacionActivo(); pe.ID_PERIODO_EVALUACION = id; peOp.Read(); return(Convert.ToInt32(pe.ID_PERIODO_EVALUACION)); } catch (Exception ex) { Logger.log("No se pudo obtener el periodo actual: " + ex.ToString()); return(0); } }
private List <PeriodoEvaluacion> GenerarListadoPeriodos(List <DAL.PERIODO_EVALUACION> periodosBDD) { List <PeriodoEvaluacion> periodosController = new List <PeriodoEvaluacion>(); foreach (DAL.PERIODO_EVALUACION item in periodosBDD) { PeriodoEvaluacion ar = new PeriodoEvaluacion(); ar.ID_PERIODO_EVALUACION = Convert.ToInt32(item.ID_PERIODO_EVALUACION); ar.FECHA_INICIO = item.FECHA_INICIO; ar.VIGENCIA = Convert.ToInt32(item.VIGENCIA); ar.PORCENTAJE_EVALUACION = Convert.ToInt32(item.PORCENTAJE_EVALUACION); ar.PORCENTAJE_AUTOEVALUACION = Convert.ToInt32(item.PORCENTAJE_AUTOEVALUACION); periodosController.Add(ar); } return(periodosController); }
public string LeerPeriodoEvaluacion(string xml) { try { PeriodoEvaluacion pe = new PeriodoEvaluacion(xml); if (pe.Read()) { return(pe.Serializar()); } else { return(null); } } catch (Exception ex) { return(ex.ToString()); } }
private void dgPeriodo_Loaded(object sender, RoutedEventArgs e) { PeriodoEvaluacion pe = new PeriodoEvaluacion(); PeriodoEvaluacionOperacion periodoOp = new PeriodoEvaluacionOperacion(pe); WFBS.Presentation.ServiceWFBS.ServiceWFBSClient servicio = new WFBS.Presentation.ServiceWFBS.ServiceWFBSClient(); XML formato = new XML(); dgPeriodo.ItemsSource = formato.Deserializar <List <PeriodoEvaluacion> >(servicio.LeerPeriodosEvaluaciones()); dgPeriodo.Columns[0].Visibility = Visibility.Hidden; dgPeriodo.Columns[1].Header = "Fecha de Inicio"; dgPeriodo.Columns[2].Header = "Vigencia (dias)"; dgPeriodo.Columns[3].Header = "% de Evaluación"; dgPeriodo.Columns[4].Header = "% de Auto Evaluación"; //dgPeriodo.Columns[5].Visibility = Visibility.Collapsed; }
/// <summary> /// Identifica a un usuario ya evaluado. /// </summary> /// <returns>Retorna un valor bool acorde a la ejecucion satisfactoria del metodo</returns> public bool usuarioEvaluado() { try { PeriodoEvaluacion pe = new PeriodoEvaluacion(); PeriodoEvaluacionOperacion peOp = new PeriodoEvaluacionOperacion(pe); decimal pe_act = peOp.periodoEvaluacionActivo(); DAL.WFBSEntities evaluacion = new DAL.WFBSEntities(); DAL.EVALUACION ev = evaluacion.EVALUACION.First(b => b.ID_TIPO_EVALUACION == _evaluacion.ID_TIPO_EVALUACION && b.ID_PERIODO_EVALUACION == pe_act && b.RUT_EVALUADO == _evaluacion.RUT_EVALUADO); return(true); } catch (Exception ex) { Logger.log("No se pudo obtener información del usuario: " + ex.ToString()); return(false); } }
public string LeerPeriodoEvaluacion(string xml) { try { XML formato = new XML(); PeriodoEvaluacion periodoEva = formato.Deserializar <PeriodoEvaluacion>(xml); PeriodoEvaluacionOperacion periodoOp = new PeriodoEvaluacionOperacion(periodoEva); if (periodoOp.Read()) { return(formato.Serializar(periodoEva)); } else { return(null); } } catch (Exception ex) { Logger.log("No se pudo Leer el Periodo de Evaluación: " + ex.ToString()); return(null); } }
public Evaluacion notaFinalUsuarioPorCom() { try { PeriodoEvaluacion pe = new PeriodoEvaluacion(); PeriodoEvaluacionOperacion peOp = new PeriodoEvaluacionOperacion(pe); pe.ID_PERIODO_EVALUACION = peOp.periodoEvaluacionActivo(); peOp.Read(); DAL.WFBSEntities evaluacion = new DAL.WFBSEntities(); DAL.EVALUACION ev1 = evaluacion.EVALUACION.First(b => b.ID_TIPO_EVALUACION == 1 && b.ID_PERIODO_EVALUACION == pe.ID_PERIODO_EVALUACION && b.RUT_EVALUADO == _evaluacion.RUT_EVALUADO && b.ID_COMPETENCIA == _evaluacion.ID_COMPETENCIA); DAL.EVALUACION ev2 = evaluacion.EVALUACION.First(b => b.ID_TIPO_EVALUACION == 2 && b.ID_PERIODO_EVALUACION == pe.ID_PERIODO_EVALUACION && b.RUT_EVALUADO == _evaluacion.RUT_EVALUADO && b.ID_COMPETENCIA == _evaluacion.ID_COMPETENCIA); Evaluacion ev = new Evaluacion(); EvaluacionOperacion evOp = new EvaluacionOperacion(ev); ev.ID_COMPETENCIA = Convert.ToDecimal(ev1.ID_COMPETENCIA); ev.NOTA_ENCUESTA = ev1.NOTA_ENCUESTA; ev.NOTA_ESPERADA_COMPETENCIA = Convert.ToDecimal(ev1.NOTA_ESPERADA_COMPETENCIA); ev.RUT_EVALUADO = ev1.RUT_EVALUADO; double porc_auto = (double)pe.PORCENTAJE_AUTOEVALUACION / 100; double porc_ev = (double)pe.PORCENTAJE_AUTOEVALUACION / 100; ev.RUT_EVALUADOR = ((ev1.NOTA_ENCUESTA * (pe.PORCENTAJE_AUTOEVALUACION / 100)) + (ev2.NOTA_ENCUESTA * (pe.PORCENTAJE_EVALUACION / 100))).ToString(); return(ev); } catch (Exception ex) { Logger.log("No se pudo obtener información de la evaluacion: " + ex.ToString()); return(null); } }
//---------------------------------------------------------// #region Periodo de evaluacion // Periodo de Evaluacion public bool CrearPeriodoEvaluacion(string xml) { PeriodoEvaluacion pe = new PeriodoEvaluacion(xml); return(pe.Create()); }
public bool ActualizarPeriodoEvaluacion(string xml) { PeriodoEvaluacion pe = new PeriodoEvaluacion(xml); return(pe.Update()); }
public bool EliminarPeriodoEvaluacion(string xml) { PeriodoEvaluacion pe = new PeriodoEvaluacion(xml); return(pe.Delete()); }
private void btnIngresar_Click(object sender, RoutedEventArgs e) { try { PeriodoEvaluacion pe = new PeriodoEvaluacion(); if (DatePeriodo.SelectedDate.Value != null) { if ((txtVigencia.Text.Length > 0 && txtVigencia.Text.Length <= 10) && txtVigencia.Text.Trim() != "") { pe.fechaInicio = DatePeriodo.DisplayDate; pe.vigencia = int.Parse(txtVigencia.Text); #region porcentaje E switch (cmbPorcentajeE.SelectedIndex + 1) { case 1: pe.porcentajeE = 10; break; case 2: pe.porcentajeE = 20; break; case 3: pe.porcentajeE = 30; break; case 4: pe.porcentajeE = 40; break; case 5: pe.porcentajeE = 50; break; case 6: pe.porcentajeE = 60; break; case 7: pe.porcentajeE = 70; break; case 8: pe.porcentajeE = 80; break; case 9: pe.porcentajeE = 90; break; case 10: pe.porcentajeE = 100; break; default: pe.porcentajeE = 10; break; } #endregion #region Porcentaje AE switch (cmbPorcentajeAE.SelectedIndex + 1) { case 1: pe.porcentajeAE = 10; break; case 2: pe.porcentajeAE = 20; break; case 3: pe.porcentajeAE = 30; break; case 4: pe.porcentajeAE = 40; break; case 5: pe.porcentajeAE = 50; break; case 6: pe.porcentajeAE = 60; break; case 7: pe.porcentajeAE = 70; break; case 8: pe.porcentajeAE = 80; break; case 9: pe.porcentajeAE = 90; break; case 10: pe.porcentajeAE = 100; break; default: pe.porcentajeAE = 10; break; } #endregion if (pe.porcentajeAE + pe.porcentajeE != 100) { MessageBox.Show("La suma de los porcentajes debe ser igual a 100", "Aviso"); } else { string xml = pe.Serializar(); WFBS.Presentation.ServiceWCF.ServiceWFBSClient servicio = new WFBS.Presentation.ServiceWCF.ServiceWFBSClient(); if (servicio.CrearPeriodoEvaluacion(xml)) { MessageBox.Show("Agregado correctamente", "Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); MantenedorPeriodoEvaluacion nextPage = new MantenedorPeriodoEvaluacion(); navService.Navigate(nextPage); } else { MessageBox.Show("No se pudo agregar el Periodo de Evaluación, verifique que los datos sean correctos", "Aviso"); } } } else { MessageBox.Show("El campo Vigencia es obligatorio y admite solo valores numericos", "Aviso"); } } else { MessageBox.Show("El campo Fecha de Inicio es obligatorio. Aviso"); } } catch (Exception) { MessageBox.Show("No se pudo agregar el Periodo de Evaluación!", "Alerta"); } }
private void btnModificar_Click(object sender, RoutedEventArgs e) { List <PeriodoEvaluacion> periodos = colPe.ReadAllPeriodos(); try { PeriodoEvaluacion pe = new PeriodoEvaluacion(); pe.idPeriodo = int.Parse(txtIdPerido.Text); if (pe.Read()) { if (DatePeriodo.SelectedDate.Value != null) { if ((txtVigencia.Text.Length > 0 && txtVigencia.Text.Length <= 10) && txtVigencia.Text.Trim() != "") { pe.fechaInicio = DatePeriodo.SelectedDate.Value; pe.vigencia = int.Parse(txtVigencia.Text); #region porcentaje E switch (cmbPorcentajeE.SelectedIndex + 1) { case 1: pe.porcentajeE = 10; break; case 2: pe.porcentajeE = 20; break; case 3: pe.porcentajeE = 30; break; case 4: pe.porcentajeE = 40; break; case 5: pe.porcentajeE = 50; break; case 6: pe.porcentajeE = 60; break; case 7: pe.porcentajeE = 70; break; case 8: pe.porcentajeE = 80; break; case 9: pe.porcentajeE = 90; break; case 10: pe.porcentajeE = 100; break; default: pe.porcentajeE = 10; break; } #endregion #region Porcentaje AE switch (cmbPorcentajeAE.SelectedIndex + 1) { case 1: pe.porcentajeAE = 10; break; case 2: pe.porcentajeAE = 20; break; case 3: pe.porcentajeAE = 30; break; case 4: pe.porcentajeAE = 40; break; case 5: pe.porcentajeAE = 50; break; case 6: pe.porcentajeAE = 60; break; case 7: pe.porcentajeAE = 70; break; case 8: pe.porcentajeAE = 80; break; case 9: pe.porcentajeAE = 90; break; case 10: pe.porcentajeAE = 100; break; default: pe.porcentajeAE = 10; break; } #endregion if (pe.porcentajeE + pe.porcentajeAE != 100) { MessageBox.Show("La suma de los porcentajes no puede ser mayor a 100", "Aviso!"); } else { string xml = pe.Serializar(); WFBS.Presentation.ServiceWCF.ServiceWFBSClient servicio = new WFBS.Presentation.ServiceWCF.ServiceWFBSClient(); if (servicio.ActualizarPeriodoEvaluacion(xml)) { MessageBox.Show("Actualizado correctamente", "Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); MantenedorPeriodoEvaluacion nextPage = new MantenedorPeriodoEvaluacion(); navService.Navigate(nextPage); } else { MessageBox.Show("No se pudo actualizar el Periodo de Evaluación, verifique que los datos sean correctos", "Aviso"); } } } else { MessageBox.Show("El campo Vigencia es obligatorio y admite solo valores numericos", "Aviso"); } } else { MessageBox.Show("El campo Fecha de Inicio es obligatorio", "Aviso"); } } else { MessageBox.Show("Debe completar los campos antes de continuar", "Aviso"); } } catch (Exception) { MessageBox.Show("No se ha podido modificar el periodo. Verifique que la información esté correcta", "Error"); } }
private void btnModificar_Click(object sender, RoutedEventArgs e) { try { PeriodoEvaluacion pe = new PeriodoEvaluacion(); pe.ID_PERIODO_EVALUACION = int.Parse(txtIdPerido.Text); PeriodoEvaluacionOperacion periodoEOp = new PeriodoEvaluacionOperacion(pe); XML formato = new XML(); string xml = formato.Serializar(pe); WFBS.Presentation.ServiceWFBS.ServiceWFBSClient servicio = new WFBS.Presentation.ServiceWFBS.ServiceWFBSClient(); if (servicio.LeerPeriodoEvaluacion(xml) != null) { if (DatePeriodo.SelectedDate.Value != null) { if ((txtVigencia.Text.Length > 0 && txtVigencia.Text.Length <= 10) && txtVigencia.Text.Trim() != "") { pe.FECHA_INICIO = DatePeriodo.SelectedDate.Value; pe.VIGENCIA = int.Parse(txtVigencia.Text); #region porcentaje E switch (cmbPorcentajeE.SelectedIndex + 1) { case 1: pe.PORCENTAJE_EVALUACION = 10; break; case 2: pe.PORCENTAJE_EVALUACION = 20; break; case 3: pe.PORCENTAJE_EVALUACION = 30; break; case 4: pe.PORCENTAJE_EVALUACION = 40; break; case 5: pe.PORCENTAJE_EVALUACION = 50; break; case 6: pe.PORCENTAJE_EVALUACION = 60; break; case 7: pe.PORCENTAJE_EVALUACION = 70; break; case 8: pe.PORCENTAJE_EVALUACION = 80; break; case 9: pe.PORCENTAJE_EVALUACION = 90; break; case 10: pe.PORCENTAJE_EVALUACION = 100; break; default: pe.PORCENTAJE_EVALUACION = 10; break; } #endregion #region Porcentaje AE switch (cmbPorcentajeAE.SelectedIndex + 1) { case 1: pe.PORCENTAJE_AUTOEVALUACION = 10; break; case 2: pe.PORCENTAJE_AUTOEVALUACION = 20; break; case 3: pe.PORCENTAJE_AUTOEVALUACION = 30; break; case 4: pe.PORCENTAJE_AUTOEVALUACION = 40; break; case 5: pe.PORCENTAJE_AUTOEVALUACION = 50; break; case 6: pe.PORCENTAJE_AUTOEVALUACION = 60; break; case 7: pe.PORCENTAJE_AUTOEVALUACION = 70; break; case 8: pe.PORCENTAJE_AUTOEVALUACION = 80; break; case 9: pe.PORCENTAJE_AUTOEVALUACION = 90; break; case 10: pe.PORCENTAJE_AUTOEVALUACION = 100; break; default: pe.PORCENTAJE_AUTOEVALUACION = 10; break; } #endregion if (pe.PORCENTAJE_EVALUACION + pe.PORCENTAJE_AUTOEVALUACION != 100) { MessageBox.Show("La suma de los porcentajes debe ser igual a 100", "Aviso!"); } else { string xml2 = formato.Serializar(pe); if (servicio.ActualizarPeriodoEvaluacion(xml2)) { MessageBox.Show("Actualizado correctamente", "Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); MantenedorPeriodoEvaluacion nextPage = new MantenedorPeriodoEvaluacion(); navService.Navigate(nextPage); } else { MessageBox.Show("No se pudo actualizar el Periodo de Evaluación, verifique que los datos sean correctos", "Aviso"); } } } else { MessageBox.Show("El campo Vigencia es obligatorio y admite como máximo 10 dígitos", "Aviso"); } } else { MessageBox.Show("El campo Fecha de Inicio es obligatorio", "Aviso"); } } else { MessageBox.Show("Debe completar los campos antes de continuar", "Aviso"); } } catch (Exception) { MessageBox.Show("No se ha podido modificar el periodo. Verifique que la información esté correcta", "Error"); } }
public async Task <IHttpActionResult> Update(PeriodoEvaluacion obj) { try { log.Info(new MDCSet(this.ControllerContext.RouteData)); await _repository.Update(obj); return(Ok("Período de evaluación actualizado correctamente!")); } catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e); return(InternalServerError(e)); } }
public async Task <Grafica> GetPromedioCompetencias(BusquedaNivel param) { try { Grafica valoresgrafica = new Grafica(); List <String> fecha = new List <string>(); valoresgrafica.Series = new List <string>(); valoresgrafica.Etiquetas = new List <string>(); List <string> datobase = new List <string>(); List <string> dato = new List <string>(); if (param.periodo == "" || param.periodo == null) { param.periodo = "Todos"; } if (param.idCategoria > 0) { if (param.periodo != "Todos") { List <int> evaluaciones = new List <int>(_db.evaluacionesConductuales.Where(x => x.Periodo == param.periodo && x.CategoriaCompetenciasId == param.idCategoria && x.claveArea == param.claveUnidad).Select(x => x.claveEvaluacion).ToList()); var evaluacionesConsultadas = await(from f in _db.detalleConductuales where evaluaciones.Contains(f.claveEvaluacion) orderby f.MatrizId group f by new { f.MatrizId, f.matriz.competencia.Competencia, f.matriz.descnivel.nivel.Descripcion } into valores select new { valores.Key.Competencia, valores.Key.Descripcion, promedio = valores.Average(f => f.valorReal) }).AsNoTracking().ToListAsync(); fecha.Add("Valor esperado"); fecha.Add(param.periodo); valoresgrafica.Series.AddRange(fecha.ToList()); foreach (var items in evaluacionesConsultadas) { valoresgrafica.Etiquetas.Add(items.Competencia); datobase.Add(items.Descripcion.ToString()); dato.Add(items.promedio.ToString()); } valoresgrafica.Datos.Add(datobase); valoresgrafica.Datos.Add(dato); } else { PeriodoEvaluacionRepository p = new PeriodoEvaluacionRepository(); IEnumerable <PeriodoEvaluacion> periodosEvaluados = await p.GetAll(); PeriodoEvaluacion primerPeriodo = periodosEvaluados.FirstOrDefault(); foreach (var item in periodosEvaluados) { List <int> evaluaciones = new List <int>(_db.evaluacionesConductuales.Where(x => x.Periodo == item.Periodo && x.CategoriaCompetenciasId == param.idCategoria && x.claveArea == param.claveUnidad).Select(x => x.claveEvaluacion).ToList()); var evaluacionesConsultadas = await(from f in _db.detalleConductuales where evaluaciones.Contains(f.claveEvaluacion) orderby f.MatrizId group f by new { f.MatrizId, f.matriz.competencia.Competencia, f.matriz.descnivel.nivel.Descripcion } into valores select new { valores.Key.Competencia, valores.Key.Descripcion, promedio = valores.Average(f => f.valorReal) }).AsNoTracking().ToListAsync(); if (item.Periodo == primerPeriodo.Periodo) { foreach (var items in evaluacionesConsultadas) { valoresgrafica.Etiquetas.Add(items.Competencia); datobase.Add(items.Descripcion.ToString()); } valoresgrafica.Datos.Add(datobase); fecha.Add("Valor esperado"); } fecha.Add(item.Periodo); dato = new List <string>(); foreach (var items in evaluacionesConsultadas) { dato.Add(items.promedio.ToString()); } valoresgrafica.Datos.Add(dato); dato = null; } valoresgrafica.Series.AddRange(fecha.ToList()); } } return(valoresgrafica); } catch (Exception e) { throw new Exception(e.Message, e); } }
private void btnModificar_Click(object sender, RoutedEventArgs e) { List <PeriodoEvaluacion> periodos = col.ReadAllPeriodos(); try { PeriodoEvaluacion per = new PeriodoEvaluacion(); per.idPeriodo = int.Parse(txtIdPerido.Text); if (per.Read()) { if (DatePeriodo.SelectedDate == null && txtVigencia.Text.Length > 0) { per.vigencia = int.Parse(txtVigencia.Text); #region porcentaje E switch (cmbPorcentajeE.SelectedIndex + 1) { case 1: per.porcentajeE = 10; break; case 2: per.porcentajeE = 20; break; case 3: per.porcentajeE = 30; break; case 4: per.porcentajeE = 40; break; case 5: per.porcentajeE = 50; break; case 6: per.porcentajeE = 60; break; case 7: per.porcentajeE = 70; break; case 8: per.porcentajeE = 80; break; case 9: per.porcentajeE = 90; break; case 10: per.porcentajeE = 100; break; default: per.porcentajeE = 10; break; } #endregion #region Porcentaje AE switch (cmbPorcentajeAE.SelectedIndex + 1) { case 1: per.porcentajeAE = 10; break; case 2: per.porcentajeAE = 20; break; case 3: per.porcentajeAE = 30; break; case 4: per.porcentajeAE = 40; break; case 5: per.porcentajeAE = 50; break; case 6: per.porcentajeAE = 60; break; case 7: per.porcentajeAE = 70; break; case 8: per.porcentajeAE = 80; break; case 9: per.porcentajeAE = 90; break; case 10: per.porcentajeAE = 100; break; default: per.porcentajeAE = 10; break; } #endregion per.Update(); MessageBox.Show("Actualizado correctamente. Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); MantenedorPeriodoEvaluacion nextPage = new MantenedorPeriodoEvaluacion(); navService.Navigate(nextPage); } } else { MessageBox.Show("Debe completar los campos antes de continuar. Aviso"); } } catch (Exception) { MessageBox.Show("No se ha podido modificar el periodo. Verifique que la información esté correcta", "Error"); } }
private void btnIngresar_Click(object sender, RoutedEventArgs e) { try { PeriodoEvaluacion per = new PeriodoEvaluacion(); per.fechaInicio = DatePeriodo.DisplayDate; per.vigencia = int.Parse(txtAbreviacion.Text); #region porcentaje E switch (cmbPorcentajeE.SelectedIndex + 1) { case 1: per.porcentajeE = 10; break; case 2: per.porcentajeE = 20; break; case 3: per.porcentajeE = 30; break; case 4: per.porcentajeE = 40; break; case 5: per.porcentajeE = 50; break; case 6: per.porcentajeE = 60; break; case 7: per.porcentajeE = 70; break; case 8: per.porcentajeE = 80; break; case 9: per.porcentajeE = 90; break; case 10: per.porcentajeE = 100; break; default: per.porcentajeE = 10; break; } #endregion #region Porcentaje AE switch (cmbPorcentajeAE.SelectedIndex + 1) { case 1: per.porcentajeAE = 10; break; case 2: per.porcentajeAE = 20; break; case 3: per.porcentajeAE = 30; break; case 4: per.porcentajeAE = 40; break; case 5: per.porcentajeAE = 50; break; case 6: per.porcentajeAE = 60; break; case 7: per.porcentajeAE = 70; break; case 8: per.porcentajeAE = 80; break; case 9: per.porcentajeAE = 90; break; case 10: per.porcentajeAE = 100; break; default: per.porcentajeAE = 10; break; } #endregion if (per.Create()) { MessageBox.Show("Agregado correctamente. Éxito!"); NavigationService navService = NavigationService.GetNavigationService(this); MantenedorPeriodoEvaluacion nextPage = new MantenedorPeriodoEvaluacion(); navService.Navigate(nextPage); } else { MessageBox.Show("No se ha podido agregar el periodo de evaluación verifique que los datos sean correctos"); } } catch (Exception) { MessageBox.Show("Error, no se pudo agregar el periodo de evaluación!"); } }