Exemplo n.º 1
0
        public static int GetImporto(string categoria, string importo)
        {
            int i = Convert.ToInt32(importo);

            ICategory c = null;

            if (categoria.Equals("Alloggio"))
            {
                c = new Alloggio();
                return(c.Rimborso(i));
            }
            else if (categoria.Equals("Viaggio"))
            {
                c = new Viaggio();
                return(c.Rimborso(i));
            }
            else if (categoria.Equals("Vitto"))
            {
                c = new Vitto();
                return(c.Rimborso(i));
            }
            else
            {
                c = new Altro();
                return(c.Rimborso(i));
            }
            return(0);
        }
Exemplo n.º 2
0
        private async Task CheckForInProgressViaggi()
        {
            Viaggio viOld = await dbMan.cmDB.Table <Viaggio>().Where(x => x.FKIDDipendente == Settings.Instance.DipendenteInfo.IDDipendente && x.FKIDStato == 2).FirstOrDefaultAsync();

            if (viOld != null)
            {
                MessageDialog md = new MessageDialog(String.Format("Il viaggio '{0}' risulta essere ancora 'in corso'. Riprenderne l'esecuzione o segnarlo come terminato ed iniziare il successivo?", viOld.DescrizioneViaggio), "Attenzione");
                md.Commands.Add(new UICommand()
                {
                    Id    = "RIP",
                    Label = "Riprendi",
                });
                md.Commands.Add(new UICommand()
                {
                    Id    = "END",
                    Label = "Termina",
                });
                if ((await md.ShowAsync()).Id.ToString() == "RIP")
                {
                    Settings.Instance.SelectedViaggio = viOld;
                }
                else
                {
                    viOld.FKIDStato = 4;
                    await dbMan.cmDB.UpdateAsync(viOld);
                }
            }
        }
Exemplo n.º 3
0
        public static ICategoria FactoryCategoria(string param)
        {
            ICategoria categoria = null;

            if (param.Equals("Viaggio"))
            {
                categoria = new Viaggio();
            }
            else if (param.Equals("Alloggio"))
            {
                categoria = new Alloggio();
            }
            else if (param.Equals("Vitto"))
            {
                categoria = new Vitto();
            }
            else if (param.Equals("Altro"))
            {
                categoria = new Altro();
            }
            else
            {
                return(categoria);
            }

            return(categoria);
        }
        public static ICategoria CreateSpesa(string categoria)
        {
            CategoriaSpesa spesa = null;

            if (categoria == "Viaggio")
            {
                spesa = new Viaggio();
            }
            else if (categoria == "Alloggio")
            {
                spesa = new Alloggio();
            }
            else if (categoria == "Vitto")
            {
                spesa = new Vitto();
            }
            else if (categoria == "Altro")
            {
                spesa = new Altro();
            }
            else
            {
                Console.WriteLine("Incorrect information");
            }

            return(spesa);
        }
Exemplo n.º 5
0
 public Pacco(int idPacco, Viaggio viaggio, Cliente mittente, Cliente destinatario, int volume)
 {
     this.idPacco      = idPacco;
     this.viaggio      = viaggio;
     this.mittente     = mittente;
     this.destinatario = destinatario;
     this.volume       = volume;
 }
Exemplo n.º 6
0
 public ActionResult Save(Viaggio model)
 {
     if (ModelState.IsValid)
     {
         vr.Save(model);
         return(RedirectToAction("ListMine", new { id = model.Agenzia.Id }));
     }
     return(View("Edit", model));
 }
Exemplo n.º 7
0
        public Viaggio CreaNuovoViaggio()
        {
            var viaggio = new Viaggio()
            {
                DataPartenza             = DateTime.Today.AddDays(1),
                DataChiusuraPrenotazioni = DateTime.Today
            };

            return(viaggio);
        }
Exemplo n.º 8
0
 public ViaggioDTO Update(ViaggioDTO DTO)
 {
   using (CaronteContext caronteCtx = new CaronteContext())
   {
     Viaggio tmpAna = caronteCtx.Viaggio.Find(DTO.IDViaggio);
     DTO.ToEntity(tmpAna);
     caronteCtx.SaveChanges();
     return this.Get(tmpAna.IDViaggio);
   }
 }
