private Cliente LoadClienteNodes(XmlNode clienteNode)
            {
                Cliente  result       = null;
                string   IdTessera    = null;
                DateTime dataScadenza = new DateTime();

                if (clienteNode.SelectSingleNode("IdTessera") != null)
                {
                    IdTessera    = clienteNode.SelectSingleNode("IdTessera").InnerText;
                    dataScadenza = Convert.ToDateTime(clienteNode.SelectSingleNode("ScadenzaTessera").InnerText);
                }

                string nome      = clienteNode.SelectSingleNode("Nome").InnerText;
                string cognome   = clienteNode.SelectSingleNode("Cognome").InnerText;
                string telefono  = clienteNode.SelectSingleNode("Telefono").InnerText;
                string indirizzo = clienteNode.SelectSingleNode("Indirizzo").InnerText;

                if (IdTessera != null)
                {
                    result = new ClienteRegistrato(nome, cognome, telefono, indirizzo, IdTessera, dataScadenza);
                }
                else
                {
                    result = new Cliente(nome, cognome, telefono, indirizzo);
                }


                return(result);
            }
示例#2
0
            private Cliente LoadClienteNodes(XmlNode clienteNode)
            {
                //NOTA BENE : Le prenotazioni Periodiche sono effettuabili solo da Clienti Registrati
                Cliente  result       = null;
                string   IdTessera    = null;
                DateTime dataScadenza = new DateTime();

                string nome      = clienteNode.SelectSingleNode("Nome").InnerText;
                string cognome   = clienteNode.SelectSingleNode("Cognome").InnerText;
                string telefono  = clienteNode.SelectSingleNode("Telefono").InnerText;
                string indirizzo = clienteNode.SelectSingleNode("Indirizzo").InnerText;

                if (clienteNode.SelectSingleNode("IdTessera") != null)
                {
                    IdTessera    = clienteNode.SelectSingleNode("IdTessera").InnerText;
                    dataScadenza = Convert.ToDateTime(clienteNode.SelectSingleNode("ScadenzaTessera").InnerText);
                    result       = new ClienteRegistrato(nome, cognome, telefono, indirizzo, IdTessera, dataScadenza);
                }
                else
                {
                    result = new Cliente(nome, cognome, telefono, indirizzo);
                }



                return(result);
            }
        private void SetValueClienteRegistratoModificaMode(ClienteRegistrato clienteRegistrato)
        {
            _selectedClienteRegistrato = clienteRegistrato;
            _comboBoxIdTessera.Text    = clienteRegistrato.IdTessera;

            _checkBoxClienteRegistrato.Checked = true;
        }
示例#4
0
        private void ShowConfirm(string operazione, ClienteRegistrato cliente)
        {
            DialogResult result = DialogResult.No;

            switch (operazione)
            {
            case "Aggiungi":
                result = MessageBox.Show("Confermare la registrazione?", "Conferma Registrazione", MessageBoxButtons.YesNo);
                if (result == DialogResult.Yes)
                {
                    CentroSaleProve.GetIstance().AggiungiCliente(cliente);
                    this.DataManager.SaveClienti();
                    MessageBox.Show("Cliente registrato con successo ");
                }

                break;

            case "Modifica":
                result = MessageBox.Show("Confermare la modifica?", "Modifica Cliente", MessageBoxButtons.YesNo);
                if (result == DialogResult.Yes)
                {
                    CentroSaleProve.GetIstance().ModificaClienteRegistrato(cliente);
                    this.DataManager.SaveClienti();
                    MessageBox.Show("Cliente moodificato con successo ");
                }
                break;
            }
        }
示例#5
0
        internal void UpdateListBoxDescrizioneClienti(string nomeCognomeCliente, ListBox _listBoxDettagliCliente)
        {
            _clienteSelected = _controllerCliente.FindClienteRegistratoByName(nomeCognomeCliente);

            _listBoxDettagliCliente.Items.Clear();
            _listBoxDettagliCliente.Items.Add("IdTessera: " + _clienteSelected.IdTessera);
            _listBoxDettagliCliente.Items.Add("Indirizzo: " + _clienteSelected.Indirizzo);
            _listBoxDettagliCliente.Items.Add("Telefono: " + _clienteSelected.Telefono);
            _listBoxDettagliCliente.Items.Add("Scadenza Tessera: " + _clienteSelected.ScadenzaTessera.ToShortDateString());
        }
