예제 #1
0
        /// <summary>
        ///  Devuelve los datos de todos los puesto y colaboradores.
        /// </summary>
        /// <param name="competencia_tipo_id">id tipo competencia a consultar </param>
        /// <param name="puesto_id">id puesto a consultar</param>
        /// <returns> List de BE_EVALUACION_COMPETENCIA_PUESTO con los objetos de la entidad, que a su vez representan la tabla EVALUACION COMPETENCIA PUESTO de la base de datos.En caso no existan datos devuelve nothing </returns>
        ///
        public List <BE_EVALUACION_COMPETENCIA_PUESTO> SeleccionarEvaluaciones(Guid puesto_id, Guid competencia_tipo_id)
        {
            wsMaestros.BE_PERSONAL[]                oListaPersonalPorPuesto     = null;
            List <BE_COMPETENCIAS_POR_PUESTO>       oListaCompPorPuesto         = new List <BE_COMPETENCIAS_POR_PUESTO>();
            List <BE_EVALUACION_COMPETENCIA_PUESTO> oListaEvaluacionesPorPuesto = new List <BE_EVALUACION_COMPETENCIA_PUESTO>();

            oListaPersonalPorPuesto = wsMantenimientoEstructuras.SeleccionarPersonalPorPuesto(puesto_id);

            if (oListaPersonalPorPuesto != null)
            {
                foreach (var item in oListaPersonalPorPuesto)
                {
                    BE_EVALUACION_COMPETENCIA_PUESTO BE_EVALUACION_COMPETENCIA_PUESTO = new BE_EVALUACION_COMPETENCIA_PUESTO();
                    BE_EVALUACION_COMPETENCIA_PUESTO.PERSONAL_DESCRIPCION = item.NOMBRES_COMPLETOS;
                    BE_EVALUACION_COMPETENCIA_PUESTO.PERSONAL_ID          = item.ID;

                    oListaCompPorPuesto = BL_COMPETENCIAS_POR_PUESTO.SeleccionarCompetenciasPorPuestoyTipo(puesto_id, competencia_tipo_id, item.ID);
                    if (oListaCompPorPuesto != null)
                    {
                        foreach (var competencia in oListaCompPorPuesto)
                        {
                            BE_EVALUACION_COMPETENCIA_PUESTO oBE_EVALUACION_COMPETENCIA_POR_PUESTO = new BE_EVALUACION_COMPETENCIA_PUESTO();
                            oBE_EVALUACION_COMPETENCIA_POR_PUESTO.COMPETENCIA_DESCRIPCION = competencia.COMPETENCIA_DESCRIPCION;
                            oBE_EVALUACION_COMPETENCIA_POR_PUESTO.VALOR_REAL           = competencia.REAL;
                            oBE_EVALUACION_COMPETENCIA_POR_PUESTO.BRECHA               = competencia.BRECHA;
                            oBE_EVALUACION_COMPETENCIA_POR_PUESTO.PERSONAL_DESCRIPCION = item.NOMBRES_COMPLETOS;
                            oBE_EVALUACION_COMPETENCIA_POR_PUESTO.VALOR_REQUERIDO      = competencia.COMPETENCIA_PUESTO_VALOR_REQUERIDO;

                            oListaEvaluacionesPorPuesto.Add(oBE_EVALUACION_COMPETENCIA_POR_PUESTO);
                        }
                    }
                }
            }

            return(oListaEvaluacionesPorPuesto);
        }
