Exemplo n.º 1
0
        /// <summary>
        /// Selectionne les roadmaps en fonction d'un intervalle de temps
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_selectRoadMaps_Click(object sender, RoutedEventArgs e)
        {
            if (!App.IsConnected())
            {
                MessageBox.Show("Vous n'êtes pas connecté à internet");
                return;
            }

            collection.Items.Clear();
            IRoadMapManager manager = new RoadMapManager();
            manager.AllRoadMapsReceived += (o, eRoadMapReceived) =>
            {
                if (eRoadMapReceived.Error)
                {
                    MessageBox.Show(eRoadMapReceived.MessageError);
                    this.enableInterface();
                    return;
                }
                for (int i=0; i < eRoadMapReceived.RoadMaps.Count; i++)
                {
                    var roadmap = eRoadMapReceived.RoadMaps[i];
                    collection.Items.Add(new DateAndPositions(i, roadmap));
                }
                manager.AllRoadMapsReceived = null;
                this.enableInterface();

                ToastPrompt toast = new ToastPrompt();
                toast.Title = "Résultats";
                toast.Message = eRoadMapReceived.RoadMaps.Count + " feuille(s) de route récupérée(s)";
                toast.Show();
            };
            if (!IsolatedStorageSettings.ApplicationSettings.Contains("latiAdrDepart") ||
                !IsolatedStorageSettings.ApplicationSettings.Contains("longiAdrDepart")||
                !IsolatedStorageSettings.ApplicationSettings.Contains("VilleDepart") ||
                !IsolatedStorageSettings.ApplicationSettings.Contains("latiAdrArriver")||
                !IsolatedStorageSettings.ApplicationSettings.Contains("longiAdrArriver")||
                !IsolatedStorageSettings.ApplicationSettings.Contains("VilleArriver") ||
                !IsolatedStorageSettings.ApplicationSettings.Contains("ConsoCarburant")||
                !IsolatedStorageSettings.ApplicationSettings.Contains("PrixCarburant"))
            {
                MessageBox.Show("Veillez à paramètrer correctement l'application avant d'utiliser l'export Excel. Les villes de départ et d'arrivée sont manquantes");
                NavigationService.Navigate(new Uri("/Page/PivotParam.xaml", UriKind.Relative));
                return;
            }

            ReferenceMeeting start = new ReferenceMeeting(this.dateFrom.Value.Value, new Location()
            {
                Latitude = (double)settings["latiAdrDepart"],
                Longitude = (double)settings["longiAdrDepart"]
            }) { City = (string)settings["VilleDepart"], Subject = "Start" };
            ReferenceMeeting end = new ReferenceMeeting(this.dateFrom.Value.Value, new Location()
            {
                Latitude = (double)settings["latiAdrArriver"],
                Longitude = (double)settings["longiAdrArriver"]
            }) { City = (string)settings["VilleArriver"], Subject = "End" };

            this.disableInterface();
            manager.GetAllRoadMapsAsync(this.dateFrom.Value.Value, this.dateTo.Value.Value, start, end);
        }
        private void btn_selectRoadMaps_Click(object sender, RoutedEventArgs e)
        {
            IRoadMapManager manager = new RoadMapManager();
            ApplicationBarIconButton settings = ApplicationBar.Buttons[0] as ApplicationBarIconButton;
            ApplicationBarIconButton refresh = ApplicationBar.Buttons[1] as ApplicationBarIconButton;
            ApplicationBarIconButton export = ApplicationBar.Buttons[2] as ApplicationBarIconButton;

            manager.AllRoadMapsReceived += (o, eRoadMapReceived) =>
            {
                var l = new List<DateAndPositions>();
                foreach (var roadmap in eRoadMapReceived.RoadMaps)
                {
                    l.Add(new DateAndPositions(roadmap.Date, roadmap.Meetings.FirstOrDefault(), roadmap.Meetings.LastOrDefault()));
                }
                this._roadmaps = eRoadMapReceived.RoadMaps;
                collection.Items = l;
                this.progressBar.IsIndeterminate = false;
                this.lbl_progressBar.Visibility = System.Windows.Visibility.Collapsed;
                dateFrom.IsEnabled = true;
                dateTo.IsEnabled = true;
                settings.IsEnabled = true;
                refresh.IsEnabled = true;
                export.IsEnabled = true;
                btn_selectRoadMaps.IsEnabled = true;
                if (eRoadMapReceived.Error)
                    MessageBox.Show("une erreur est survenue");
            };


            
            /// <summary>
            /// TODO : à remplacer par les meetings des settings
            /// </summary>
            ReferenceMeeting start = new ReferenceMeeting(new DateTime(2013, 1, 2, 8, 30, 0), new Location()
            {
                Latitude = 48.85693,
                Longitude = 2.3412
            }) { City = "Paris", Subject = "Start" };
            ReferenceMeeting end = start;
            end.Subject = "End";

            manager.GetAllRoadMapsAsync(this.dateFrom.Value.Value, this.dateTo.Value.Value, start, end);
            this.progressBar.IsIndeterminate = true;
            dateFrom.IsEnabled = false;
            dateTo.IsEnabled = false;
            btn_selectRoadMaps.IsEnabled = false;

            settings.IsEnabled = false;
            refresh.IsEnabled = false;
            export.IsEnabled = false;
            this.lbl_progressBar.Visibility = System.Windows.Visibility.Visible;
        }