示例#6
0
 public AggiungiGiornoView(string idPrenotazione, ClienteRegistrato selectedClienteRegistrato, Sala selectedSala, List <PrenotazioneSingola> prenotazioniSingole, MainController prenotazioneController)
 {
     // TODO: Complete member initialization
     InitializeComponent();
     this._selectedClienteRegistrato = selectedClienteRegistrato;
     this._selectedSala           = selectedSala;
     this._prenotazioniSingole    = prenotazioniSingole;
     this._prenotazioneController = prenotazioneController as PrenotazioneController;
     _idPrenotazione = idPrenotazione;
 }
示例#7
0
            public void SaveUpdateClienteRegistrato(ClienteRegistrato cliente)
            {
                ClienteRegistrato clientRegisterToSave = cliente;
                bool        trovato = false;
                XmlNodeList nodes   = _xmlDocument.SelectNodes("/Clienti/ClienteRegistrato");

                foreach (XmlNode node in nodes)
                {
                    string idTessera = node.SelectSingleNode("IdTessera").InnerText;



                    if (cliente.IdTessera.ToLower().Equals(idTessera.ToLower()))
                    {
                        node.SelectSingleNode("ScadenzaTessera").InnerText = clientRegisterToSave.ScadenzaTessera.ToString();
                        node.SelectSingleNode("Telefono").InnerText        = clientRegisterToSave.Telefono;
                        node.SelectSingleNode("Indirizzo").InnerText       = clientRegisterToSave.Indirizzo;

                        _xmlDocument.Save(_fileName);
                        trovato = true;
                        break;
                    }
                }

                if (!trovato)//Testato e funzionante...speriamo
                {
                    XmlElement clienteNode = _xmlDocument.CreateElement("ClienteRegistrato");

                    XmlElement tesseraElement   = _xmlDocument.CreateElement("IdTessera");
                    XmlElement scadenzaElement  = _xmlDocument.CreateElement("ScadenzaTessera");
                    XmlElement nomeElement      = _xmlDocument.CreateElement("Nome");
                    XmlElement cognomeElement   = _xmlDocument.CreateElement("Cognome");
                    XmlElement telefonoElement  = _xmlDocument.CreateElement("Telefono");
                    XmlElement indirizzoElement = _xmlDocument.CreateElement("Indirizzo");

                    tesseraElement.InnerText   = cliente.IdTessera;
                    scadenzaElement.InnerText  = cliente.ScadenzaTessera.ToString();
                    nomeElement.InnerText      = cliente.Nome;
                    cognomeElement.InnerText   = cliente.Cognome;
                    telefonoElement.InnerText  = cliente.Telefono;
                    indirizzoElement.InnerText = cliente.Indirizzo;

                    clienteNode.AppendChild(tesseraElement);
                    clienteNode.AppendChild(scadenzaElement);
                    clienteNode.AppendChild(nomeElement);
                    clienteNode.AppendChild(cognomeElement);
                    clienteNode.AppendChild(telefonoElement);
                    clienteNode.AppendChild(indirizzoElement);


                    _xmlDocument.DocumentElement.InsertAfter(clienteNode, _xmlDocument.DocumentElement.LastChild);
                }
                _xmlDocument.Save(_fileName);
            }
示例#8
0
        internal void EliminaClienteRegistrato(ClienteRegistrato clienteSelected)
        {
            DialogResult result = MessageBox.Show("Confermare l'eliminazione?", "Conferma Eliminazione", MessageBoxButtons.YesNo);

            if (result == DialogResult.Yes)
            {
                CentroSaleProve.GetIstance().RimuoviCliente(clienteSelected);
                this.DataManager.DeleteCliente(clienteSelected);
                MessageBox.Show("Cliente eliminato con successo ");
            }
        }
示例#9
0
            public void RemoveClienteRegistrato(ClienteRegistrato c)
            {
                var doc = XDocument.Load(_fileName);
                //qui faccio una query LINQ che mi estrae i nodi interessati
                var nodiDaRimuovere = from nodo in doc.Descendants("IdTessera") //seleziono i nodi chiamati "IdTessera"
                                      where nodo.Value == c.IdTessera           //ecco la clausola where in cui controllo il valore del nodo
                                      select nodo.Parent;                       //seleziono il genitore, cioè il cliente

                //rimuovo tutti i nodi trovati
                nodiDaRimuovere.Remove();
                doc.Save(_fileName);
            }
        private void LoadTextBoxCliente(ClienteRegistrato clienteRegistratoSelected)
        {
            _textBoxNomeCliente.Text      = clienteRegistratoSelected.Nome;
            _textBoxCognomeCliente.Text   = clienteRegistratoSelected.Cognome;
            _textBoxIndirizzoCliente.Text = clienteRegistratoSelected.Indirizzo;
            _textBoxTelefono.Text         = clienteRegistratoSelected.Telefono;


            _textBoxNomeCliente.Enabled      = false;
            _textBoxCognomeCliente.Enabled   = false;
            _textBoxIndirizzoCliente.Enabled = false;
            _textBoxTelefono.Enabled         = false;
        }
