Exemplo n.º 1
0
 /// <summary>
 /// Valida que un objeto cumpla con los filtros actuales
 /// </summary>
 /// <param name="scoreRuleConcept">Objeto a validar</param>
 /// <returns>Treu. si cumple | false. No cumple</returns>
 /// <history>
 /// [emoguel] created 23/04/2016
 /// </history>
 private bool ValidateFilter(ScoreRuleConcept scoreRuleConcept)
 {
     if (_nStatus != -1)//Filtro por estatus
     {
         if (scoreRuleConcept.spA != Convert.ToBoolean(_nStatus))
         {
             return(false);
         }
     }
     if (_scoreRuleConceptFilter.spID > 0)//Filtro por ID
     {
         if (scoreRuleConcept.spID != _scoreRuleConceptFilter.spID)
         {
             return(false);
         }
     }
     if (!string.IsNullOrWhiteSpace(_scoreRuleConceptFilter.spN))//Filtro por descripción
     {
         if (!scoreRuleConcept.spN.Contains(_scoreRuleConceptFilter.spN, StringComparison.OrdinalIgnoreCase))
         {
             return(false);
         }
     }
     return(true);
 }
Exemplo n.º 2
0
        /// <summary>
        /// Muestra la ventana detalle en modo edit
        /// </summary>
        /// <history>
        /// [emoguel] 22/04/2016 Created
        /// </history>
        private void Cell_DoubleClick(object sender, RoutedEventArgs e)
        {
            ScoreRuleConcept          scoreRuleConcept   = (ScoreRuleConcept)dgrScoreRulesConcepts.SelectedItem;
            frmScoreRuleConceptDetail frmScoRulConDetail = new frmScoreRuleConceptDetail();

            frmScoRulConDetail.Owner               = this;
            frmScoRulConDetail.enumMode            = EnumMode.Edit;
            frmScoRulConDetail.oldScoreRuleConcept = scoreRuleConcept;
            if (frmScoRulConDetail.ShowDialog() == true)
            {
                int nIndex = 0;
                List <ScoreRuleConcept> lstScoreRulesConcepts = (List <ScoreRuleConcept>)dgrScoreRulesConcepts.ItemsSource;
                if (ValidateFilter(frmScoRulConDetail.scoreRuleConcept))                                //Validamos si cumple con los filtros actuales
                {
                    ObjectHelper.CopyProperties(scoreRuleConcept, frmScoRulConDetail.scoreRuleConcept); //Actualizamos los datos
                    lstScoreRulesConcepts.Sort((x, y) => string.Compare(x.spN, y.spN));                 //Ordenamos la lista
                    nIndex = lstScoreRulesConcepts.IndexOf(scoreRuleConcept);                           //Buscamos la posición del registro
                }
                else
                {
                    lstScoreRulesConcepts.Remove(scoreRuleConcept);                            //Quitamos el registro
                }
                dgrScoreRulesConcepts.Items.Refresh();                                         //Actualizamos la vista
                GridHelper.SelectRow(dgrScoreRulesConcepts, nIndex);                           //Seleccionamos el registro
                StatusBarReg.Content = lstScoreRulesConcepts.Count + " Score Rules Concepts."; //Actualizamos el contador
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Abre la ventana detalle en modo add
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        /// <history>
        /// [emoguel] created 23/04/2016
        /// </history>
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            frmScoreRuleConceptDetail frmScoRulConDetail = new frmScoreRuleConceptDetail();

            frmScoRulConDetail.Owner    = this;
            frmScoRulConDetail.enumMode = EnumMode.Add;
            if (frmScoRulConDetail.ShowDialog() == true)
            {
                ScoreRuleConcept scoreRuleConcept = frmScoRulConDetail.scoreRuleConcept;
                if (ValidateFilter(scoreRuleConcept))//Validamos si cumple con los filtros actuales
                {
                    List <ScoreRuleConcept> lstScoreRulesConcepts = (List <ScoreRuleConcept>)dgrScoreRulesConcepts.ItemsSource;
                    lstScoreRulesConcepts.Add(scoreRuleConcept);                                   //Agregamos el registro
                    lstScoreRulesConcepts.Sort((x, y) => string.Compare(x.spN, y.spN));            //Ordenamos la lista
                    int nIndex = lstScoreRulesConcepts.IndexOf(scoreRuleConcept);                  //Buscamos la posición del registro
                    dgrScoreRulesConcepts.Items.Refresh();                                         //Actualizamos la vista
                    GridHelper.SelectRow(dgrScoreRulesConcepts, nIndex);                           //Seleccionamos el registro
                    StatusBarReg.Content = lstScoreRulesConcepts.Count + " Score Rules Concepts."; //Actualizamos el contador
                }
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Llena el grid de score rules concepts
        /// </summary>
        /// <param name="scoreRuleConcept">Objeto a seleccionar</param>
        /// <history>
        /// [emoguel] created 23/04/2016
        /// </history>
        private async void LoadScoreRulesConcepts(ScoreRuleConcept scoreRuleConcept = null)
        {
            try
            {
                status.Visibility = Visibility.Visible;
                int nIndex = 0;
                List <ScoreRuleConcept> lstScoreRulesConcepts = await BRScoreRulesConcepts.GetScoreRulesConcepts(_nStatus, _scoreRuleConceptFilter);

                dgrScoreRulesConcepts.ItemsSource = lstScoreRulesConcepts;
                if (lstScoreRulesConcepts.Count > 0 && scoreRuleConcept != null)
                {
                    scoreRuleConcept = lstScoreRulesConcepts.Where(sp => sp.spID == scoreRuleConcept.spID).FirstOrDefault();
                    nIndex           = lstScoreRulesConcepts.IndexOf(scoreRuleConcept);
                }

                GridHelper.SelectRow(dgrScoreRulesConcepts, nIndex);
                StatusBarReg.Content = lstScoreRulesConcepts.Count + " Score Rules Concepts.";
                status.Visibility    = Visibility.Collapsed;
            }
            catch (Exception ex)
            {
                UIHelper.ShowMessage(ex);
            }
        }
Exemplo n.º 5
0
        /// <summary>
        /// Recarga el grid
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param><
        /// <history>
        /// [emoguel] created 23/04/2016
        /// </history>
        private void btnRef_Click(object sender, RoutedEventArgs e)
        {
            ScoreRuleConcept scoreRuleConcept = (ScoreRuleConcept)dgrScoreRulesConcepts.SelectedItem;

            LoadScoreRulesConcepts(scoreRuleConcept);
        }
Exemplo n.º 6
0
        /// <summary>
        /// Obtiene registros del catalogo ScoresRulesConcepts
        /// </summary>
        /// <param name="nStatus">-1. Todos | 0. Inactivos | 1. Activos</param>
        /// <param name="scoreRuleConcept">Objeto con filtros adicionales</param>
        /// <returns>Lista de tipo ScoreRuleConcept</returns>
        /// <history>
        /// [emoguel] created 22/04/2016
        /// [emoguel] modified 26/05/2016 se volvió asincrono
        /// </history>
        public async static Task <List <ScoreRuleConcept> > GetScoreRulesConcepts(int nStatus = -1, ScoreRuleConcept scoreRuleConcept = null)
        {
            List <ScoreRuleConcept> lstScoreRuleConcept = new List <ScoreRuleConcept>();
            await Task.Run(() =>
            {
                using (var dbContext = new IMEntities(ConnectionHelper.ConnectionString()))
                {
                    var query = from sp in dbContext.ScoreRulesConcepts
                                select sp;
                    if (nStatus != -1)//Filtro por Status
                    {
                        bool blnStatus = Convert.ToBoolean(nStatus);
                        query          = query.Where(sp => sp.spA == blnStatus);
                    }
                    if (scoreRuleConcept != null)
                    {
                        if (scoreRuleConcept.spID > 0)//Filtro por ID
                        {
                            query = query.Where(sp => sp.spID == scoreRuleConcept.spID);
                        }

                        if (!string.IsNullOrWhiteSpace(scoreRuleConcept.spN))//Filtro por descripción
                        {
                            query = query.Where(sp => sp.spN.Contains(scoreRuleConcept.spN));
                        }
                    }
                    lstScoreRuleConcept = query.OrderBy(sp => sp.spN).ToList();
                }
            });

            return(lstScoreRuleConcept);
        }