示例#1
0
        /// <summary>
        /// Controleert of de opmerking niet al werd gemaakt. En indien deze al gemaakt werd of dit door een andere chauffeur wordt gedaan of door dezelfde chauffeur
        /// </summary>
        /// <param name="nieuwCommentaar">Opmerking die gecontroleerd moet worden van het type Comment</param>
        /// <returns>Task</returns>
        private async Task ControleerOpmerking()
        {
            List <Comment> opmerkingen = await OverzichtOpmerkingen.GetOverzichtComments();

            IEnumerable <Comment> dubbeleOpmerkingen =
                from evtOpmerking in opmerkingen
                where (evtOpmerking.ObjectCode.Equals(nieuwCommentaar.ObjectCode) &&
                       evtOpmerking.DefectCode.Equals(nieuwCommentaar.DefectCode))
                select evtOpmerking;

            List <Comment> dubbeleOpmerkingenlijst = dubbeleOpmerkingen.ToList <Comment>();
            bool           doorgaanMetBewerken     = false;

            if (dubbeleOpmerkingenlijst.Count == 0)
            {
                doorgaanMetBewerken = !await CommentaarToevoegen(nieuwCommentaar);
            }
            else
            {
                foreach (Comment dubbele in dubbeleOpmerkingenlijst)
                {
                    string bericht;
                    if (dubbele.Chauffeur == nieuwCommentaar.Chauffeur)
                    {
                        bericht = String.Format("U heeft eerder al een rijbericht aangemaakt voor dit onderdeel. Wilt u deze rijberichten samenvoegen?\nObjectcode: {0}, Defectcode: {1}\nOmschrijving: {2}.",
                                                dubbele.ObjectCode, dubbele.DefectCode, dubbele.Omschrijving);
                    }
                    else
                    {
                        bericht = String.Format("Chauffeur {0} heeft eerder een rijbericht gemaakt voor dit onderdeel. Wilt u deze rijberichten samenvoegen?\nObjectcode: {1}, Defectcode: {2}\nOmschrijving: {3}.",
                                                dubbele.Chauffeur, dubbele.ObjectCode, dubbele.DefectCode, dubbele.Omschrijving);
                    }

                    //Melding weergeven indien er dubbele commentaren gevonden zijn
                    MessageDialog okAnnuleer = new MessageDialog(bericht, "Dubbele rijberichten");
                    okAnnuleer.Commands.Add(new UICommand("Samenvoegen"));
                    okAnnuleer.Commands.Add(new UICommand("Doorgaan met bewerken"));
                    okAnnuleer.Commands.Add(new UICommand("Annuleren"));
                    var resultaat = await okAnnuleer.ShowAsync();

                    if (resultaat.Label.Equals("Samenvoegen"))
                    {
                        dubbele.Omschrijving += String.Format("{0}Toevoeging chauffeur {1}: {2}.", Environment.NewLine, nieuwCommentaar.Chauffeur, nieuwCommentaar.Omschrijving);
                        await CommentaarAanpassen(dubbele);
                    }
                    else if (resultaat.Label.Equals("Opmerking aanmaken annuleren"))
                    {
                        doorgaanMetBewerken = true;
                    }
                }
            }
            if (!doorgaanMetBewerken)
            {
                this.Frame.Navigate(typeof(OverzichtOpmerkingen));
            }
        }
示例#2
0
        /// <summary>
        /// Haalt een lijst met opmerkingen op en geeft de 5 meest recente opmerkingen weer op het bijlagenscherm.
        /// </summary>
        /// <returns></returns>
        private async Task VulRecenteCommentaren()
        {
            List <Comment> opmerkingen = await OverzichtOpmerkingen.GetOverzichtComments();

            if (opmerkingen.Count >= 5)
            {
                gvwOpmerkingen.ItemsSource = opmerkingen.GetRange(0, 5);
            }
            else
            {
                if (opmerkingen.Count > 0)
                {
                    gvwOpmerkingen.ItemsSource = opmerkingen;
                }
                else
                {
                    lblOpmerkingen.Text = "Er zijn geen rijberichten aanwezig voor de toegekende wagen.";
                }
            }
        }
示例#3
0
        /// <summary>
        /// Deze methode geeft een lijst van opmerkingen door naar de web service.
        /// De web service gebruikt deze gegevens om een .CSV-bestand te maken
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void BtnOpslaan_Click(object sender, RoutedEventArgs e)
        {
            btnSynchroniseren.IsEnabled = false;
            prSynchroniseren.IsActive   = true;
            lblBoodschap.Text           = "Even geduld. Gegevens worden op dit moment verstuurd...";
            lblBoodschap.Visibility     = Windows.UI.Xaml.Visibility.Visible;

            if (!swtManierOpslag.IsOn)
            {
                try
                {
                    await CopyFiles.copyPhotosToUSB();

                    await CopyFiles.copyVideosToUSB();

                    if (await LocalDB.database.SynchroniseerNaarUSB())
                    {
                        lblBoodschap.Text = "De gegevens zijn met succes verstuurd naar de USB!";
                    }
                    else
                    {
                        lblBoodschap.Text = "Er is iets fout gelopen. Controleer of u een opslagmedium ingestoken heeft...";
                    }
                }
                catch (Exception)
                {
                    lblBoodschap.Text = "Er is iets fout gelopen. Controleer of u een opslagmedium ingestoken heeft...";
                }
            }
            else
            {
                await CopyFiles.copyPhotosViaNetwork();

                await CopyFiles.copyVideosViaNetwork();

                List <String>  lijstGegevens = new List <String>();
                List <Comment> opmerkingen   = await OverzichtOpmerkingen.GetOverzichtComments();

                List <string> lijstStringGegevens = new List <string>();
                foreach (Comment opmerking in opmerkingen)
                {
                    lijstStringGegevens.Add("Chauffeur: " + opmerking.Chauffeur +
                                            ", OpmperkingID: " + opmerking.Id.ToString() +
                                            ", Aangemaakt op: " + opmerking.Datum.ToString("dd/MM/yyyy HH:mm") +
                                            ", Objectcode: " + opmerking.ObjectCode +
                                            ", Defectcode: " + opmerking.DefectCode +
                                            ", Omschrijving: " + opmerking.Omschrijving);
                }

                ArrayOfString aosGegevens = new ArrayOfString(); //Een ArrayOfString is nodig voor de web service
                aosGegevens.AddRange(lijstStringGegevens);

                var avAuto = await LocalDB.database.GetToegewezenAuto();

                string datum = String.Format("Wagen {0} - {1}-{2}-{3} {4}h{5}m", avAuto.Number, DateTime.Now.Day, DateTime.Now.Month, DateTime.Now.Year,
                                             DateTime.Now.Hour, DateTime.Now.Minute);

                string bestandsNaam = String.Format("{0} opmerkingen.csv", datum);

                //await CopyFiles.copyVideosViaNetwork();
                lblBoodschap.Text = "Videos uploaden";

                if (await LocalDB.database.SetMaakSVCvoorWebSync(aosGegevens, bestandsNaam))
                {
                    lblBoodschap.Text = "De gegevens zijn met succes verstuurd naar de server!";
                }
                else
                {
                    lblBoodschap.Text = "Er is iets fout gelopen. Controleer of u met het juiste netwerk verbonden bent...";
                }
            }

            btnSynchroniseren.IsEnabled = true;
            prSynchroniseren.IsActive   = false;
        }