public static async Task <ServiceVisit> GetServiceVisit(int serviceVisitId)
        {
            ServiceVisitDBInfo serviceVisitDB = await App.ServiceVisitsDatabase.GetServiceVisitAsync(serviceVisitId);

            // ServiceVisitDBInfo serviceVisitDBInfo = new ServiceVisitDBInfo(serviceVisitDB);
            return(serviceVisitDB.getServiceVisit());
        }
        public static async Task <int> SaveServiceVisit(ServiceVisit serviceVisit)
        {
            ServiceVisitDBInfo serviceVisitDBInfo = await App.ServiceVisitsDatabase.GetServiceVisitAsync(serviceVisit.ServiceVisitId);

            var result = await App.ServiceVisitsDatabase.SaveServiceVisitAsync(serviceVisitDBInfo);

            return(result);
        }
        public static async Task <ServiceVisit> GetServiceVisitBySiteId(int siteId)
        {
            var serviceVisitDB = await App.ServiceVisitsDatabase.GetServiceVisitAsyncBySiteId(siteId);

            ServiceVisitDBInfo serviceVisitDBInfo = (ServiceVisitDBInfo)(serviceVisitDB);

            return(serviceVisitDBInfo.getServiceVisit());
        }
        public static async Task <int> SaveServiceVisitReschedule(ServiceVisit serviceVisit, DateTime dateTime)
        {
            ServiceVisitDBInfo serviceVisitDBInfo = await App.ServiceVisitsDatabase.GetServiceVisitAsync(serviceVisit.ServiceVisitId);

            serviceVisitDBInfo.ScheduledDate    = dateTime;
            serviceVisitDBInfo.updateReschedule = true;
            var result = await App.ServiceVisitsDatabase.UpdateServiceVisitAsync(serviceVisitDBInfo);

            return(result);
        }
        public static async Task <int> SaveServiceVisitDeleteSchedule(ServiceVisit serviceVisit)
        {
            ServiceVisitDBInfo serviceVisitDBInfo = await App.ServiceVisitsDatabase.GetServiceVisitAsync(serviceVisit.ServiceVisitId);

            serviceVisitDBInfo.ScheduledDate  = null;
            serviceVisitDBInfo.deleteSchedule = true;
            Console.WriteLine("delete executed" + serviceVisitDBInfo.deleteSchedule);
            var result = await App.ServiceVisitsDatabase.UpdateServiceVisitAsync(serviceVisitDBInfo);

            return(result);
        }
        public static async Task <int> SaveServiceVisitBuilding(ServiceVisit serviceVisit, Building building)
        {
            ServiceVisitDBInfo serviceVisitDBInfo = await App.ServiceVisitsDatabase.GetServiceVisitAsync(serviceVisit.ServiceVisitId);

            serviceVisitDBInfo.BuildingClass         = building.BuildingClass;
            serviceVisitDBInfo.BuildingEra           = building.BuildingEra;
            serviceVisitDBInfo.BuildingParts         = building.BuildingParts;
            serviceVisitDBInfo.BuildingSize          = building.BuildingSize;
            serviceVisitDBInfo.updateBuildingDetails = true;
            var result = await App.ServiceVisitsDatabase.UpdateServiceVisitAsync(serviceVisitDBInfo);

            return(result);
        }
        public static async Task <int> SaveServiceVisitMemo(ServiceVisit serviceVisit, Memos memo)
        {
            ServiceVisitDBInfo serviceVisitDBInfo = await App.ServiceVisitsDatabase.GetServiceVisitAsync(serviceVisit.ServiceVisitId);

            serviceVisitDBInfo.ContactMemo   = memo.ContactMemo;
            serviceVisitDBInfo.FSMMemo       = memo.FSMMemo;
            serviceVisitDBInfo.InductionMemo = memo.InductionMemo;
            serviceVisitDBInfo.OHSMemo       = memo.OHSMemo;
            serviceVisitDBInfo.ServiceMemo   = memo.ServiceMemo;
            serviceVisitDBInfo.updateMemos   = true;
            var result = await App.ServiceVisitsDatabase.UpdateServiceVisitAsync(serviceVisitDBInfo);

            return(result);
        }
예제 #8
0
        //make an api call to get all the visits for the technician that is logged in
        private async Task InitializeGetVisitsAsync()
        {
            try
            {
                IsBusy = true;
                var current = Connectivity.NetworkAccess;

                if (current == NetworkAccess.Internet)
                {
                    if (this.lastInternetState == false)
                    {
                        await ServiceVisitDataController.submitAllLocalUpdateAsync();

                        this.lastInternetState = true;
                    }
                }

                // Connection to internet is available
                var result = await _visitServices.GetServiceVisitListsForUser(CrossSecureStorage.Current.GetValue("UserCode"));

                if (result != null)
                {
                    _fullVisitsList = new List <ServiceVisit>(result).Select(s => new ServiceVisitViewModel(s)).ToList();
                    List <ServiceVisit> serviceVisits = new List <ServiceVisit>(result);

                    // save into local DB at the first time

                    if (current == NetworkAccess.Internet)
                    {
                        this.lastInternetState = true;
                        foreach (ServiceVisit sv in serviceVisits)
                        {
                            ServiceVisitDBInfo svDBInfo = new ServiceVisitDBInfo(sv);
                            _ = App.ServiceVisitsDatabase.SaveServiceVisitAsync(svDBInfo);
                            Console.WriteLine(svDBInfo.ServiceVisitId);
                        }
                    }
                    else
                    {
                        this.lastInternetState = false;
                    }

                    //App.ServiceVisitsDatabase.SaveNoteAsync(_fullVisitsList);

                    Visits = new ObservableCollection <ServiceVisitViewModel>(_fullVisitsList);
                    InitializeFilterVM();
                    InitializeSortVM();
                }
                //if result is null, there is an error with the call
                else
                {
                    await Navigation.PushAsync(new ErrorPage(new ServiceVisitListMasterPage()));
                }


                //else
                //{
                //    var serviceVisitDB = await App.ServiceVisitsDatabase.GetServiceVisitsAsync();
                //    List<ServiceVisitDBInfo> serviceVisitDBList = new List<ServiceVisitDBInfo>(serviceVisitDB);
                //    List<ServiceVisit> result = new List<ServiceVisit>();
                //    foreach (ServiceVisitDBInfo svInfo in serviceVisitDBList)
                //    {
                //        result.Add(svInfo.getServiceVisit());
                //    }

                //    if (result != null)
                //    {
                //        _fullVisitsList = new List<ServiceVisit>(result).Select(s => new ServiceVisitViewModel(s)).ToList();
                //        List<ServiceVisit> serviceVisits = new List<ServiceVisit>(result);

                //        //App.ServiceVisitsDatabase.SaveNoteAsync(_fullVisitsList);

                //        Visits = new ObservableCollection<ServiceVisitViewModel>(_fullVisitsList);
                //        InitializeFilterVM();
                //        InitializeSortVM();
                //    }
                //    //if result is null, there is an error with the call
                //    else
                //    {
                //        await Navigation.PushAsync(new ErrorPage(new ServiceVisitListMasterPage()));
                //    }

                //}
                //var result = await _visitServices.GetServiceVisitListsForUser("P09");
            }
            finally
            {
                IsBusy = false;
            }
        }