Record.razor.cs 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. using AntDesign.TableModels;
  2. using EasyTemplate.Tool;
  3. using Masuit.Tools;
  4. using Microsoft.AspNetCore.Components;
  5. using Microsoft.JSInterop;
  6. using SqlSugar;
  7. namespace EasyTemplate.Page.Pages;
  8. public partial class Record
  9. {
  10. protected override async Task OnAfterRenderAsync(bool firstRender)
  11. {
  12. if (firstRender)
  13. {
  14. await NavigationManager.RedirectLogin(IJSRuntime);
  15. //await Query();
  16. }
  17. }
  18. /// <summary>
  19. /// 查
  20. /// </summary>
  21. /// <returns></returns>
  22. private async Task Query()
  23. {
  24. Loading = true;
  25. RefAsync<int> total = 0;
  26. var res = await _repository.AsQueryable()
  27. .WhereIF(!string.IsNullOrWhiteSpace(Q_Nozzle), x => x.noz == int.Parse(Q_Nozzle))
  28. .OrderByDescending(x => x.Id)
  29. .ToPageListAsync(Pi, Ps, total);
  30. Total = total.Value;
  31. DataSource = res;
  32. Loading = false;
  33. //_table.ReloadData();
  34. }
  35. /// <summary>
  36. /// 重置查询
  37. /// </summary>
  38. private async Task ResetQuery()
  39. {
  40. Q_Nozzle = string.Empty;
  41. Pi = 1;
  42. await Query();
  43. }
  44. private async Task OnChange(QueryModel<TRecord> query)
  45. => await Query();
  46. private async Task Search()
  47. {
  48. Pi = 1;
  49. await Query();
  50. }
  51. /// <summary>
  52. /// 注入实例
  53. /// </summary>
  54. [Inject] private SqlSugarRepository<TRecord> _repository { get; set; }
  55. /// <summary>
  56. ///
  57. /// </summary>
  58. [Inject] NavigationManager NavigationManager { get; set; }
  59. /// <summary>
  60. ///
  61. /// </summary>
  62. [Inject] IJSRuntime IJSRuntime { get; set; }
  63. private string Q_Nozzle { get; set; }
  64. /// <summary>
  65. ///
  66. /// </summary>
  67. private ITable Table;
  68. /// <summary>
  69. ///
  70. /// </summary>
  71. private IEnumerable<TRecord> SelectedRows = [];
  72. /// <summary>
  73. ///
  74. /// </summary>
  75. private List<TRecord> DataSource;
  76. /// <summary>
  77. ///
  78. /// </summary>
  79. private int Pi = 1;
  80. /// <summary>
  81. ///
  82. /// </summary>
  83. private int Ps = 20;
  84. /// <summary>
  85. ///
  86. /// </summary>
  87. private int Total;
  88. /// <summary>
  89. ///
  90. /// </summary>
  91. private bool Loading = false;
  92. /// <summary>
  93. ///
  94. /// </summary>
  95. Func<PaginationTotalContext, string> ShowTotal => x => $"总共 {Total} 条";
  96. }