You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

140 lines
4.8 KiB

using NFine.Application.SystemManage;
using NFine.Code;
using NFine.Domain.Entity.SystemManage;
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
namespace NFine.Web.Areas.SystemManage.Controllers
{
public class ModuleButtonController : ControllerBase
{
private ModuleApp moduleApp = new ModuleApp();
private ModuleButtonApp moduleButtonApp = new ModuleButtonApp();
[HttpGet]
[HandlerAjaxOnly]
public ActionResult GetTreeSelectJson(string moduleId)
{
var data = moduleButtonApp.GetList(moduleId);
var treeList = new List<TreeSelectModel>();
foreach (ModuleButtonEntity item in data)
{
TreeSelectModel treeModel = new TreeSelectModel();
treeModel.id = item.F_Id;
treeModel.text = item.F_FullName;
treeModel.parentId = item.F_ParentId;
treeList.Add(treeModel);
}
return Content(treeList.TreeSelectJson());
}
[HttpGet]
[HandlerAjaxOnly]
public ActionResult GetTreeGridJson(string moduleId)
{
var data = moduleButtonApp.GetList(moduleId);
var treeList = new List<TreeGridModel>();
foreach (ModuleButtonEntity item in data)
{
TreeGridModel treeModel = new TreeGridModel();
bool hasChildren = data.Count(t => t.F_ParentId == item.F_Id) == 0 ? false : true;
treeModel.id = item.F_Id;
treeModel.isLeaf = hasChildren;
treeModel.parentId = item.F_ParentId;
treeModel.expanded = hasChildren;
treeModel.entityJson = item.ToJson();
treeList.Add(treeModel);
}
return Content(treeList.TreeGridJson());
}
[HttpGet]
[HandlerAjaxOnly]
public ActionResult GetFormJson(string keyValue)
{
var data = moduleButtonApp.GetForm(keyValue);
return Content(data.ToJson());
}
[HttpPost]
[HandlerAjaxOnly]
[ValidateAntiForgeryToken]
public ActionResult SubmitForm(ModuleButtonEntity moduleButtonEntity, string keyValue)
{
moduleButtonApp.SubmitForm(moduleButtonEntity, keyValue);
return Success("操作成功。");
}
[HttpPost]
[HandlerAjaxOnly]
[ValidateAntiForgeryToken]
public ActionResult DeleteForm(string keyValue)
{
moduleButtonApp.DeleteForm(keyValue);
return Success("删除成功。");
}
[HttpGet]
public ActionResult CloneButton()
{
return View();
}
[HttpGet]
[HandlerAjaxOnly]
public ActionResult GetCloneButtonTreeJson()
{
var moduledata = moduleApp.GetList();
var buttondata = moduleButtonApp.GetList();
var treeList = new List<TreeViewModel>();
foreach (ModuleEntity item in moduledata)
{
TreeViewModel tree = new TreeViewModel();
bool hasChildren = moduledata.Count(t => t.F_ParentId == item.F_Id) == 0 ? false : true;
tree.id = item.F_Id;
tree.text = item.F_FullName;
tree.value = item.F_EnCode;
tree.parentId = item.F_ParentId;
tree.isexpand = true;
tree.complete = true;
tree.hasChildren = true;
treeList.Add(tree);
}
foreach (ModuleButtonEntity item in buttondata)
{
TreeViewModel tree = new TreeViewModel();
bool hasChildren = buttondata.Count(t => t.F_ParentId == item.F_Id) == 0 ? false : true;
tree.id = item.F_Id;
tree.text = item.F_FullName;
tree.value = item.F_EnCode;
if (item.F_ParentId == "0")
{
tree.parentId = item.F_ModuleId;
}
else
{
tree.parentId = item.F_ParentId;
}
tree.isexpand = true;
tree.complete = true;
tree.showcheck = true;
tree.hasChildren = hasChildren;
if (item.F_Icon != "")
{
tree.img = item.F_Icon;
}
treeList.Add(tree);
}
return Content(treeList.TreeViewJson());
}
[HttpPost]
[HandlerAjaxOnly]
public ActionResult SubmitCloneButton(string moduleId, string Ids)
{
moduleButtonApp.SubmitCloneButton(moduleId, Ids);
return Success("克隆成功。");
}
}
}