Exemplo n.º 9
0
 public ViaggioDTO New(ViaggioDTO DTO)
 {
   using (CaronteContext caronteCtx = new CaronteContext())
   {
     Viaggio tmp = DTO.ToEntity();
     caronteCtx.Viaggio.Add(tmp);
     caronteCtx.SaveChanges();
     return this.Get(tmp.IDViaggio);
   }
 }
Exemplo n.º 10
0
 public static void ToggleViaggio(Flyer flyer, Viaggio viaggio)
 {
     if (flyer.Viaggi.Any(v => v.Id == viaggio.Id))
     {
         flyer.Viaggi.Remove(viaggio);
     }
     else
     {
         flyer.Viaggi.Add(viaggio);
     }
 }
Exemplo n.º 11
0
        private int CalcolaOrdinamentoPerNuovaTappa(Viaggio viaggio)
        {
            var tappe = viaggio.Tappe.Where(t => t.Tipo != TipoTappa.DESTINAZIONE);

            if (tappe != null && tappe.Count() > 0)
            {
                int result = tappe.Max(t => t.Ordinamento) + 1;
                return(result);
            }
            else
            {
                return(1);
            }
        }
Exemplo n.º 12
0
        public ActionResult Create(int id)
        {
            var ar     = new AgenziaRepository();
            var agency = ar.GetById(id);
            var model  = new Viaggio
            {
                Agenzia     = agency,
                Nome        = string.Format("Nuovo Viaggio {0}", vr.GetListaViaggiByAgenzia(agency).Count + 1),
                Descrizione = string.Format("Nuovo Viaggio di {0}", agency.Nome),
                Approvato   = false,
            };

            vr.Save(model);
            return(RedirectToAction("Edit", new { id = model.Id }));
        }
Exemplo n.º 13
0
        public async void ViaggioSelected(object cosa, SelectionChangedEventArgs manda)
        {
            if (manda.AddedItems.Count == 1)
            {
                Viaggio selViaggio = manda.AddedItems[0] as Viaggio;
                elencoPartecipanti = await dbMan.cmDB.Table <Partecipante>().Where(p => p.FKIDViaggio == selViaggio.IDViaggio).ToListAsync();

                SelectedViaggio = selViaggio;
                eventAggregator.PublishOnUIThread(SelectedViaggio);
            }
            else
            {
                SelectedViaggio    = null;
                elencoPartecipanti = new List <Partecipante>();
            }
        }
Exemplo n.º 14
0
        private string GetMailText(Viaggio viaggio)
        {
            var builder = new StringBuilder();
            var title   = string.Format("Iniziativa: {0}, proposta da: {1}", viaggio.Nome, viaggio.Agenzia.Nome);

            builder.AppendLine(title);
            var details = string.Format("{0}", viaggio.Descrizione);

            builder.AppendLine(details);
            var tappe = string.Format("Partenza il: {0}", viaggio.DataPartenza);

            builder.AppendLine(tappe);
            var link = string.Format("Per dettagli: http://www.xlns.it/Viaggio/Details/{0}", viaggio.Id);

            builder.AppendLine(link);
            return(builder.ToString());
        }
Exemplo n.º 15
0
        public int CalcolaOrdinamentoPerNuovaTappa(Viaggio viaggio)
        {
            logger.Debug("Calcolo ordiamento nuova tappa per viaggio {0}", viaggio.Id);
            var tappe = viaggio.Tappe.Where(t => t.Tipo != TipoTappa.DESTINAZIONE);

            if (tappe != null && tappe.Count() > 0)
            {
                int result = tappe.Max(t => t.Ordinamento) + 1;
                logger.Debug("Tappe precedenti trovate, ordinamento nuova tappa = {0}", result);
                return(result);
            }
            else
            {
                logger.Debug("Nessuna tappa trovata, ordinamento nuova tappa = 1");
                return(1);
            }
        }
Exemplo n.º 16
0
        public static IRimborso Rimborso(string category)
        {
            IRimborso rimborso = new Altro();

            if (category == "Viaggio")
            {
                rimborso = new Viaggio();
            }
            else if (category == "Vitto")
            {
                rimborso = new Vitto();
            }
            else if (category == "Alloggio")
            {
                rimborso = new Alloggio();
            }
            return(rimborso);
        }