Exemplo n.º 3
0
        // Constructor
        public MainPage()
        {
            InitializeComponent();

            //MeetingManagerTest.SearchStringAsyncTEST();
            //MeetingManagerTest.GetAllMeetingsAsyncTEST();
            //TripManagerTest.GetTripAsyncTEST();
            //TripManagerTest.GetAllTripsAsyncTEST();
            //RoadMapManagerTest.GetRoadMapAsyncTEST();
            //RoadMapManagerTest.GetAllRoadMapsAsyncTEST();
            //HtmlTest.HtmlConstructTEST();
            //return;

            ///TRIAL
            //Microsoft.Phone.Tasks.MarketplaceDetailTask market = new Microsoft.Phone.Tasks.MarketplaceDetailTask();
            //LicenseInformation licence = new LicenseInformation();
            //licence.IsTrial();

            IRoadMapManager manager = new RoadMapManager();
            this.DataContext = new Route();
            (DataContext as Route).Credential = BingMapCredential.CREDENTIAL;
            manager.RoadMapReceived += OnRoadMapReceived;

            //Meeting de départ
            ReferenceMeeting start = new ReferenceMeeting(new DateTime(2013, 1, 2, 8, 30, 0), new Location()
            {
                Latitude = 48.85693,
                Longitude = 2.3412
            }) { 
                City = "Paris", 
                Subject = "Départ coucou lol" 
            };
            //Meeting d'arrivé
            ReferenceMeeting end = new ReferenceMeeting(new DateTime(2013, 1, 2, 18, 30, 0), new Location()
            {
                Latitude = 48.85693,
                Longitude = 2.3412
            }) { 
                City = "Paris", 
                Subject = "Arrivée coucou lol" 
            };
            //Appel de la récupération des données
            manager.GetRoadMapAsync(new DateTime(2013, 1, 3), start, end);
            
        }
        private void initRoadTrip()
        {
            if (settings["latiAdrDepart"] != "" && settings["longiAdrDepart"] != "" && settings["latiAdrArriver"] != "" && settings["longiAdrArriver"] != "")
            {
                rt_ConsoTrajet.tb_Info1.Text = "Consomation";
                rt_CoutTot.tb_Info1.Text = "Coût total";
                rt_DistRdv.tb_Info1.Text = "Distance parcourue";
                rt_nbrRdv.tb_Info1.Text = "Nombres de RDVs";
                rt_TpsTrajetRdv.tb_Info1.Text = "Temps de trajet";
                gr_AnomalieLieu.Children.Clear();
                gr_AnomalieTemps.Children.Clear();
                gr_InfoRD.Children.Clear();
                gr_InfoRDOpti.Children.Clear();
                map_Rdv.Children.Clear();
                myRMM = new RoadMapManager();
                myMM = new MeetingManager();
                tripTimeFail = new List<Trip>();
                meetingLocationFail = new List<Meeting>();

                var myRefMeetDepart = new ReferenceMeeting();
                myRefMeetDepart.Address = (string)settings["AdrDepart"];
                myRefMeetDepart.City = (string)settings["VilleDepart"];
                myRefMeetDepart.Location = new Location() { Latitude = (double)settings["latiAdrDepart"], Longitude = (double)settings["longiAdrDepart"] };

                var myRefMeetArriver = new ReferenceMeeting();
                myRefMeetArriver.Address = (string)settings["AdrArriver"];
                myRefMeetArriver.City = (string)settings["VilleArriver"];
                myRefMeetArriver.Location = new Location() { Latitude = (double)settings["latiAdrArriver"], Longitude = (double)settings["longiAdrArriver"] };

                myRMM.RoadMapReceived += OnRoadMapReceived;
                myRMM.GetRoadMapAsync((DateTime)settings["Date"], myRefMeetDepart, myRefMeetArriver);

                indicator = new ProgressIndicator
                {
                    IsVisible = true,
                    IsIndeterminate = true,
                    Text = "Chargement..."
                };
                SystemTray.SetProgressIndicator(this, indicator);
            }
            else
            {
                MessageBox.Show("Veuillez vérifier vos lieux de départ et d'arriver dans les paramètres");
            }
        }
        public static void GetRoadMapAsyncTEST()
        {
            IRoadMapManager manager = new RoadMapManager();

            manager.RoadMapReceived += (o, e) =>
            {
                if (e.Error)
                {
                    Debug.WriteLine("Aucun rendez-vous n'existe pour le jour sélectionné");
                    return;
                }
                Debug.WriteLine("YopYop Bling on a récupéré la roadmap!!");
            };
            ReferenceMeeting start = new ReferenceMeeting(new DateTime(2013, 1, 2, 8, 30, 0), new Location() { Latitude = 48.85693,
                                                                     Longitude = 2.3412});
            ReferenceMeeting end = new ReferenceMeeting(new DateTime(2013, 1, 2, 18, 30, 0), new Location() { Latitude = 48.85693,
                                                                     Longitude = 2.3412});

            manager.GetRoadMapAsync(new DateTime(2013, 1, 2), start, end);
        }
        public static void GetAllRoadMapsAsyncTEST()
        {
            IRoadMapManager manager = new RoadMapManager();

            manager.AllRoadMapsReceived += (o, e) =>
            {
                if (e.RoadMaps.Count  == 0)
                {
                    Debug.WriteLine("Aucun rendez-vous n'existe pour les jours sélectionnés");
                    return;
                }
                Debug.WriteLine("YopYop Bling on a récupéré les roadmaps!!");
            };
            ReferenceMeeting start = new ReferenceMeeting(new DateTime(2013, 1, 2, 8, 30, 0), new Location()
            {
                Latitude = 48.85693,
                Longitude = 2.3412
            }) { City = "Paris", Subject = "Start" };
            ReferenceMeeting end = start;
            end.Subject = "End";

            manager.GetAllRoadMapsAsync(new DateTime(2013, 1, 2), new DateTime(2013, 1, 4), start, end);
        }
