public async void BtnDangSimClicked(object sender, EventArgs e) { var confirm = await DisplayAlert("Xác nhận", "Bạn có muốn bán tất cả sim vừa import không", "Đồng ý", "Đóng"); if (!confirm) { return; } gridLoading.IsVisible = true; ApiResponse response = await ApiHelper.Put("api/sim/postsimlist", _simList.Select(x => x.Id).ToArray()); if (response.IsSuccess) { await Navigation.PopAsync(false); MySimListViewModel mySimListViewModel = Shell.Current.BindingContext as MySimListViewModel; mySimListViewModel.RefreshCommand.Execute(null); XFToast.ShortMessage("Đăng sim thành công"); } else { await DisplayAlert("", response.Message, "Đóng"); } gridLoading.IsVisible = false; }
public async Task Initialize() { this.BindingContext = viewModel = new MySimListViewModel(); if (UserLogged.IsLogged) { //BtnAddVisible.IsVisible = true; //BtnEdit.IsVisible = true; //BtnBuyAll.IsVisible = true; await viewModel.LoadData(); ScrollViewStatus.IsVisible = true; SimListView.ItemTapped += async(object sender, ItemTappedEventArgs e) => { var item = e.Item as Sim; await Shell.Current.Navigation.PushAsync(new PostSim(item.Id)); }; SimListView.ItemAppearing += async(object sender, ItemVisibilityEventArgs e) => { var Sim = e.Item as Sim; if (Sim.Id == viewModel.Data.LastOrDefault().Id) { await viewModel.LoadMoreData(); } }; MessagingCenter.Subscribe <PostSim, string>(this, "DeleteSim", (postSimForm, SimId) => { var simDeleted = viewModel.Data.SingleOrDefault(x => x.Id == SimId); if (simDeleted != null) { viewModel.Data.Remove(simDeleted); } }); } }
private async void BtnPost_Clicked(object sender, EventArgs e) { AddSimViewModel model = viewModel.Sim; if (string.IsNullOrWhiteSpace(model.SimNumber)) { await DisplayAlert("", "Vui lòng nhập số sim", "Đóng"); return; } if (model.SimNumber.Length < 9) { await DisplayAlert("", "Số Sim không đúng định dạng", "Đóng"); return; } if (string.IsNullOrWhiteSpace(model.DisplayNumber)) { await DisplayAlert("", "Vui lòng nhập số sim", "Đóng"); return; } if (model.Carrier == null) { await DisplayAlert("", "Vui lòng chọn nhà mạng", "Đóng"); return; } if (model.Price.HasValue == false) { await DisplayAlert("", "Vui lòng nhập giá sim", "Đóng"); return; } gridLoading.IsVisible = true; Sim sim = new Sim(); sim.SimNumber = model.SimNumber; sim.DisplayNumber = model.DisplayNumber; sim.Price = model.Price.Value; sim.CarrierId = model.Carrier.Id; sim.Description = model.Description; if (model.SubcribeType != null) { sim.SubcribeTypeId = model.SubcribeType.Id; } if (SimId != null) // sửa thì gán thêm id. { sim.Id = SimId; } IEnumerable <NumberType> numberTypes = viewModel.NumberTypeOptions.Where(x => x.IsSelected).Select(x => new NumberType() { Id = x.Id }); AddUpdateSimViewModel addUpdateSimViewModel = new AddUpdateSimViewModel(); addUpdateSimViewModel.Sim = sim; addUpdateSimViewModel.NumberTypes = numberTypes; ApiResponse response = null; if (SimId == null) { response = await ApiHelper.Post("api/sim", addUpdateSimViewModel, true); } else { response = await ApiHelper.Put("api/sim", addUpdateSimViewModel, true); } if (response.IsSuccess) { if (SimId == null) { //MySimList mySimList = ((App.Current.MainPage as MainPage).Children[3] as NavigationPage).RootPage as MySimList; //MySimListViewModel mySimListVM = mySimList.BindingContext as MySimListViewModel; MySimListViewModel mySimListVM = Shell.Current.BindingContext as MySimListViewModel; //mySimListVM.RefreshCommand.Execute(null); //await Navigation.PopAsync(false); await mySimListVM.LoadOnRefreshCommandAsync(); var added = mySimListVM.Data[0]; SimId = added.Id; gridLoading.IsVisible = false; var actionSheet = await DisplayActionSheet("Lưu thành công. Bạn có muốn đăng bán sim này không?", "Để sau", null, "Đăng bán"); if (actionSheet == "Đăng bán") { BtnDangSimClicked(sender, EventArgs.Empty); } else { await Shell.Current.Navigation.PopAsync(); await Shell.Current.Navigation.PushAsync(new PostSim(SimId), false); XFToast.ShortMessage("Lưu thành công !"); } } else { gridLoading.IsVisible = false; XFToast.ShortMessage("Lưu thành công !"); } } else { await DisplayAlert("", response.Message, "Đóng"); gridLoading.IsVisible = false; } }