using AntDesign.TableModels;
using EasyTemplate.Tool;
using Microsoft.JSInterop;
using SqlSugar;
namespace EasyTemplate.Blazor.Web.Components.Pages.Management.Department;
public partial class Department
{
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
await NavigationManager.RedirectLogin(IJSRuntime);
//await Query();
}
}
///
/// 查
///
///
private async Task Query()
{
Loading = true;
RefAsync total = 0;
var res = await _repository.AsQueryable()
.WhereIF(!string.IsNullOrWhiteSpace(Q_Name), x => x.Name.Contains(Q_Name))
.OrderByDescending(x => x.Id)
.ToPageListAsync(Pi, Ps, total);
Total = total.Value;
DataSource = res;
Loading = false;
//_table.ReloadData();
}
///
/// 增/改
///
///
///
private async Task InsertOrUpdate(SystemDepartment data)
=> await _repository.InsertOrUpdateAsync(data);
///
/// 删除
///
///
///
private async Task Delete(SystemDepartment row)
{
if (!await Comfirm($"确认删除 [{row.Name}] ?")) return;
var flag = await _repository.AsUpdateable()
.SetColumns(x => x.IsDelete == true)
.Where(x => x.Id == row.Id)
.ExecuteCommandAsync() > 0;
Table.ReloadData(Pi, Ps);
}
///
/// 重置查询
///
private async Task ResetQuery()
{
Q_Name = string.Empty;
Pi = 1;
await Query();
}
private async Task OnChange(QueryModel query)
=> await Query();
private async Task Search()
{
Pi = 1;
await Query();
}
///
/// 注入实例
///
[Inject] private SqlSugarRepository _repository { get; set; }
///
///
///
[Inject] NavigationManager NavigationManager { get; set; }
///
///
///
[Inject] IJSRuntime IJSRuntime { get; set; }
///
/// 账号
///
private string Q_Name { get; set; }
///
///
///
private ITable Table;
///
///
///
private IEnumerable SelectedRows = [];
///
///
///
private List DataSource;
///
///
///
private int Pi = 1;
///
///
///
private int Ps = 20;
///
///
///
private int Total;
///
///
///
private bool Loading = false;
///
///
///
Func ShowTotal => x => $"总共 {Total} 条";
}