private async void OnSelectEmployee(UserDto obj) { if (IsBusy) { return; } IsBusy = true; try { // Thuc hien cong viec tai day ListEmployeeBindProp.ToList().ForEach(c => c.IsSelected = false); var id = Xamarin.Essentials.Preferences.Get("token", string.Empty); if (obj.Id == Guid.Parse(id)) { IsSelfBindProp = true; } else { IsSelfBindProp = false; } obj.IsSelected = true; EmployeeBindProp = obj; } catch (Exception e) { await ShowErrorAsync(e); } finally { IsBusy = false; } }
public override void OnNavigatedTo(INavigationParameters parameters) { base.OnNavigatedTo(parameters); switch (parameters.GetNavigationMode()) { case NavigationMode.Back: if (parameters.ContainsKey(Keys.EMPLOYEE)) { var employee = parameters[Keys.EMPLOYEE] as VisualEmployeeModel; ListEmployeeBindProp.Add(employee); } break; case NavigationMode.New: GetEmployees(); break; case NavigationMode.Forward: break; case NavigationMode.Refresh: break; } }
private async void OnDelete(object obj) { if (IsBusy) { return; } IsBusy = true; try { // Thuc hien cong viec tai day var ok = await DisplayDeleteAlertAsync(); if (ok) { ListEmployeeBindProp.Remove(EmployeeBindProp); EmployeeBindProp = null; } } catch (Exception e) { await ShowErrorAsync(e); } finally { IsBusy = false; } }
private async void OnDelete(object obj) { if (IsBusy) { return; } IsBusy = true; try { // Thuc hien cong viec tai day var canDelete = await DisplayDeleteAlertAsync(); if (canDelete) { var employeeLogic = new EmployeeLogic(_dbContext); await employeeLogic.DeleteAsync(SelectedEmployeeBindProp.Id); var deletedEmployee = ListEmployeeBindProp.FirstOrDefault(h => h.Id == SelectedEmployeeBindProp.Id); ListEmployeeBindProp.Remove(deletedEmployee); } } catch (Exception e) { await ShowError(e); } finally { IsBusy = false; } }
public async override void OnNavigatedTo(INavigationParameters parameters) { base.OnNavigatedTo(parameters); switch (parameters.GetNavigationMode()) { case NavigationMode.Back: if (parameters.ContainsKey(nameof(EmployeeBindProp))) { var employee = parameters[nameof(EmployeeBindProp)] as UserDto; ListEmployeeBindProp.Add(employee); } break; case NavigationMode.New: using (var client = new HttpClient()) { var response = await client.GetAsync(Properties.Resources.BaseUrl + "users/"); var id = Xamarin.Essentials.Preferences.Get("token", string.Empty); if (response.IsSuccessStatusCode) { var employees = JsonConvert.DeserializeObject <IEnumerable <UserDto> >(await response.Content.ReadAsStringAsync()); foreach (var employee in employees) { ListEmployeeBindProp.Add(employee); } var em = ListEmployeeBindProp.FirstOrDefault(e => e.Id == Guid.Parse(id)); em.IsSelected = true; EmployeeBindProp = em; IsSelfBindProp = true; } else { await PageDialogService.DisplayAlertAsync("Lỗi", $"{await response.Content.ReadAsStringAsync()}", "Đóng"); } } break; case NavigationMode.Forward: break; case NavigationMode.Refresh: break; default: break; } }