Ejemplo n.º 1
0
        /// <summary>
        /// creation nouvelle course
        /// </summary>
        /// <param name="date"></param>
        private void InitialCourse(DateTime date)
        {
            EnumTour modetour = EnumTour.Matin;

            if (date.Hour > 12)
            {
                modetour = EnumTour.Soir;
            }
            course = new Course()
            {
                Jour   = date.Date,
                Départ = date.TimeOfDay,
                Sens   = (byte)modetour,
            };
            rootLayout.FindViewById <TextView>(Resource.Id.sens_cell).Text   = course.Sens.ToString();
            rootLayout.FindViewById <TextView>(Resource.Id.depart_cell).Text = date.TimeOfDay.ToStringFormat();
        }
Ejemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
        {
            int      reste;
            TimeSpan timecurent = DateTime.Now.TimeOfDay;
            TimeSpan deltatime;

            DeltaTime = (TimeSpan)e.UserState;
            BackgroundWorker ctl = (BackgroundWorker)sender;

            if (ctl.IsBusy)
            {
                textheure.Text = timecurent.ToStringFormat();
                double hh = ((TimeSpan)e.UserState).Hours;
                double mm = ((TimeSpan)e.UserState).Minutes;
                double ss = ((TimeSpan)e.UserState).Seconds;
                Math.DivRem((int)ss, (int)INTERVAL, out reste);
                if (reste == 0)
                {
                    await fusedLocationProviderClient.RequestLocationUpdatesAsync(locationRequest, locationCallback);

                    if (startcoordonnées != null)
                    {
                        // var delta = (long)coordonnées.DistanceTo(lastcoordonnées);
                        if (coordonnées.DistanceTo(lastcoordonnées) > 0)
                        {
                            if (dtstart == new DateTime())
                            {
                                dtstart = DateTime.Now;
                                //InitialCourse(dtstart);
                                EnumTour modetour = EnumTour.Matin;
                                if (dtstart.Hour > 12)
                                {
                                    modetour = EnumTour.Soir;
                                }
                                course = new Course()
                                {
                                    Jour   = dtstart.Date,
                                    Départ = dtstart.TimeOfDay,
                                    Sens   = (byte)modetour,
                                };
                                rootLayout.FindViewById <TextView>(Resource.Id.sens_cell).Text   = course.Sens.ToString();
                                rootLayout.FindViewById <TextView>(Resource.Id.depart_cell).Text = dtstart.TimeOfDay.ToString();

                                lastcoordonnées = coordonnées;
                            }
                            else
                            {
                                deltatime         = timecurent.Subtract(dtstart.TimeOfDay);
                                startandstop.Text = deltatime.ToStringFormat();
                                if (course != null)
                                {
                                    var co = Coordonnées_Data.GetCoordonnée(coordonnées);
                                    if (co.IsDomicile)
                                    {
                                        CloseCourse();
                                    }

                                    /*
                                     * else if ((Type_Etape)co.Type == Type_Etape.Dépôt)
                                     * {
                                     *  // Dialog dialog = Dialog.b
                                     *  var builder = new AlertDialog.Builder(this);
                                     *  builder.SetTitle("Etape Dépôt");
                                     *  builder.SetMessage("Fin de course ?");
                                     *  builder.SetPositiveButton("Oui", (sender, args) => { CloseCourse(); });
                                     *  builder.SetNegativeButton("Non", (sender, args) => { AjoutEtape(co); });
                                     *  builder.Show();
                                     * }
                                     */
                                    else
                                    {
                                        AjoutEtape(co);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }