//  CreateInvasiveCommand => new Command<Project>(async (Project project) => await CreateInvasive(project));
        private async Task CreateInvasive(Project project)
        {
            //var result = await Shell.Current.DisplayAlert(
            //    "Alert",
            //    "Are you sure you want to remove?",
            //    "Yes", "No");

            //if (result)
            //{
            IsBusyProgress = true;
            var response = await Task.Run(() =>
                                          ProjectDataStore.CreateInvasiveReport(project)
                                          );

            if (response.Status == ApiResult.Success)
            {
                App.IsInvasive = true;
                IsBusyProgress = false;
                await Shell.Current.Navigation.PushAsync(new ProjectDetail()
                {
                    BindingContext = new ProjectDetailViewModel()
                    {
                        Project = project
                    }
                });
            }


            //}
        }
        async Task ExecuteLoadItemsCommand()
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;

            try
            {
                Items.Clear();
                var items = await DataStore.GetItemsAsync(true);

                foreach (Item item in items)
                {
                    Project project = await ProjectDataStore.GetItemAsync(item.ProjectId.ToString());

                    item.ProjectName = project.Name;
                    Items.Add(item);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
        async Task ExecuteLoadItemsCommand()
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;

            try
            {
                Projects.Clear();
                var items = await ProjectDataStore.GetItemsAsync(true);

                foreach (var item in items)
                {
                    Projects.Add(item);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
Example #4
0
        async Task CreateInvasive()
        {
            IsBusyProgress = true;

            if (App.IsInvasive == true)
            {
                Project.IsInvasive = true;
                Project.Id         = Project.InvasiveProjectID;
                var response = await Task.Run(() =>
                                              ProjectDataStore.CreateInvasiveReport(Project)
                                              );

                if (response.Status == ApiResult.Success)
                {
                    App.IsInvasive = true;
                    Project.Id     = response.ID.ToString();

                    //if (Shell.Current.Navigation.NavigationStack[Shell.Current.Navigation.NavigationStack.Count - 1].GetType() != typeof(ProjectDetail))
                    //{
                    await Shell.Current.Navigation.PushAsync(new ProjectDetail()
                    {
                        BindingContext = new ProjectDetailViewModel()
                        {
                            Project = Project
                        }
                    });

                    //}
                    IsBusyProgress = false;
                    //  await Shell.Current.Navigation.PopAsync();
                }
            }
            else
            {
                Project.IsInvasive = false;
                // Project.Id = Project.InvasiveProjectID;
                var response = await Task.Run(() =>
                                              ProjectDataStore.CreateInvasiveReport(Project)
                                              );

                if (response.Status == ApiResult.Success)
                {
                    App.IsInvasive = true;
                    Project.Id     = response.ID.ToString();
                    await Shell.Current.Navigation.PushAsync(new ProjectDetail()
                    {
                        BindingContext = new ProjectDetailViewModel()
                        {
                            Project = Project
                        }
                    });

                    IsBusyProgress = false;
                    //  await Shell.Current.Navigation.PopAsync();
                }
            }
        }
Example #5
0
        private async Task <bool> Running()
        {
            if (string.IsNullOrEmpty(Project.Id))
            {
                // Project.Id = Guid.NewGuid().ToString();

                //Project.
                Project.ProjectType = ProjectType;
                // Project.CreatedOn = DateTime.Now.ToString("MMM dd,yyyy");
                Response result = await ProjectDataStore.AddItemAsync(Project);


                Project = JsonConvert.DeserializeObject <Project>(result.Data.ToString());

                return(await Task.FromResult(true));
            }
            else
            {
                await ProjectDataStore.AddItemAsync(project);

                return(await Task.FromResult(true));
            }
        }
Example #6
0
        private async Task Delete()
        {
            var result = await Shell.Current.DisplayAlert(
                "Alert",
                "Are you sure you want to remove?",
                "Yes", "No");

            if (result)
            {
                IsBusyProgress = true;
                var response = await Task.Run(() =>
                                              ProjectDataStore.DeleteItemAsync(Project)
                                              );

                if (response.Status == ApiResult.Success)
                {
                    IsBusyProgress = false;
                    await Shell.Current.Navigation.PopAsync();
                }
                // Shell.Current.Navigation.RemovePage(new BuildingLocationDetail());

                // await Shell.Current.Navigation.PushAsync(new ProjectDetail() { BindingContext = new ProjectDetailViewModel() { Project = project } });
            }
        }
 private async Task <bool> Running()
 {
     IsBusyProgress = true;
     AllProjects    = new ObservableCollection <Project>(await ProjectDataStore.GetItemsAsync(true));
     return(await Task.FromResult(true));
 }
Example #8
0
        async Task <bool> Running()
        {
            if (App.IsInvasive)
            {
                IsInvasiveControlDisable = true;
            }
            Project = await ProjectDataStore.GetItemAsync(Project.Id);

            //if(Project.IsInvasive==true)
            //{
            //    IsCreateOrRefreshInvasive = true;
            //}
            //else
            //{
            //    IsCreateOrRefreshInvasive = false;
            //}
            if (App.LogUser.RoleName == "Admin")
            {
                if (Project.ProjectType != "Invasive")
                {
                    if (Project.IsInvaisveExist == true)
                    {
                        CanInvasiveCreate = true;
                        BtnInvasiveText   = "Invasive";
                    }
                }
                else
                {
                    if (Project.IsAccess == true)
                    {
                        CanInvasiveCreate = true;
                        BtnInvasiveText   = "Refresh";
                    }
                    else
                    {
                        CanInvasiveCreate = false;
                    }
                }
                //if(Project.ProjectType== "Invasive")
                //{
                //    CanInvasiveCreate = true;
                //}
                //else if(Project.IsInvaisveExist==true)
                //{
                //    CanInvasiveCreate = true;
                //}
                //else
                //{
                //    CanInvasiveCreate = false;
                //}
                //else
                //{
                //    if (Project.IsInvaisveExist == true)
                //    {
                //        CanInvasiveCreate = false;
                //    }
                //    else
                //    {
                //        CanInvasiveCreate = true;
                //    }
                //}
                IsEditDeleteAccess = true;
            }
            else if (Project.UserId == App.LogUser.Id.ToString())
            {
                if (Project.ProjectType != "Invasive")
                {
                    if (Project.IsInvaisveExist == true)
                    {
                        CanInvasiveCreate = true;
                        BtnInvasiveText   = "Invasive";
                    }
                }
                else
                {
                    if (Project.IsAccess == true)
                    {
                        CanInvasiveCreate = true;
                        BtnInvasiveText   = "Refresh";
                    }
                    else
                    {
                        CanInvasiveCreate = false;
                    }
                }
                //if (Project.ProjectType == "Invasive" )
                //{
                //    CanInvasiveCreate = true;
                //}
                //else if (Project.IsInvaisveExist == true)
                //{
                //    CanInvasiveCreate = true;
                //}
                //else
                //{
                //    if (Project.IsInvaisveExist == false)
                //    {
                //        CanInvasiveCreate = true;
                //    }
                //    else
                //    {
                //        CanInvasiveCreate = false;
                //    }
                //}
                IsEditDeleteAccess = true;
            }
            else
            {
                if (Project.ProjectType != "Invasive" && Project.IsAccess)
                {
                    if (Project.IsInvaisveExist == true)
                    {
                        CanInvasiveCreate = true;
                        BtnInvasiveText   = "Invasive";
                    }
                }
                if (Project.ProjectType == "Invasive" && Project.IsAccess)
                {
                    CanInvasiveCreate = true;
                    BtnInvasiveText   = "Refresh";
                }
            }


            ProjectLocationItems = new ObservableCollection <ProjectLocation>(await ProjectLocationDataStore.GetItemsAsyncByProjectID(Project.Id));
            ProjectBuildingItems = new ObservableCollection <ProjectBuilding>(await ProjectBuildingDataStore.GetItemsAsyncByProjectID(Project.Id));

            return(await Task.FromResult(true));
        }