Esempio n. 1
0
 public bool DeleteCall()
 {
     if (_previousVisitData.ItemId < 0)
     {
         return(false);
     }
     return(RvPreviousVisitsDataInterface.DeleteCall(_previousVisitData.ItemId));
 }
Esempio n. 2
0
        public static TimeData[] BuildTimeReport(DateTime fromDate, DateTime toDate, SortOrder so)
        {
            TimeData[] entries = TimeDataInterface.GetEntries(fromDate, toDate, so);

            try {
                bool countCalls = App.Settings.manuallyTrackRvs;

                if (!countCalls)
                {
                    return(entries);
                }
                RvPreviousVisitData[] calls = RvPreviousVisitsDataInterface.GetCallsByDate(fromDate, toDate);

                if (calls != null)
                {
                    var entriesMore = new List <TimeData>(entries);

                    foreach (var c in calls)
                    {
                        bool found = false;
                        foreach (var e in entries)
                        {
                            if (e.Date.Date != c.Date.Date)
                            {
                                continue;
                            }
                            // Check for call data which happened on the same date as another service day
                            // If it did, add the values, otherwise continue
                            e.Magazines    += c.Magazines;
                            e.Books        += c.Books;
                            e.Brochures    += c.Brochures;
                            e.Tracts       += c.Tracts;
                            e.ReturnVisits += RvPreviousVisitsDataInterface.IsInitialCall(c) ? 0 : 1;
                            found           = true;
                            break;
                        }

                        if (!found)                           // We found a call, but no service time was recorded on this date
                        {
                            entriesMore.Add(new TimeData()
                            {
                                Magazines    = c.Magazines,
                                Books        = c.Books,
                                Brochures    = c.Brochures,
                                Tracts       = c.Tracts,
                                Date         = c.Date,
                                ReturnVisits = RvPreviousVisitsDataInterface.IsInitialCall(c) ? 0 : 1
                            });
                        }
                    }
                    entries = entriesMore.OrderBy(s => s.Date).ToArray();
                }
                return(entries);
            } catch {
                return(entries);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Constructor for the Application object.
        /// </summary>
        public App()
        {
            // Ensure the current culture passed into bindings
            // is the OS culture. By default, WPF uses en-US
            // as the culture, regardless of the system settings.
            LocalizationManager.GlobalStringLoader = new TelerikStringLoader();
            Thread.CurrentThread.CurrentCulture    = CultureInfo.CurrentUICulture;
            Thread.CurrentThread.CurrentUICulture  = CultureInfo.CurrentUICulture;

            var radDiagnostics = new RadDiagnostics();

            radDiagnostics.EmailTo           = "*****@*****.**";
            radDiagnostics.IncludeScreenshot = true;
            radDiagnostics.Init();
            (App.Current.Resources["PhoneAccentBrush"] as SolidColorBrush).Color = Color.FromArgb(0xFF, 0xD2, 0xDA, 0x86);
            _settingsProvider = new SettingsProvider();
            // Global handler for uncaught exceptions.
            UnhandledException += Application_UnhandledException;

            // Standard Silverlight initialization
            InitializeComponent();

            // Phone-specific initialization
            InitializePhoneApplication();

            // Show graphics profiling information while debugging.
            if (Debugger.IsAttached)
            {
                // Display the current frame rate counters.
                Current.Host.Settings.EnableFrameRateCounter = false;

                // Show the areas of the app that are being redrawn in each frame.
                //Application.Current.Host.Settings.EnableRedrawRegions = true;

                // Enable non-production analysis visualization mode,
                // which shows areas of a page that are handed off to GPU with a colored overlay.
                //Application.Current.Host.Settings.EnableCacheVisualization = true;

                // Disable the application idle detection by setting the UserIdleDetectionMode property of the
                // application's PhoneApplicationService object to Disabled.
                // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run
                // and consume battery power when the user is not using the phone.
                PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
            }
            TimeDataInterface.CheckDatabase();
            ReturnVisitsInterface.CheckDatabase();
            RvPreviousVisitsDataInterface.CheckDatabase();
            RBCTimeDataInterface.CheckDatabase();
            TerritoryCardsInterface.CheckDatabase();
            StreetBuildingInterface.CheckDatabase();
            House2HouseRecordsInterface.CheckDatabase();
        }
Esempio n. 4
0
        public void LoadPreviousVisits(int value)
        {
            if (IsPreviousVisitsLoaded)
            {
                IsPreviousVisitsLoaded = false;
                PreviousVisits.Clear();
            }
            var prevVisits = RvPreviousVisitsDataInterface.GetPreviousVisits(value, SortOrder.DateNewestToOldest);

            foreach (var p in prevVisits)
            {
                PreviousVisits.Add(new PreviousVisitViewModel()
                {
                    PreviousVisitData = p,
                    ParentRv          = this
                });
            }
            IsPreviousVisitsLoaded = true;
        }
        public void Execute(object parameter)
        {
            if (!CanExecute(parameter))
            {
                return;
            }

            var itemId = (int)parameter;

            if (itemId < 0 || MessageBox.Show(StringResources.AddCallPage_DeleteCallConfirmation, StringResources.ApplicationName, MessageBoxButton.OKCancel) != MessageBoxResult.OK)
            {
                return;
            }
            bool v = RvPreviousVisitsDataInterface.DeleteCall(itemId);

            if (!v)
            {
                App.ToastMe(StringResources.AddCallPage_DeleteCallFailed);
            }
            App.ViewModel.ReturnVisitData.LoadPreviousVisits(App.ViewModel.ReturnVisitData.ItemId);
        }
        /// <summary>
        /// Gets the visits list as string.
        /// </summary>
        /// <returns>System.String.</returns>
        private string GetVisitsListAsString()
        {
            string body = string.Empty;

            body += string.Format("\n\n{0}:\n", StringResources.RVPage_Visits_Headline);
            return(App.ViewModel.ReturnVisitData.PreviousVisits.Where(pp => pp != null).Select(pp => RvPreviousVisitsDataInterface.GetCall(pp.PreviousVisitItemId)).Where(pv => pv != null).Aggregate(body, (current, pv) => current + string.Format("Date: {0}\n" + "Placements: {1} Mg's, {2} Bk's, {3} Br's\n" + "Notes: {4}\n\n\n", pv.Date.ToShortDateString(), pv.Magazines, pv.Books, pv.Brochures, pv.Notes)));
        }
Esempio n. 7
0
 public bool AddOrUpdateItem()
 {
     return(RvPreviousVisitsDataInterface.AddOrUpdateCall(ref _previousVisitData));
 }