示例#1
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                bool rpta = false;

                var lnComprometido = new LN.Comprometido();
                for (int i = 0; i < this.lstUiComprometidos.Count; i++)
                {
                    var uiComprometido = this.lstUiComprometidos[i];
                    if (uiComprometido.Id > 0)
                    {
                        rpta = lnComprometido.Actualizar(uiComprometido);
                    }
                    else
                    {
                        rpta = lnComprometido.Insertar(ref uiComprometido);
                        this.lstUiComprometidos[i].Id = uiComprometido.Id;
                    }
                }

                if (rpta)
                {
                    Util.InformationMessage("Se guardo los colaboradores comprometidos");
                    this.CargarListaComprometidos();
                }
            }
            catch (Exception ex)
            {
                Util.ErrorMessage(ex.Message);
            }
        }
        /// <summary>
        /// Bono que se da si cumple con las siguientes condiciones
        /// 1. Individual :
        /// 1.1. Tener maximo de 3 tardanzas por mes
        /// 1.2. Tener máximo de 1 falta por mes
        /// 1.3. Tener máximo de 5 observaciones por mes
        /// 1.4. Señalar que esta comprometido a través de tareas adicionales.
        /// </summary>
        /// <param name="codigoEmpleado">Codigo de Empleado o Candidato</param>
        /// <returns></returns>
        private bool BonoMetaIndividual(string codigoEmpleado)
        {
            try
            {
                bool bonoMetaIndividual = false;

                #region Meta Individual

                bool cumpleMetaIndividual = false;
                if (this.BonoDisciplina(codigoEmpleado) > 0.0)
                {
                    cumpleMetaIndividual = true;
                }

                bool cumpleMetaComprometido = false;
                var  lstUiComprometidos     = new LN.Comprometido().Listar(this.Anho, this.Mes, null, codigoEmpleado);
                foreach (BE.UI.Comprometido uiComprometido in lstUiComprometidos)
                {
                    if (uiComprometido.Estado == false)
                    {
                        cumpleMetaComprometido = false;
                        break;
                    }

                    cumpleMetaComprometido = uiComprometido.Estado;
                }
                #endregion

                if (cumpleMetaIndividual == true && cumpleMetaComprometido == true)
                {
                    bonoMetaIndividual = true;
                }

                return(bonoMetaIndividual);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }