Exemple #1
0
        public FilterEmployeePostListView(bool isCommitment, bool isCompany = false, string keyword = null)
        {
            InitializeComponent();
            this.BindingContext = viewModel = new ListViewPageViewModel2 <Post>();
            this.KeyWord        = keyword;
            string BaseUrl = string.Empty;

            if (isCompany)
            {
                BaseUrl = $"{ApiRouter.COMPANY_GETPOSTLIST}?CompanyId={UserLogged.CompanyId}&Status=2&isCommitment={isCommitment}";
            }
            else
            {
                BaseUrl = $"{ApiRouter.EMPLOYEE_GETMYPOSTLIST}?isCommitment={isCommitment}";
            }

            viewModel.PreLoadData = new Command(() =>
            {
                string URL = $"{BaseUrl}&page={viewModel.Page}";
                if (!string.IsNullOrWhiteSpace(KeyWord))
                {
                    URL += $"&keyword={KeyWord}";
                }
                viewModel.ApiUrl = URL;
            });
            Init();
        }
 public AllCompanyPostListPage()
 {
     InitializeComponent();
     this.BindingContext = viewModel = new ListViewPageViewModel2 <Post>()
     {
         PreLoadData = new Command(() => viewModel.ApiUrl = $"{ApiRouter.POST_GETBYALLCOMPANIES}?page={viewModel.Page}")
     };
     Init();
 }
 public AllCompanyProjectListPage()
 {
     InitializeComponent();
     this.BindingContext = viewModel = new ListViewPageViewModel2 <Project>()
     {
         PreLoadData = new Command(() => viewModel.ApiUrl = $"api/project/companies?page={viewModel.Page}")
     };
     Init();
 }
Exemple #4
0
        public async void AddProduct_Clicked(object sender, EventArgs e)
        {
            if (!UserLogged.IsLogged)
            {
                await DisplayAlert("", Language.vui_long_dang_nhap, Language.dong);

                ((AppShell)Shell.Current).SetLoginPageActive();
                return;
            }

            var action = await Shell.Current.DisplayActionSheet(Language.tuy_chon, Language.huy, null, Language.them_moi_san_pham, Language.chon_tu_san_pham_noi_that);

            if (action == Language.them_moi_san_pham)
            {
                await Navigation.PushAsync(new AddProductPage(true) { Title = Language.them_san_pham });
            }
            else if (action == Language.chon_tu_san_pham_noi_that)
            {
                loadingPopup.IsVisible = true;

                if (searchPageResultViewModel == null) // chua bat popup lan nao.
                {
                    this.ListView0.ItemTapped += ListView0_ItemTapped;
                    searchPageResultViewModel  = new ListViewPageViewModel2 <SundihomeApi.Entities.Furniture.FurnitureProduct>();



                    FilterModel = new FilterFurnitureProductModel();
                    FilterModel.ProductStatus = 0;
                    FilterModel.IsPromotion   = false;
                    FilterModel.CreatedById   = Guid.Parse(UserLogged.Id);
                    string json = Newtonsoft.Json.JsonConvert.SerializeObject(this.FilterModel);

                    searchPageResultViewModel.PreLoadData = new Command(() =>
                    {
                        searchPageResultViewModel.ApiUrl = $"{Configuration.ApiRouter.FURNITUREPRODUCT_FILTER}?json={json}&page={searchPageResultViewModel.Page}";
                    });


                    this.ListView0.BindingContext = searchPageResultViewModel;
                }
                else
                {
                    Keyword = null;
                    ModalPopupSearchBar.Text = null;
                }
                await searchPageResultViewModel.LoadOnRefreshCommandAsync();

                loadingPopup.IsVisible = false;
                ModalPopup.IsVisible   = true;
                await ModalPopup.TranslateTo(0, 0, 150);
            }
        }
Exemple #5
0
 public ProductListContentView(Guid companyId, bool IsMyCompnay)
 {
     InitializeComponent();
     _companyId            = companyId;
     this.BindingContext   = viewModel = new ListViewPageViewModel2 <FurnitureProduct>();
     viewModel.PreLoadData = new Command(() =>
     {
         string Url = $"{ApiRouter.FURNITUREPRODUCT_GET_PRODUCT_COMPANY}/{_companyId}?page={viewModel.Page}";
         if (!string.IsNullOrWhiteSpace(Keyword))
         {
             Url += $"&keyword={Keyword}";
         }
         viewModel.ApiUrl = Url;
     });
     Init();
 }