Exemplo n.º 17
0
        protected override async void OnViewAttached(object view, object context)
        {
            base.OnViewAttached(view, context);
            ViaggioInCorso = Settings.Instance.SelectedViaggio;
            if (viaggioInCorso.FKIDStato != 2)
            {
                viaggioInCorso.NeedsSending = true;
            }
            viaggioInCorso.FKIDStato = 2;

            await dbMan.cmDB.UpdateAsync(viaggioInCorso);

            await ReloadListaPartecipanti();

            geoLoc.MovementThreshold = 5;
            geoLoc.PositionChanged  += geoLoc_PositionChanged;

            bufferTimer.Interval = TimeSpan.FromSeconds(Settings.Instance.MaxBufferSeconds);
            bufferTimer.Tick    += bufferTimer_Tick;
            bufferTimer.Start();
        }
Exemplo n.º 18
0
        public async void StartViaggio()
        {
            await CheckForInProgressViaggi();

            if (Settings.Instance.SelectedViaggio == null)
            {
                List <Viaggio> viaggiUtente = await dbMan.cmDB.Table <Viaggio>().Where(x => x.FKIDDipendente == Settings.Instance.DipendenteInfo.IDDipendente && x.FKIDStato == 1).ToListAsync();

                Viaggio primo = viaggiUtente.OrderByDescending(x => DateTime.Now - x.DataInizioPrevista).FirstOrDefault();

                if (primo != null)
                {
                    Settings.Instance.SelectedViaggio = primo;
                }
            }
            if (Settings.Instance.SelectedViaggio != null)
            {
                navigationService.NavigateToViewModel <TravelingPageViewModel>();
            }
            else
            {
                await new MessageDialog(String.Format("Nessun viaggio presente per l'utente corrente ({0}).", Settings.Instance.DipendenteInfo.NOMINATIVO), "Nessun viaggio trovato").ShowAsync();
            }
        }
Exemplo n.º 19
0
        public List <PosizioneDTO> GetByViaggio(int IDViaggio)
        {
            using (CaronteContext caronteCtx = new CaronteContext())
            {
                Dictionary <string, object> toRet   = new Dictionary <string, object>();
                IQueryable <PosizioneDTO>   posList = GetAllIQ(caronteCtx).OrderBy(x => x.Data);
                posList = posList.Where(x => x.FKIDViaggio == IDViaggio);


                if (posList.Count() == 0)
                {
                    Viaggio vg = caronteCtx.Viaggio.FirstOrDefault(x => x.IDViaggio == IDViaggio);
                    if (vg != null)
                    {
                        return new List <PosizioneDTO>()
                               {
                                   new PosizioneDTO()
                                   {
                                       Data        = DateTime.Now,
                                       FKIDViaggio = IDViaggio,
                                       IDPosizione = 0,
                                       Latitudine  = vg.LatitudinePartenzaPrevista,
                                       Longitudine = vg.LongitudinePartenzaPrevista,
                                       Precisione  = 1
                                   }
                               }
                    }
                    ;
                    else
                    {
                        return(new List <PosizioneDTO>());
                    }
                }
                return(posList.ToList());
            }
        }
