protected void obtenerColorAmarillo(string valor) { string color; valor = BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.PARAMETRO_SISTEMA.AMARILLO.ToString(); color = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.ParametroSistemaporValorColor(valor); BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.VALOR_COLOR = color; }
protected int obtenerParametroCompetenciaDesarrollada(string valor) { int parametro; valor = BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.PARAMETRO_SISTEMA.DESARROLLADAS.ToString(); parametro = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.ParametroSistemaporValor(valor); return(BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.VALOR = parametro); }
protected void obtenervalor(string valor) { int parametro; valor = BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.PARAMETRO_SISTEMA.DESARROLLADAS.ToString(); parametro = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.ParametroSistemaporValor(valor); BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.VALOR = parametro; }
protected int obtenervalorparametroindicador() { int parametro; string valor; valor = BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.PARAMETRO_SISTEMA.INDICADOR_DESARROLLO_TRANSVERSALES.ToString(); parametro = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.ParametroSistemaporValor(valor); return(BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.VALOR = parametro); }
protected void CalcularIndicadorEmpresa(string idNodo, string nivel) { List <BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES> oListaEvaluacionesIndicador = new List <BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES>(); BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES = new BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES(); oListaEvaluacionesIndicador = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.CalcularIndicadorporEmpresa(Guid.Parse(idNodo), Int32.Parse(nivel)); List <object[]> lstPersonalCompetencias = oListaEvaluacionesIndicador /* Group the list by the element at position 0 in each item */ .GroupBy(o => o.PERSONAL_ID) /* Project the created grouping into a new object[]: */ .Select(i => new object[] { i.Key, i.Average(x => x.PORCENTAJE * 100) }) .ToList(); decimal contadorGerencia = 0; decimal contadorTotalRegistros = 0; //obtener indicador de color para competencias desarrolladas int parametroCompetenciasDesarrolladas = obtenervalorparametroindicador(); decimal indicador = 0; decimal totalEvaluaciones = 0; //Obtener valor de competencia desarrollada = 80 string valor = string.Empty; int valorDesarrollo = obtenerParametroCompetenciaDesarrollada(valor); decimal valorCompetenciaDesarrollada = (decimal)valorDesarrollo; contadorTotalRegistros = lstPersonalCompetencias.Count; foreach (var itemPersonas in lstPersonalCompetencias) { decimal itemEvaluacion = (decimal)itemPersonas[1]; decimal itemTotalEvaluacion = decimal.Round(itemEvaluacion, 0); totalEvaluaciones += itemTotalEvaluacion; } if (totalEvaluaciones > 0 && contadorTotalRegistros > 0) { indicador = (totalEvaluaciones / contadorTotalRegistros); } this.lblIndicadorEmpresa.Text = Decimal.Round(indicador, 0).ToString() + "%"; if (indicador >= parametroCompetenciasDesarrolladas) { this.lblIndicadorEmpresa.ForeColor = System.Drawing.Color.Green; } if (indicador < parametroCompetenciasDesarrolladas) { this.lblIndicadorEmpresa.ForeColor = System.Drawing.Color.Red; } }
protected void btnGrabar_Click(object sender, EventArgs e) { if (rgImportarTransversales.Items.Count > 0) { try { System.Threading.Thread.Sleep(2000); rgImportarTransversales.AllowPaging = false; rgImportarTransversales.Rebind(); string msjerror = "los siguientes códigos de usuarios no fueron encontrados: "; foreach (GridDataItem item in rgImportarTransversales.MasterTableView.Items) { BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES OBE_COMPE_TRANS = new BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES(); BL_IMPORTAR_EVALUACIONES_TRANSVERSALES BL_IMPORTAR_EVALUACIONES = new BL_IMPORTAR_EVALUACIONES_TRANSVERSALES(); BE_PERSONAL OBE_PERSONAL = new BE_PERSONAL(); string porcentaje; string Codigo = item["user_id"].Text; string Codigo_personal = Codigo.Remove(0, 6); OBE_PERSONAL = BL_IMPORTAR_EVALUACIONES.SeleccionarPersonalporCodigo(Codigo_personal); OBE_COMPE_TRANS.CODIGO = Codigo_personal; OBE_COMPE_TRANS.PERSONAL_ID = OBE_PERSONAL.ID; OBE_COMPE_TRANS.PUESTO_ID = OBE_PERSONAL.PUESTO_ID; OBE_COMPE_TRANS.USUARIO_CREACION = USUARIO; OBE_COMPE_TRANS.ANIO = Convert.ToInt32(rcbFecha.SelectedValue); string Codigo_competencia = item["cod_competencia"].Text; OBE_COMPE_TRANS.COMPETENCIA_TRANSVERSAL_ID = Guid.Parse(BL_IMPORTAR_EVALUACIONES_TRANSVERSALES.seleccionarporCodigo(Codigo_competencia)); porcentaje = item["evaluacion"].Text; decimal valor = Convert.ToDecimal(porcentaje); valor.ToString("0.##"); OBE_COMPE_TRANS.PORCENTAJE = valor; bool Existe_Evaluacion = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.ExisteEvaluacionTransversal(OBE_COMPE_TRANS); if (Existe_Evaluacion == true) { BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.ActualizacionEvaluacionTransversal(OBE_COMPE_TRANS); } else if (OBE_COMPE_TRANS.PERSONAL_ID != Guid.Empty && OBE_COMPE_TRANS.COMPETENCIA_TRANSVERSAL_ID != Guid.Empty) { BL_IMPORTAR_EVALUACIONES_TRANSVERSALES.InsertarEvaluacionTransversales(OBE_COMPE_TRANS); } else { if (msjerror.Contains(Codigo_personal) == false) { msjerror += Codigo_personal + " - "; } lblMensaje.Text = msjerror; } } if (lblMensaje.Text != String.Empty) { lblRegistro.Text = "Las evaluaciones fueron importadas con éxito, sin embargo " + lblMensaje.Text; } else { lblRegistro.Text = "Las evaluaciones fueron importadas con éxito"; } lblMensaje.Text = String.Empty; rgImportarTransversales.AllowPaging = true; rgImportarTransversales.Rebind(); } catch (Exception ex) { lblError.Text = "Error al Importar Evaluaciones :" + ex.ToString(); } } else { lblRegistro.Text = "Datos Incompletos no a Cargado el archivo a Importar"; } }
protected void CalcularIndicador(string idNodo, string nivel) { List <BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES> oListaEvaluacionesTransversales = new List <BE_EVALUACIONES_COMPETENCIAS_TRANSVERSALES>(); BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES = new BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES(); if (Session["PERFIL_ID"].ToString() == "2") { oListaEvaluacionesTransversales = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.SeleccionarEvaluacionesTransversalesPorJerarquia(Guid.Parse(idNodo), Int32.Parse(nivel), USUARIO, USUARIO_GRUPO_ORGANIZACIONAL); } else { oListaEvaluacionesTransversales = BL_EVALUACIONES_COMPETENCIAS_TRANSVERSALES.SeleccionarEvaluacionesTransversalesPorJerarquia(Guid.Parse(idNodo), Int32.Parse(nivel)); } List <object[]> lstPersonalCompetencias = oListaEvaluacionesTransversales /* Group the list by the element at position 0 in each item */ .GroupBy(o => o.PERSONAL_ID) /* Project the created grouping into a new object[]: */ .Select(i => new object[] { i.Key, i.Average(x => x.PORCENTAJE * 100) //i.Average(x => x.PORCENTAJE) }) .ToList(); decimal contadorCompetenciasDesarrolladas = 0; decimal contadorTotalRegistros = 0; //Indicador utilizado para el color int parametroCompetenciasDesarrolladas = obtenervalorparametroindicador(); decimal indicador = 0; decimal totalEvaluaciones = 0; //valor de Competencia Desarrollada = 80; string valor = string.Empty; int valorDesarrollo = obtenerParametroCompetenciaDesarrollada(valor); decimal valorCompetenciaDesarrollada = (decimal)valorDesarrollo; contadorTotalRegistros = lstPersonalCompetencias.Count; foreach (var itemPersonas in lstPersonalCompetencias) { decimal itemEvaluacion = (decimal)itemPersonas[1]; decimal itemTotalEvaluacion = Decimal.Round(itemEvaluacion, 0); totalEvaluaciones += itemTotalEvaluacion; } if (totalEvaluaciones > 0 && contadorTotalRegistros > 0) { indicador = (totalEvaluaciones / contadorTotalRegistros); } this.lblIndicador.Text = Decimal.Round(indicador, 0).ToString() + "%"; if (indicador >= parametroCompetenciasDesarrolladas) { this.lblIndicador.ForeColor = System.Drawing.Color.Green; } if (indicador < parametroCompetenciasDesarrolladas) { this.lblIndicador.ForeColor = System.Drawing.Color.Red; } }