Exemplo n.º 7
0
        /// <summary>
        /// Demande à l'utilisateur de s'autentifier
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_export_Click(object sender, EventArgs e)
        {
            this.disableInterface();
            try
            {
                int count = collection.Items.Where(item => item.IsEdited == true).Count();
                if (count > 0)
                {
                    IRoadMapManager manager = new RoadMapManager();
                    manager.AllRoadMapsReceived += (o, eAllRoadMapsReceived) =>
                    {
                        if (eAllRoadMapsReceived.Error)
                        {
                            MessageBox.Show(eAllRoadMapsReceived.MessageError);
                            this.enableInterface();
                            return;
                        }
                        collection.Items.Clear();
                        for (int i = 0; i < eAllRoadMapsReceived.RoadMaps.Count; i++)
                        {
                            var roadmap = eAllRoadMapsReceived.RoadMaps[i];
                            collection.Items.Add(new DateAndPositions(i, roadmap));
                        }

                        LiveAuthClient auth = new LiveAuthClient("000000004C0E007C");
                        auth.LoginCompleted += auth_LoginCompleted;
                        auth.LoginAsync(new string[] { "wl.signin", "wl.skydrive_update" });
                        manager.AllRoadMapsReceived = null;
                    };
                    Dictionary<DateTime, KeyValuePair<ReferenceMeeting,ReferenceMeeting>> refMeetingsMap = new Dictionary<DateTime, KeyValuePair<ReferenceMeeting,ReferenceMeeting>>();
                    foreach (var item in collection.Items)
                    {
                        refMeetingsMap.Add(item.Roadmap.Date, 
                            new KeyValuePair<ReferenceMeeting, ReferenceMeeting>(
                                (item.Start as ReferenceMeeting), 
                                (item.End as ReferenceMeeting)
                            ));
                    }
                    manager.GetAllRoadMapsAsync(refMeetingsMap);
                }
                else
                {
                    LiveAuthClient auth = new LiveAuthClient("000000004C0E007C");
                    auth.LoginCompleted += auth_LoginCompleted;
                    auth.LoginAsync(new string[] { "wl.signin", "wl.skydrive_update" });
                }
            }
            catch (LiveAuthException exception)
            {
                MessageBox.Show(exception.Message);
                Debug.WriteLine(exception.Message);
                this.enableInterface();
            }
        }