using Microsoft.AspNetCore.Mvc;
using Stardust.Data.Nodes;
using NewLife;
using NewLife.Cube;
using NewLife.Cube.Extensions;
using NewLife.Cube.ViewModels;
using NewLife.Log;
using NewLife.Web;
using XCode.Membership;
using static Stardust.Data.Nodes.NodeLocation;
using System.ComponentModel;
namespace Stardust.Web.Areas.Nodes.Controllers;
/// <summary>节点定ä½ã€‚æ ¹æ®ç½‘å…³IPå’ŒMAC规则,自动匹é…节点所在地ç†ä½ç½®</summary>
[Menu(10, true, Icon = "fa-table")]
[NodesArea]
public class NodeLocationController : NodesEntityController<NodeLocation>
{
static NodeLocationController()
{
//LogOnChange = true;
//ListFields.RemoveField("Id", "Creator");
ListFields.RemoveCreateField().RemoveRemarkField();
}
//private readonly ITracer _tracer;
//public NodeLocationController(ITracer tracer)
//{
// _tracer = tracer;
//}
/// <summary>高级æœç´¢ã€‚按æ¡ä»¶åˆ†é¡µæŸ¥è¯¢èŠ‚ç‚¹å®šä½ä¿¡æ¯</summary>
/// <param name="p">分页器。包å«åˆ†é¡µæŽ’åºå‚数以åŠHttpè¯·æ±‚å‚æ•°</param>
/// <returns>实体列表</returns>
protected override IEnumerable<NodeLocation> Search(Pager p)
{
var name = p["name"];
var enable = p["enable"]?.ToBoolean();
var areaId = p["areaId"].ToInt(-1);
var start = p["dtStart"].ToDateTime();
var end = p["dtEnd"].ToDateTime();
return NodeLocation.Search(name, areaId, enable, start, end, p["Q"], p);
}
}
|