127 lines
3.7 KiB
C#
127 lines
3.7 KiB
C#
using EgwCoreLib.Razor;
|
|
using Microsoft.AspNetCore.Components;
|
|
using MP.Data.DbModels;
|
|
using MP.Data.Services;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
|
|
namespace MP.Land.Components
|
|
{
|
|
public partial class DbInfoMan
|
|
{
|
|
#region Protected Properties
|
|
|
|
[Inject]
|
|
protected LandDataService LDService { get; set; }
|
|
|
|
protected List<DbSizeModel> ListRecord { get; set; } = new List<DbSizeModel>();
|
|
|
|
#endregion Protected Properties
|
|
|
|
#region Protected Methods
|
|
|
|
protected override void OnParametersSet()
|
|
{
|
|
ReloadData();
|
|
}
|
|
|
|
protected void SortRequested(Sorter.SortCallBack e)
|
|
{
|
|
if (sortField == e.ParamName)
|
|
{
|
|
sortAsc = e.IsAscending;
|
|
}
|
|
sortField = e.ParamName;
|
|
RefreshDisplay();
|
|
}
|
|
|
|
#endregion Protected Methods
|
|
|
|
#region Private Fields
|
|
|
|
private bool sortAsc = true;
|
|
|
|
private string sortField = "";
|
|
|
|
#endregion Private Fields
|
|
|
|
#region Private Methods
|
|
|
|
private void RefreshDisplay()
|
|
{
|
|
// se ho ordinamento riordino...
|
|
if (!string.IsNullOrEmpty(sortField))
|
|
{
|
|
switch (sortField)
|
|
{
|
|
case "DbName":
|
|
if (sortAsc)
|
|
{
|
|
ListRecord = ListRecord.OrderBy(x => x.DbName).ToList();
|
|
}
|
|
else
|
|
{
|
|
ListRecord = ListRecord.OrderByDescending(x => x.DbName).ToList();
|
|
}
|
|
break;
|
|
|
|
case "DbSizeMb":
|
|
if (sortAsc)
|
|
{
|
|
ListRecord = ListRecord.OrderBy(x => x.DbSizeMb).ToList();
|
|
}
|
|
else
|
|
{
|
|
ListRecord = ListRecord.OrderByDescending(x => x.DbSizeMb).ToList();
|
|
}
|
|
break;
|
|
|
|
case "NumTable":
|
|
if (sortAsc)
|
|
{
|
|
ListRecord = ListRecord.OrderBy(x => x.NumTables).ToList();
|
|
}
|
|
else
|
|
{
|
|
ListRecord = ListRecord.OrderByDescending(x => x.NumTables).ToList();
|
|
}
|
|
break;
|
|
|
|
case "BigTable":
|
|
if (sortAsc)
|
|
{
|
|
ListRecord = ListRecord.OrderBy(x => x.BigTable).ToList();
|
|
}
|
|
else
|
|
{
|
|
ListRecord = ListRecord.OrderByDescending(x => x.BigTable).ToList();
|
|
}
|
|
break;
|
|
|
|
case "BigTableRows":
|
|
if (sortAsc)
|
|
{
|
|
ListRecord = ListRecord.OrderBy(x => x.BigTableRows).ToList();
|
|
}
|
|
else
|
|
{
|
|
ListRecord = ListRecord.OrderByDescending(x => x.BigTableRows).ToList();
|
|
}
|
|
break;
|
|
|
|
default:
|
|
ListRecord = ListRecord.OrderBy(x => x.DbName).ToList();
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
private void ReloadData()
|
|
{
|
|
ListRecord = LDService.AllDbInfo();
|
|
}
|
|
|
|
#endregion Private Methods
|
|
}
|
|
} |