private void btnSalva_Click(object sender, RoutedEventArgs e)
        {
            string listaClienti             = "";
            string listaClientiDisassociati = "";

            foreach (var data in GridClienti.Items)
            {
                ClientePerGriglia cliente = data as ClientePerGriglia;
                if (cliente.AssociatoLeader && cliente.AssociatoValue != 2)
                {
                    if (!string.IsNullOrEmpty(listaClienti))
                    {
                        listaClienti += ",";
                    }
                    listaClienti += cliente.ID;
                }
                if (!cliente.AssociatoLeader && cliente.AssociatoValue == 1)
                {
                    // il cliente non è più associato al leader (AssociatoLeade = false) ma era associato al leader (AssociatoValue = 1)
                    if (!string.IsNullOrEmpty(listaClientiDisassociati))
                    {
                        listaClientiDisassociati += ",";
                    }
                    listaClientiDisassociati += cliente.ID;
                }
            }

            cUtenti.UpsertClientiPerUtente(_teamList[cmbTeamLeader.SelectedIndex].Id, listaClienti, listaClientiDisassociati);

            MessageBox.Show("Salvataggio avvenuto con successo", "Salvataggio dati", MessageBoxButton.OK, MessageBoxImage.Information);
        }
        private void GridClienti_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
        {
            var grid = sender as DataGrid;

            if (e != null && e.AddedCells != null && e.AddedCells.Count > 0 && e.AddedCells[0] != null && e.AddedCells[6] != null && e.AddedCells[6].Item != null)
            {
                ClientePerGriglia item = (ClientePerGriglia)e.AddedCells[6].Item;
                if (item.AssociatoValue == 2)
                {
                    e.AddedCells[0].Column.IsReadOnly = true;
                }
                else
                {
                    e.AddedCells[0].Column.IsReadOnly = false;
                }
            }
        }
Beispiel #3
0
        private void GridClienti_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
        {
            var grid = sender as DataGrid;

            if (e != null && e.AddedCells != null && e.AddedCells.Count > 0 && e.AddedCells[0] != null && e.AddedCells[6] != null && e.AddedCells[6].Item != null)
            {
                ClientePerGriglia item = (ClientePerGriglia)e.AddedCells[6].Item;
                if (item.AssociatoValue == 2 || item.AssociatoValue == 3)
                {
                    e.AddedCells[0].Column.IsReadOnly = true;
                }
                else
                {
                    e.AddedCells[0].Column.IsReadOnly = false;
                    //if (grid.CurrentCell.Column.Header.ToString() == "")
                    //{
                    //	// click sulla colonna check
                    //	((ClientePerGriglia)e.AddedCells[0].Item).AssociatoValue = 1;
                    //	((ClientePerGriglia)e.AddedCells[0].Item).AssociatoLeader = false;

                    //}
                }
            }
        }
Beispiel #4
0
        private void buttonSalva_Click(object sender, RoutedEventArgs e)
        {
            // si salvano i dati sul database
            try
            {
                if (string.IsNullOrEmpty(txtUtente.Text) || string.IsNullOrEmpty(txtPassword.Text))
                {
                    MessageBox.Show("E' necessario inserire il valore dell'utente e la password", "Errore dati", MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }

                int idUtenteDB = cUtenti.GetUtente(txtUtente.Text);
                if (idUtenteDB != -1 && idUtenteDB != _utente.Id)
                {
                    MessageBox.Show("Nel sistema è già presente un utente con questo identificativo, si prega di modficare il valore utente", "Errore dati", MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }

                if (_utente.RuoId != _utente_old.RuoId && (_utente_old.RuoId == (int)App.RuoloDesc.RevisoreAutonomo || _utente_old.RuoId == (int)App.RuoloDesc.TeamLeader && _utente.RuoId != _utente_old.RuoId))
                {
                    if (MessageBox.Show("La modifica del ruolo comporta la perdita delle eventuali associazioni, continuare?", "Modifica ruolo", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No)
                    {
                        return;
                    }
                }
                string listaClienti             = "";
                string listaClientiDisassociati = "";
                switch (_utente.RuoId)
                {
                case (int)App.RuoloDesc.Reviewer:
                case (int)App.RuoloDesc.Esecutore:
                    // se l'utente ha ruolo Revisore o Esecutore l'amministratore non può modificare il ruolo
                    cUtenti.UpdateUtente(_utente);
                    break;

                case (int)App.RuoloDesc.RevisoreAutonomo:

                    foreach (var data in GridClienti.Items)
                    {
                        ClientePerGriglia cliente = data as ClientePerGriglia;
                        // associazioni con l'utente selezionate nella griglia
                        if (cliente.AssociatoLeader && cliente.AssociatoValue != 2 && cliente.AssociatoValue != 3)
                        {
                            if (!string.IsNullOrEmpty(listaClienti))
                            {
                                listaClienti += ",";
                            }
                            listaClienti += cliente.ID;
                        }
                        if (!cliente.AssociatoLeader && cliente.AssociatoValue == 1)
                        {
                            // il cliente non è più associato all'utente (AssociatoLeade = false) ma lo era prima (AssociatoValue = 1)
                            if (!string.IsNullOrEmpty(listaClientiDisassociati))
                            {
                                listaClientiDisassociati += ",";
                            }
                            listaClientiDisassociati += cliente.ID;
                        }
                    }
                    cUtenti.UpsertUtente(_utente, listaClienti, listaClientiDisassociati);
                    break;

                default:
                    cUtenti.UpsertUtente(_utente, listaClienti, listaClientiDisassociati);
                    break;
                }
                // se l'utente ha ruolo Revisore o Esecutore l'amministratore non può modificare il ruolo
                //if (_utente.RuoId == (int)App.RuoloDesc.Reviewer || _utente.RuoId == (int)App.RuoloDesc.Esecutore)
                //	cUtenti.UpdateUtente(_utente);
                //else
                //cUtenti.UpsertUtente(_utente);
            }
            catch (Exception ex)
            {
                cBusinessObjects.logger.Error(ex, "wUpsertUtenti.buttonSalva_Click exception");
                App.GestioneLog(ex.Message);
            }

            base.Close();
        }