Exemple #6
0
 public CompanyProjectListContentView(Guid CompanyId)
 {
     InitializeComponent();
     _companyId          = CompanyId;
     this.BindingContext = viewModel = new ListViewPageViewModel2 <Project>()
     {
         PreLoadData = new Command(() =>
         {
             string Url = ApiRouter.PROJECT_GET_BYCOMPANYID + "/" + CompanyId + "?page=" + viewModel.Page;
             if (!string.IsNullOrWhiteSpace(Keyword))
             {
                 Url += $"&keyword={Keyword}";
             }
             viewModel.ApiUrl = Url;
         })
     };
     Init();
 }
        public CompanyPostListContentView(Guid companyId)
        {
            InitializeComponent();

            this.BindingContext = viewModel = new ListViewPageViewModel2 <Post>()
            {
                PreLoadData = new Command(() =>
                {
                    string url = $"{ApiRouter.POST_GETBYCOMPANY}/{companyId}?page={viewModel.Page}";
                    if (!string.IsNullOrWhiteSpace(Keyword))
                    {
                        url += $"&keyword={Keyword}";
                    }
                    viewModel.ApiUrl = url;
                })
            };

            Init();
        }
Exemple #8
0
        private async void PickerPost_Clicked(object sender, EventArgs e)
        {
            loadingPopup.IsVisible = true;


            if (searchPageResultViewModel == null) // chua bat popup lan nao.
            {
                this.ListView0.ItemTapped    += ListView0_ItemTapped;
                searchPageResultViewModel     = new ListViewPageViewModel2 <SundihomeApi.Entities.Post>();
                this.ListView0.BindingContext = searchPageResultViewModel;
            }
            else
            {
                viewModel.PostKeyword    = null;
                ModalPopupSearchBar.Text = null;
            }
            LoaiHinh_Change(null, EventArgs.Empty);
            loadingPopup.IsVisible = false;
            await ModalPickPost.Show();
        }
        public ContactPostCareContent(Guid contactId, bool isCompany)
        {
            InitializeComponent();
            _contactId                      = contactId;
            _isCompany                      = isCompany;
            this.BindingContext             = viewModel = new ListViewPageViewModel2 <SundihomeApi.Entities.Post>();
            radSegmentedControl.ItemsSource = new string[] { Language.cua_toi, Language.cong_ty };
            if (_isCompany)
            {
                radSegmentedControl.IsVisible     = false;
                radSegmentedControl.SelectedIndex = 1;
            }
            if (string.IsNullOrEmpty(UserLogged.CompanyId))
            {
                radSegmentedControl.IsVisible = false;
            }

            viewModel.PreLoadData = new Command(() =>
            {
                viewModel.ApiUrl = $"{ApiRouter.CONTACT_GET_POSTCARES}/{contactId}?page={viewModel.Page}";
            });
            Init();
        }
        private async void LoaiHinh_Change(object sender, EventArgs e)
        {
            if (searchPageResultViewModel == null)
            {
                return;
            }
            var index = radSegmentedControl.SelectedIndex;

            if (index == 0)
            {
                searchPageResultViewModel.PreLoadData = new Command(() =>
                {
                    searchPageResultViewModel.ApiUrl = ApiRouter.EMPLOYEE_GETMYPOSTLIST + $"?Keyword={Keyword}&page={searchPageResultViewModel.Page}";
                });
            }
            else
            {
                if (searchPageResultViewModel == null) // chua bat popup lan nao.
                {
                    this.ListView0.ItemTapped    += ListView0_ItemTapped;
                    searchPageResultViewModel     = new ListViewPageViewModel2 <SundihomeApi.Entities.Post>();
                    this.ListView0.BindingContext = searchPageResultViewModel;
                }
                searchPageResultViewModel.PreLoadData = new Command(() =>
                {
                    if (_isCompany)
                    {
                        searchPageResultViewModel.ApiUrl = ApiRouter.COMPANY_GETPOSTLIST + $"?CompanyId={UserLogged.CompanyId}&Keyword={Keyword}&page={searchPageResultViewModel.Page}&Status=-1";
                    }
                    else
                    {
                        searchPageResultViewModel.ApiUrl = ApiRouter.COMPANY_GETPOSTLIST + $"?CompanyId={UserLogged.CompanyId}&Keyword={Keyword}&page={searchPageResultViewModel.Page}&Status=2";
                    }
                });
            }
            await searchPageResultViewModel.LoadOnRefreshCommandAsync();
        }
        private async void PickerPost_Clicked(object sender, EventArgs e)
        {
            loadingPopup.IsVisible = true;
            if (searchPageResultViewModel == null) // chua bat popup lan nao.
            {
                this.ListView0.ItemTapped            += ListView0_ItemTapped;
                searchPageResultViewModel             = new ListViewPageViewModel2 <SundihomeApi.Entities.Post>();
                searchPageResultViewModel.PreLoadData = new Command(() =>
                {
                    searchPageResultViewModel.ApiUrl = ApiRouter.COMPANY_GETPOSTLIST + $"?CompanyId={UserLogged.CompanyId}&page={searchPageResultViewModel.Page}&Keyword={viewModel.PostKeyword}&Status=2";
                });

                this.ListView0.BindingContext = searchPageResultViewModel;
                await searchPageResultViewModel.LoadData();
            }
            else
            {
                viewModel.PostKeyword    = null;
                ModalPopupSearchBar.Text = null;
                await searchPageResultViewModel.LoadOnRefreshCommandAsync();
            }
            loadingPopup.IsVisible = false;
            await ModalPickerPost.Show();
        }
        public async void Init()
        {
            segment.ItemsSource = new List <string> {
                Language.nhu_cau, Language.moi, Language.dau_tu, Language.da_mua
            };
            segment.SetActive(0);
            LvData.ItemTapped += LvData_ItemTapped;
            MessagingCenter.Subscribe <ContactDetailContent>(this, "ReloadData", async(sender) =>
            {
                loadingPopup.IsVisible = true;
                await viewModel.LoadOnRefreshCommandAsync();
                loadingPopup.IsVisible = false;
            });
            MessagingCenter.Subscribe <ContactDetailContent, Guid>(this, "DeleteContact", async(sender, ContactId) =>
            {
                loadingPopup.IsVisible = true;
                if (viewModel.Data.Any(x => x.Id == ContactId))
                {
                    await viewModel.LoadOnRefreshCommandAsync();
                }
                await viewModelContactNeed.LoadOnRefreshCommandAsync();
                loadingPopup.IsVisible = false;
            });
            MessagingCenter.Subscribe <AddContactNeedContent>(this, "AddContactNeed", async(sender) =>
            {
                loadingPopup.IsVisible = true;
                await viewModelContactNeed.LoadOnRefreshCommandAsync();
                loadingPopup.IsVisible = false;
            });
            MessagingCenter.Subscribe <AddContactNeedContent, Guid>(this, "UpdateContactNeed", async(sender, ContactNeedId) =>
            {
                loadingPopup.IsVisible = true;
                if (viewModelContactNeed.Data.Any(x => x.Id == ContactNeedId))
                {
                    await viewModelContactNeed.LoadOnRefreshCommandAsync();
                }
                loadingPopup.IsVisible = false;
            });
            MessagingCenter.Subscribe <AddContactNeedContent, ContactNeed>(this, "DeleteContactNeed", async(sender, ContactNeed) =>
            {
                loadingPopup.IsVisible = true;
                if (viewModelContactNeed.Data.Any(x => x.Id == ContactNeed.Id))
                {
                    viewModelContactNeed.Data.Remove(ContactNeed);
                }
                loadingPopup.IsVisible = false;
            });
            MessagingCenter.Subscribe <AddContactNeedContentViewModel, ContactNeed>(this, "DeleteContactNeed", async(sender, ContactNeed) =>
            {
                loadingPopup.IsVisible = true;
                if (viewModelContactNeed.Data.Any(x => x.Id == ContactNeed.Id))
                {
                    viewModelContactNeed.Data.Remove(ContactNeed);
                }
                loadingPopup.IsVisible = false;
            });

            viewModel.GroupList = Models.ContactGroupModel.GetList();
            ModalAddContact.CustomCloseButton(OnBtnCancelAddContact_Click);

            contactNeedFilterModel = new ContactNeedFilterModel();
            if (viewModel.CompanyId.HasValue)
            {
                contactNeedFilterModel.CompanyId = viewModel.CompanyId.Value;
            }
            if (viewModel.CreatedById.HasValue)
            {
                contactNeedFilterModel.CreatedById = viewModel.CreatedById.Value;
            }
            if (viewModel.Keyword != null)
            {
                contactNeedFilterModel.Keyword = viewModel.Keyword;
            }
            string json = Newtonsoft.Json.JsonConvert.SerializeObject(contactNeedFilterModel);

            viewModelContactNeed = new ListViewPageViewModel2 <ContactNeed>()
            {
                PreLoadData = new Command(() =>
                {
                    string url;
                    contactNeedFilterModel.Keyword = viewModel.Keyword;
                    url = ApiRouter.COMPANY_GET_FILTER_CONTACTNEEDS + $"?json={json}" + $"&page={viewModelContactNeed.Page}";


                    viewModelContactNeed.ApiUrl = url;
                })
            };
            LvDataContactNeed.BindingContext = viewModelContactNeed;
            LvDataContactNeed.ItemTapped    += LvDataContactNeed_ItemTapped;
            await viewModelContactNeed.LoadData();

            loadingPopup.IsVisible = false;
        }