예제 #2
0
        protected void btnGrabar_Click(object sender, EventArgs e)
        {
            if (rgImportarCompetencias.Items.Count > 0)
            {
                try
                {
                    System.Threading.Thread.Sleep(2000);
                    rgImportarCompetencias.AllowPaging = false;
                    rgImportarCompetencias.Rebind();
                    string msjerror = "los siguientes códigos de usuarios no han sido registrados: ";
                    BL_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL BL_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL = new BL_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL();


                    foreach (GridDataItem item in rgImportarCompetencias.MasterTableView.Items)
                    {
                        BE_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL OBE_COMPE_PUESTO_PERSONAL = new BE_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL();
                        BL_COMPETENCIA             BL_COMPETENCIA             = new BL_COMPETENCIA();
                        BL_COMPETENCIAS_POR_PUESTO BL_COMPETENCIAS_POR_PUESTO = new BusinessLogicLayer.BL_COMPETENCIAS_POR_PUESTO();
                        BE_PERSONAL OBE_PERSONAL    = new BE_PERSONAL();
                        string      Codigo          = item["cod_trabajador"].Text;
                        string      Codigo_personal = Codigo;
                        OBE_PERSONAL = BL_COMPETENCIA.SeleccionarPersonalporCodigo(Codigo_personal);
                        OBE_COMPE_PUESTO_PERSONAL.PUESTO_ID   = OBE_PERSONAL.PUESTO_ID;
                        OBE_COMPE_PUESTO_PERSONAL.PERSONAL_ID = OBE_PERSONAL.ID;
                        string Codigo_competencia = item["cod_competencia"].Text;

                        OBE_COMPE_PUESTO_PERSONAL.COMPETENCIA_ID = Guid.Parse(BL_COMPETENCIA.seleccionarporCodigo(Codigo_competencia));
                        OBE_COMPE_PUESTO_PERSONAL.COMPETENCIA_PUESTO_VALOR_REQUERIDO = Convert.ToInt32((BL_COMPETENCIAS_POR_PUESTO.SeleccionarValorRequerido(OBE_COMPE_PUESTO_PERSONAL)));
                        OBE_COMPE_PUESTO_PERSONAL.REAL             = int.Parse(item["evaluacion"].Text);
                        OBE_COMPE_PUESTO_PERSONAL.BRECHA           = OBE_COMPE_PUESTO_PERSONAL.COMPETENCIA_PUESTO_VALOR_REQUERIDO - OBE_COMPE_PUESTO_PERSONAL.REAL;
                        OBE_COMPE_PUESTO_PERSONAL.COMENTARIO       = item["comentario"].Text;
                        OBE_COMPE_PUESTO_PERSONAL.USUARIO_CREACION = USUARIO;
                        OBE_COMPE_PUESTO_PERSONAL.ANIO_EVALUACION  = DateTime.Now.Year;

                        if (OBE_COMPE_PUESTO_PERSONAL.BRECHA < 0)
                        {
                            OBE_COMPE_PUESTO_PERSONAL.BRECHA = 0;
                        }

                        bool Existe_Competencia = BL_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL.ExisteEvaluacionCompetenciasPuestoPersonal(OBE_COMPE_PUESTO_PERSONAL);
                        if (Existe_Competencia == true)
                        {
                            OBE_COMPE_PUESTO_PERSONAL.ESTADO_EVALUACION = (int)BE_EVALUACION_COMPETENCIA_PUESTO.ESTADO_EVALUACION.En_Evaluacion;
                            BL_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL.ActualizarEvaluacionCompetenciasPuestosPersonal(OBE_COMPE_PUESTO_PERSONAL);
                        }
                        else
                        if (OBE_COMPE_PUESTO_PERSONAL.PERSONAL_ID != Guid.Empty)
                        {
                            BL_EVALUACIONES_COMPETENCIAS_PUESTOS_PERSONAL.InsertarEvaluacionCompetenciasPuestosPersonal(OBE_COMPE_PUESTO_PERSONAL);
                        }

                        else
                        {
                            if (msjerror.Contains(Codigo_personal) == false)
                            {
                                msjerror += Codigo_personal + " - ";
                            }

                            lblMensajeCompetencia.Text = msjerror;
                        }
                    }

                    if (lblMensajeCompetencia.Text != String.Empty)
                    {
                        lblRegistro.Text = "Las evaluaciones fueron importadas con éxito, sin embargo " + lblMensajeCompetencia.Text;
                    }
                    else
                    {
                        lblRegistro.Text = "Las evaluaciones fueron importadas con éxito";
                    }

                    lblMensajeCompetencia.Text = String.Empty;

                    rgImportarCompetencias.AllowPaging = true;
                    rgImportarCompetencias.Rebind();
                }
                catch (Exception ex)
                {
                    lblMensajeCompetencia.Text = "Error al Importar Evaluaciones: " + ex.ToString();
                }
            }
            else
            {
                lblRegistro.Text = "Datos Incompletos no a Cargado el archivo a Importar";
            }
        }