Exemplo n.º 20
0
        private async Task <bool> DownloadUserData()
        {
            bool toRet = false;


            LoadingMessage = "Caricamento dei dati relativi al dipendente";
            await Task.Delay(TimeSpan.FromSeconds(1));

            Settings.Instance.DipendenteInfo   = Dipendente.ToEntity(await dipAPI.GetDipendenteByUsername(Settings.Instance.Username));
            Settings.Instance.AnagraficaUtente = Anagrafica.ToEntity(await anaAPI.GetAnagrafica(Settings.Instance.DipendenteInfo.FKIDAnagrafica.Value));

            LoadingMessage = "Caricamento dei viaggi pianificati";
            await Task.Delay(TimeSpan.FromSeconds(1));

            var viaggi = await viaAPI.GetViaggiByAutista(Settings.Instance.DipendenteInfo.IDDipendente);

            List <PartecipanteDTO> totParts = new List <PartecipanteDTO>();

            foreach (ViaggioDTO viaggio in viaggi)
            {
                LoadingMessage = String.Format("Caricamento dei dati passeggeri per il viaggio:\n{0}", viaggio.DescrizioneViaggio);
                totParts.AddRange(await parAPI.GetPartecipantiViaggio(viaggio.IDViaggio));
                await Task.Delay(TimeSpan.FromSeconds(1));
            }

            LoadingMessage = "Salvataggio dei dati in corso";

            if (await dbMan.cmDB.Table <Dipendente>().Where(d => d.IDDipendente == Settings.Instance.DipendenteInfo.IDDipendente).CountAsync() > 0)
            {
                await dbMan.cmDB.UpdateAsync(Settings.Instance.DipendenteInfo);
            }
            else
            {
                await dbMan.cmDB.InsertAsync(Settings.Instance.DipendenteInfo);
            }


            if (await dbMan.cmDB.Table <Anagrafica>().Where(a => a.IDAnagrafica == Settings.Instance.AnagraficaUtente.IDAnagrafica).CountAsync() > 0)
            {
                await dbMan.cmDB.UpdateAsync(Settings.Instance.AnagraficaUtente);
            }
            else
            {
                await dbMan.cmDB.InsertAsync(Settings.Instance.AnagraficaUtente);
            }

            List <int> idNuoviViaggi = viaggi.Select(v => v.IDViaggio).ToList();

            List <Viaggio> viaggiPresenti = await dbMan.cmDB.Table <Viaggio>().Where(v => idNuoviViaggi.Contains(v.IDViaggio)).ToListAsync();

            List <int> idViaggiEditabili = viaggiPresenti.Where(x => x.FKIDStato == 1).Select(x => x.IDViaggio).ToList();
            List <int> idViaggiNonEdit   = viaggiPresenti.Select(x => x.IDViaggio).Except(idViaggiEditabili).ToList();

            foreach (Viaggio viag in viaggi.Select(v => Viaggio.ToEntity(v)).ToList())
            {
                if (!idViaggiNonEdit.Contains(viag.IDViaggio))
                {
                    if (idViaggiEditabili.Contains(viag.IDViaggio))
                    {
                        await dbMan.cmDB.UpdateAsync(viag);
                    }
                    else
                    {
                        await dbMan.cmDB.InsertAsync(viag);
                    }
                }
            }


            List <Partecipante> partecipantiPresenti = await dbMan.cmDB.Table <Partecipante>().ToListAsync();

            List <int> idPassEdit = partecipantiPresenti.Where(p => idViaggiEditabili.Contains(p.FKIDViaggio.Value))
                                    .Select(x => x.IDSpostamento).ToList();
            List <int> idPassNonEdit = partecipantiPresenti.Where(p => idViaggiNonEdit.Contains(p.FKIDViaggio.Value))
                                       .Select(x => x.IDSpostamento).ToList();


            foreach (Partecipante part in totParts.Select(p => Partecipante.ToEntity(p)).ToList())
            {
                if (!idPassNonEdit.Contains(part.IDSpostamento))
                {
                    if (idPassEdit.Contains(part.IDSpostamento))
                    {
                        await dbMan.cmDB.UpdateAsync(part);
                    }
                    else
                    {
                        await dbMan.cmDB.InsertAsync(part);
                    }
                }
            }

            ShowLoading = false;
            return(toRet);
        }
Exemplo n.º 21
0
 public Form_Carico(DataSet database, Viaggio scarico)
 {
     InitializeComponent();
     this.database = database;
     Inizializza_Ottimizzato(scarico);
 }