示例#11
0
 internal bool ModificaClienteRegistrato(ClienteRegistrato cliente)
 {
     if (FindClienteRegistratoByName(cliente.Nome + " " + cliente.Cognome) != null)
     {
         ShowConfirm("Modifica", cliente);
         return(true);
     }
     else
     {
         MessageBox.Show("Cliente con stesso nome e cognome già presente");
         return(false);
     }
 }
示例#12
0
 internal bool AggiungiClienteResitrato(ClienteRegistrato cliente)
 {
     if (FindClienteRegistratoByName(cliente.Nome.Trim() + " " + cliente.Cognome.Trim()) == null)
     {
         ShowConfirm("Aggiungi", cliente);
         return(true);
     }
     else
     {
         MessageBox.Show("Cliente con stesso nome e cognome già presente");
         return(false);
     }
 }
示例#13
0
        private void ModificaModeComponents()
        {
            ClienteRegistrato selectedCliente = _controllerCliente.FindClienteRegistratoByName(_selectedClienteString);

            _textBoxNome.Text      = selectedCliente.Nome;
            _textBoxCognome.Text   = selectedCliente.Cognome;
            _textBoxIndirizzo.Text = selectedCliente.Indirizzo;
            _textBoxTelefono.Text  = selectedCliente.Telefono;
            _dateTimePickerScadenzaTessera.Value = selectedCliente.ScadenzaTessera;
            _textBoxNumeroTessera.Text           = selectedCliente.IdTessera;

            _textBoxNome.Enabled    = false;
            _textBoxCognome.Enabled = false;
        }
示例#14
0
            public List <ClienteRegistrato> LoadClientiRegistrati()
            {
                List <ClienteRegistrato> clientiRegistrati = new List <ClienteRegistrato>();

                XmlNodeList nodes = _xmlDocument.DocumentElement.SelectNodes("/Clienti/ClienteRegistrato");

                foreach (XmlNode node in nodes)
                {
                    string            idTessera       = node.SelectSingleNode("IdTessera").InnerText;
                    DateTime          scadenzaTessera = DateTime.Parse(node.SelectSingleNode("ScadenzaTessera").InnerText);
                    string            nome            = node.SelectSingleNode("Nome").InnerText;
                    string            cognome         = node.SelectSingleNode("Cognome").InnerText;
                    string            telefono        = node.SelectSingleNode("Telefono").InnerText;
                    string            indirizzo       = node.SelectSingleNode("Indirizzo").InnerText;
                    ClienteRegistrato cliente         = new ClienteRegistrato(nome, cognome, telefono, indirizzo, idTessera, scadenzaTessera);

                    clientiRegistrati.Add(cliente);
                }
                return(clientiRegistrati);
            }
示例#15
0
        private void _buttonOK_Click(object sender, EventArgs e)
        {
            if (CheckParameters())
            {
                ClienteRegistrato cliente = new ClienteRegistrato(_textBoxNome.Text, _textBoxCognome.Text, _textBoxTelefono.Text, _textBoxIndirizzo.Text, _textBoxNumeroTessera.Text, _dateTimePickerScadenzaTessera.Value);
                switch (_operazione)
                {
                case "Aggiungi":
                    if (_controllerCliente.AggiungiClienteResitrato(cliente))
                    {
                        this.Close();
                    }
                    break;

                case "Modifica":
                    if (_controllerCliente.ModificaClienteRegistrato(cliente))
                    {
                        this.Close();
                    }
                    break;
                }
            }
        }
 private void _comboBoxIdTessera_SelectedIndexChanged(object sender, EventArgs e)
 {
     _selectedClienteRegistrato = _controllerPrenotazione.FindClienteRegistratoByIdTessera(_comboBoxIdTessera.SelectedItem.ToString());
     LoadTextBoxCliente(_selectedClienteRegistrato);
 }
示例#17
0
 public void DeleteCliente(ClienteRegistrato c)
 {
     _clientePersister.GetRemover("XML").RemoveClienteRegistrato(c);
 }
示例#18
0
 internal void ShowAggiungiGiornoView(string idPrenotazione, ClienteRegistrato selectedClienteRegistrato, Sala selectedSala, List <PrenotazioneSingola> prenotazioniSingole)
 {
     ShowView(new AggiungiGiornoView(idPrenotazione, selectedClienteRegistrato, selectedSala, prenotazioniSingole, this));
 }