using Estsh.Core.Controllers;
using Estsh.Core.IRepositories;
using Estsh.Core.IServices;
using Estsh.Core.Models;
using Estsh.Core.Services.IServices;
using Estsh.Core.Util;
using Microsoft.AspNetCore.Mvc;
using System.Collections;
using System.Text;
/***************************************************************************************************
*
* 更新人:sitong.dong
* 描述:页面功能管理
* 修改时间:2022.06.22
* 修改日志:系统迭代升级
*
**************************************************************************************************/
namespace Estsh.Core.Web.Controllers
{
public class GridColumnController : BaseController
{
//
// GET: /GridColumn/
private IGridColumnService service;
public GridColumnController(IGridColumnService _service)
{
service = _service;
}
public ActionResult Index()
{
return View();
}
///
/// 根据菜单id查询Column
///
///
///
public ActionResult GetColumnByMenuId(int menu_id)
{
return Json(service.GetColumnByMenuId(menu_id));
}
///
/// 根据菜单id和Grid名查询Column
///
///
///
///
public ActionResult GetColumnByMenuIdAndGridId(int menu_id, string grid_name)
{
return Json(service.GetColumnByMenuIdAndGridId(menu_id, grid_name));
}
///
/// 根据Url查询Column
///
///
public ActionResult GetColumnByUrl(string gridName, String enabled = "Y")
{
String path = Request.PathBase;
if (path.EndsWith("/"))
{
path = path.Substring(0, path.Length - 1);
}
Uri? uri = Request.GetTypedHeaders().Referer;
string urlStr = string.Empty;
if (uri != null)
{
urlStr = uri.AbsolutePath;
if (!string.IsNullOrEmpty(path))
{
urlStr = urlStr.Substring(urlStr.LastIndexOf(path) + path.Length);
}
if (uri.AbsoluteUri.Split('?').Length > 1)
{
urlStr = urlStr + "?" + uri.AbsoluteUri.Split('?')[1];
}
}
List colArr = null;
if (string.IsNullOrEmpty(gridName))
{
colArr = service.GetColumnByUrl(urlStr);
}
else
{
colArr = service.GetColumnByUrl(urlStr, gridName);
}
return Json(colArr);
}
}
}