Exemplo n.º 22
0
        private void button1_Click(object sender, EventArgs e)
        {
            Viaggio carico = new Viaggio();

            if (txtBustaDoc.Text == "")
            {
                MessageBox.Show("Inserisci Busta Documenti", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            carico.BustaDocumenti = txtBustaDoc.Text;
            carico.Camion         = cmbCamion.SelectedItem.ToString();

            //se è un viaggio ottimizzato il camionista ha già il codice fiscale
            if (cmbCamionista.Enabled)
            {
                //dal nome del camionista prende il codice fiscale
                var cf = from d in database.Tables["DIPENDENTE"].AsEnumerable()
                         where d.Field <string>("Nome") == cmbCamionista.SelectedItem.ToString()
                         select new { CF = d.Field <string>("CodiceFiscale") };

                carico.Camionista = cf.ElementAt(0).CF;
            }
            else
            {
                carico.Camionista = cmbCamionista.SelectedItem.ToString();
            }

            //prende ultimo codice
            if (database.Tables["VIAGGIO_DI_CARICO"].Rows.Count == 0)
            {
                carico.Codice = 1;
            }
            else
            {
                //leggo il massimo codice inserito nel database
                var codici = from v in database.Tables["VIAGGIO_DI_CARICO"].AsEnumerable()
                             orderby v.Field <int>("Codice") descending
                             select v.Field <int>("Codice");

                int max = codici.ElementAt(0);

                carico.Codice = max + 1;
            }

            carico.Container1 = cmbContainer1.SelectedItem.ToString();
            carico.Data       = dateTimePicker1.Value.Day.ToString() + "/" + dateTimePicker1.Value.Month.ToString() + "/" + dateTimePicker1.Value.Year.ToString();

            //riempie informazioni per container 1
            List <Informazioni_In_Viaggio> info = new List <Informazioni_In_Viaggio>();
            Informazioni_In_Viaggio        in1  = new Informazioni_In_Viaggio();
            //prende l'iva dal nome dell'impianto 1
            var iva = from i in database.Tables["CLIENTE"].AsEnumerable()
                      where i.Field <string>("Nome") == cmbCliente1.SelectedItem.ToString()
                      select new { Iva = i.Field <string>("PartitaIva") };

            in1.Iva     = iva.ElementAt(0).Iva;
            in1.Viaggio = carico.Codice;
            in1.Soa     = cmbSoa1.SelectedItem.ToString();
            //controllo se il peso è inserito correttamente
            try
            {
                in1.PesoSoa = int.Parse(txtPeso1.Text);
            }
            catch
            {
                MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            //se <= 0 errore
            if (in1.PesoSoa <= 0)
            {
                MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            info.Add(in1);

            //controllo separatore per il container 1
            if (chkSeparatore1.Checked)
            {
                //aggiunge un'altra informazione carico
                in1.Soa = cmbSoa2.SelectedItem.ToString();
                //controllo se il peso è inserito correttamente
                try
                {
                    in1.PesoSoa = int.Parse(txtPeso2.Text);
                }
                catch
                {
                    MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                //se <= 0 errore
                if (in1.PesoSoa <= 0)
                {
                    MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                info.Add(in1);
            }

            //controllo rimorchio
            if (chkRimorchio.Checked)
            {
                carico.Rimorchio.Container2 = cmbContainer2.SelectedItem.ToString();
                carico.Rimorchio.Rimorchio  = cmbRimorchio.SelectedItem.ToString();
                //inserisce le informazioni anche per il rimorchio
                //prende l'iva dal nome dell'impianto 2
                var iva2 = from i in database.Tables["CLIENTE"].AsEnumerable()
                           where i.Field <string>("Nome") == cmbCliente2.SelectedItem.ToString()
                           select new { Iva = i.Field <string>("PartitaIva") };

                in1.Iva = iva2.ElementAt(0).Iva;
                in1.Soa = cmbSoa3.SelectedItem.ToString();
                //controllo se il peso è inserito correttamente
                try
                {
                    in1.PesoSoa = int.Parse(txtPeso3.Text);
                }
                catch
                {
                    MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                //se <= 0 errore
                if (in1.PesoSoa <= 0)
                {
                    MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                info.Add(in1);

                //controllo separatore per il container 2 nel rimorchio
                if (chkSeparatore2.Checked)
                {
                    //aggiungo un'altra informazione carico
                    in1.Soa = cmbSoa4.SelectedItem.ToString();
                    //controllo se il peso è inserito correttamente
                    try
                    {
                        in1.PesoSoa = int.Parse(txtPeso4.Text);
                    }
                    catch
                    {
                        MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                    //se <= 0 errore
                    if (in1.PesoSoa <= 0)
                    {
                        MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                    info.Add(in1);
                }
            }
            else
            {
                carico.Rimorchio.Rimorchio = "";
            }

            //ottiene giorno precedente per il confronto, perchè il datetimepicker ha anche l'ora
            //nel database l'ora nn c'è
            DateTime precedente = dateTimePicker1.Value.AddDays(-1);
            DateTime attuale    = dateTimePicker1.Value;
            //genero il numero viaggio = numeroviaggio di camionista e data più alto + 1
            //leggo il massimo codice inserito nel database
            var numeri_viaggio = from v in database.Tables["VIAGGIO_DI_CARICO"].AsEnumerable()
                                 where v.Field <string>("Camionista") == carico.Camionista && v.Field <DateTime>("Data").CompareTo(precedente) > 0 && v.Field <DateTime>("Data").CompareTo(attuale) <= 0
                                 orderby v.Field <int>("NumeroViaggio") descending
                                 select v.Field <int>("NumeroViaggio");

            int max_num = 0;

            if (numeri_viaggio.Count() > 0)
            {
                //c'era almeno un viaggio di carico con lo stesso camionista e data
                max_num = numeri_viaggio.ElementAt(0);
            }

            carico.NumeroViaggio = max_num + 1; //è progressivo

            //assegna alle proprietà di output i valori
            Carico = carico;
            Infos  = info;
            //chiude form
            this.Close();
        }
Exemplo n.º 23
0
        private void button1_Click(object sender, EventArgs e)
        {
            Viaggio scarico = new Viaggio();

            if (txtBustaDoc.Text == "")
            {
                MessageBox.Show("Inserisci Busta Documenti", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            scarico.BustaDocumenti = txtBustaDoc.Text;
            scarico.Camion         = cmbCamion.SelectedItem.ToString();
            //dal nome del camionista prende il codice fiscale
            var cf = from d in database.Tables["DIPENDENTE"].AsEnumerable()
                     where d.Field <string>("Nome") == cmbCamionista.SelectedItem.ToString()
                     select new { CF = d.Field <string>("CodiceFiscale") };

            scarico.Camionista = cf.ElementAt(0).CF;
            //prende ultimo codice
            if (database.Tables["VIAGGIO_DI_SCARICO"].Rows.Count == 0)
            {
                scarico.Codice = 1;
            }
            else
            {
                //leggo il massimo codice inserito nel database
                var codici = from v in database.Tables["VIAGGIO_DI_SCARICO"].AsEnumerable()
                             orderby v.Field <int>("Codice") descending
                             select v.Field <int>("Codice");

                int max = codici.ElementAt(0);

                scarico.Codice = max + 1;
            }

            scarico.Container1 = cmbContainer1.SelectedItem.ToString();
            scarico.Data       = dateTimePicker1.Value.Day.ToString() + "/" + dateTimePicker1.Value.Month.ToString() + "/" + dateTimePicker1.Value.Year.ToString();

            //riempie informazioni per container 1
            List <Informazioni_In_Viaggio> info = new List <Informazioni_In_Viaggio>();
            Informazioni_In_Viaggio        in1  = new Informazioni_In_Viaggio();
            //prende l'iva dal nome dell'impianto 1
            var iva = from i in database.Tables["IMPIANTO"].AsEnumerable()
                      where i.Field <string>("Nome") == cmbImpianto1.SelectedItem.ToString()
                      select new { Iva = i.Field <string>("PartitaIva") };

            in1.Iva     = iva.ElementAt(0).Iva;
            in1.Viaggio = scarico.Codice;
            in1.Soa     = cmbSoa1.SelectedItem.ToString();
            //controllo se il peso è inserito correttamente
            try
            {
                in1.PesoSoa = int.Parse(txtPeso1.Text);
            }
            catch
            {
                MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            //se <= 0 errore
            if (in1.PesoSoa <= 0)
            {
                MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            info.Add(in1);

            //controllo rimorchio
            if (chkRimorchio.Checked)
            {
                scarico.Rimorchio.Container2 = cmbContainer2.SelectedItem.ToString();
                scarico.Rimorchio.Rimorchio  = cmbRimorchio.SelectedItem.ToString();
                //inserisce le informazioni anche per il rimorchio
                //prende l'iva dal nome dell'impianto 2
                var iva2 = from i in database.Tables["IMPIANTO"].AsEnumerable()
                           where i.Field <string>("Nome") == cmbImpianto2.SelectedItem.ToString()
                           select new { Iva = i.Field <string>("PartitaIva") };

                in1.Iva = iva2.ElementAt(0).Iva;
                in1.Soa = cmbSoa2.SelectedItem.ToString();
                //controllo se il peso è inserito correttamente
                try
                {
                    in1.PesoSoa = int.Parse(txtPeso2.Text);
                }
                catch
                {
                    MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                //se <= 0 errore
                if (in1.PesoSoa <= 0)
                {
                    MessageBox.Show("Inserisci un peso > 0", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                info.Add(in1);
            }
            else
            {
                scarico.Rimorchio.Rimorchio = "";
            }

            //assegna alle proprietà di output i valori
            Scarico = scarico;
            Infos   = info;
            //chiude form
            this.Close();
        }
Exemplo n.º 24
0
        private void Inizializza_Ottimizzato(Viaggio scarico)
        {
            //il camionista è fissato
            cmbCamionista.Items.Add(scarico.Camionista);
            cmbCamionista.SelectedItem = cmbCamionista.Items[0];
            cmbCamionista.Enabled      = false;

            //il camion è fissato
            cmbCamion.Items.Add(scarico.Camion);
            cmbCamion.SelectedItem = cmbCamion.Items[0];
            cmbCamion.Enabled      = false;

            //legge container per container1
            var container = database.Tables["[CONTAINER]"];

            foreach (DataRow c in container.Rows)
            {
                cmbContainer1.Items.Add(c.Field <string>("CodiceIso"));
                cmbContainer2.Items.Add(c.Field <string>("CodiceIso"));
            }
            cmbContainer1.SelectedItem = cmbContainer1.Items[0];
            cmbContainer2.SelectedItem = cmbContainer2.Items[0];

            //legge lista clienti
            var clienti = database.Tables["CLIENTE"];

            foreach (DataRow c in clienti.Rows)
            {
                cmbCliente1.Items.Add(c.Field <string>("Nome"));
                cmbCliente2.Items.Add(c.Field <string>("Nome"));
            }
            cmbCliente1.SelectedItem = cmbCliente1.Items[0];
            cmbCliente2.SelectedItem = cmbCliente2.Items[0];

            //legge i Soa all'inizio
            List <string> soa1 = Soa_In_Cliente(cmbCliente1.SelectedItem.ToString());
            List <string> soa3 = Soa_In_Cliente(cmbCliente2.SelectedItem.ToString());

            cmbSoa1.Items.Clear();
            cmbSoa3.Items.Clear();
            foreach (string s in soa1)
            {
                cmbSoa1.Items.Add(s);
            }
            foreach (string s in soa3)
            {
                cmbSoa3.Items.Add(s);
            }
            cmbSoa1.SelectedItem = cmbSoa1.Items[0];
            cmbSoa3.SelectedItem = cmbSoa3.Items[0];

            //aggiorna anche soa per separatore stessa categoria
            cmbSoa2.Items.Clear();
            //prende soa della stessa categoria e li mette nella combobox
            List <string> soa2 = Soa_Stessa_Categoria(cmbCliente1.SelectedItem.ToString(), cmbSoa1.SelectedItem.ToString());

            foreach (string s in soa2)
            {
                cmbSoa2.Items.Add(s);
            }
            cmbSoa2.SelectedItem = cmbSoa2.Items[0];

            cmbSoa4.Items.Clear();
            //prende soa della stessa categoria e li mette nella combobox
            List <string> soa4 = Soa_Stessa_Categoria(cmbCliente2.SelectedItem.ToString(), cmbSoa3.SelectedItem.ToString());

            foreach (string s in soa2)
            {
                cmbSoa4.Items.Add(s);
            }
            cmbSoa4.SelectedItem = cmbSoa4.Items[0];

            //il rimorchio se c'è è fissato
            chkRimorchio.Enabled = false;
            cmbRimorchio.Enabled = false;
            if (scarico.Rimorchio.Rimorchio != "")
            {
                chkRimorchio.Checked = true;
                grpRimorchio.Visible = true;
                cmbRimorchio.Items.Add(scarico.Rimorchio.Rimorchio);
                cmbRimorchio.SelectedItem = cmbRimorchio.Items[0];
            }
            else
            {
                grpRimorchio.Visible = false;
            }

            //la data è fissata
            dateTimePicker1.Value   = DateTime.Parse(scarico.Data);
            dateTimePicker1.Enabled = false;

            //la busta documenti è fissata
            txtBustaDoc.Text    = scarico.BustaDocumenti;
            txtBustaDoc.Enabled = false;
        }
Exemplo n.º 25
0
 public void Save(Viaggio viaggio)
 {
     base.update <Viaggio>(viaggio);
 }