StaffSelect.razor.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using Microsoft.AspNetCore.Components;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Threading.Tasks;
  6. using wispro.sp.entity;
  7. namespace wispro.sp.web.Components
  8. {
  9. public partial class StaffSelect
  10. {
  11. private List<Staff> _Staffs;
  12. private Staff _SelectedItem;
  13. private List<Staff> _ShowStaffs;
  14. [Parameter]
  15. public int? StaffId { get; set; }
  16. [Parameter]
  17. public EventCallback<int?> StaffIdChanged { get; set; }
  18. protected override async System.Threading.Tasks.Task OnInitializedAsync()
  19. {
  20. base.OnInitialized();
  21. _Staffs = await _UserService.GetAll();
  22. _ShowStaffs = _Staffs;
  23. }
  24. private void OnSelectedItemChangedHandler(Staff value)
  25. {
  26. _SelectedItem = value;
  27. StaffIdChanged.InvokeAsync(_SelectedItem.Id);
  28. }
  29. private void OnSearch(string value)
  30. {
  31. _ShowStaffs = _Staffs.Where<Staff>(p => p.Name.Contains(value)).ToList();
  32. StateHasChanged();
  33. }
  34. }
  35. }