|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356 |
- using Learun.Application.Base.SystemModule;
- using Learun.Util;
- using System.Collections.Generic;
- using System.Web.Mvc;
-
- namespace Learun.Application.Web.Areas.LR_SystemModule.Controllers
- {
- /// <summary>
- /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
- /// Copyright (c) 2013-2018 北京泉江科技有限公司
- /// 创建人:陈彬彬
- /// 日 期:2017.03.09
- /// 描 述:功能模块控制器
- /// </summary>
- public class ModuleController : MvcControllerBase
- {
- #region 模块对象
- private ModuleIBLL moduleIBLL = new ModuleBLL();
- #endregion
-
- #region 视图
- /// <summary>
- /// 功能模块管理视图
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Index()
- {
- return View();
- }
- /// <summary>
- /// 表单页面
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Form() {
- return View();
- }
- #endregion
-
- #region 功能模块
- /// <summary>
- /// 获取功能模块数据列表
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetModuleList()
- {
- var data = moduleIBLL.GetModuleList();
- return this.JsonResult(data);
- }
- /// <summary>
- /// 获取树形数据
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetModuleTree()
- {
- var data = moduleIBLL.GetModuleTree();
- return this.JsonResult(data);
- }
- /// <summary>
- /// 获取树形数据(带勾选框)
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetModuleCheckTree()
- {
- var data = moduleIBLL.GetModuleCheckTree();
- return this.JsonResult(data);
- }
- /// <summary>
- /// 获取功能列表的树形数据(只有展开项)
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetExpendModuleTree()
- {
- var data = moduleIBLL.GetExpendModuleTree();
- return this.JsonResult(data);
- }
- /// <summary>
- /// 获取列表数据根据父级id
- /// </summary>
- /// <param name="parentId">父级id</param>
- /// <param name="type">功能类型</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetModuleListByParentId(string keyword, string parentId)
- {
- var jsondata = moduleIBLL.GetModuleListByParentId(keyword, parentId);
- return this.JsonResult(jsondata);
- }
-
- /// <summary>
- /// 获取树形数据(带勾选框)
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetCheckTree()
- {
- var moduleList = moduleIBLL.GetModuleCheckTree();
- var buttonList = moduleIBLL.GetButtonCheckTree();
- var columnList = moduleIBLL.GetColumnCheckTree();
- //var formList = moduleIBLL.GetFormCheckTree();
-
-
- var jsonData = new
- {
- moduleList,
- buttonList,
- columnList
- //formList
- };
-
- return this.JsonResult(jsonData);
- }
- /// <summary>
- /// 获取树形数据(带勾选框)--系统模块
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetCheckTreeForModuleList()
- {
- var moduleList = moduleIBLL.GetModuleCheckTree();
-
- var jsonData = new
- {
- moduleList,
- };
-
- return this.JsonResult(jsonData);
- }
- /// <summary>
- /// 获取树形数据(带勾选框)--系统按钮
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetCheckTreeForButtonList()
- {
- var buttonList = moduleIBLL.GetButtonCheckTree();
-
- var jsonData = new
- {
- buttonList,
- };
-
- return this.JsonResult(jsonData);
- }
- /// <summary>
- /// 获取树形数据(带勾选框)--系统视图
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetCheckTreeForColumnList()
- {
- var columnList = moduleIBLL.GetColumnCheckTree();
-
- var jsonData = new
- {
- columnList
- //formList
- };
-
- return this.JsonResult(jsonData);
- }
- #endregion
-
- #region 模块按钮
- /// <summary>
- /// 获取功能模块按钮数据列表
- /// </summary>
- /// <param name="moduleId">模块主键</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetButtonListNoAuthorize(string moduleId)
- {
- var data = moduleIBLL.GetButtonListNoAuthorize(moduleId);
- return this.JsonResult(data);
- }
- /// <summary>
- /// 获取功能模块按钮数据列表
- /// </summary>
- /// <param name="moduleId">模块主键</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetButtonList(string moduleId)
- {
- var data = moduleIBLL.GetButtonList(moduleId);
- return this.JsonResult(data);
- }
- /// <summary>
- /// 获取树形数据(带勾选框)
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetButtonCheckTree()
- {
- var data = moduleIBLL.GetButtonCheckTree();
- return this.JsonResult(data);
- }
- #endregion
-
- #region 模块视图
- /// <summary>
- /// 获取功能模块视图数据列表
- /// </summary>
- /// <param name="moduleId">模块主键</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetColumnList(string moduleId)
- {
- var data = moduleIBLL.GetColumnList(moduleId);
- return this.JsonResult(data);
- }
- /// <summary>
- /// 获取树形数据(带勾选框)
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetColumnCheckTree()
- {
- var data = moduleIBLL.GetColumnCheckTree();
- return this.JsonResult(data);
- }
- #endregion
-
- #region 获取数据
- /// <summary>
- /// 获取表单数据
- /// </summary>
- /// <param name="keyValue">主键</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetFormData(string keyValue)
- {
- var module = moduleIBLL.GetModuleEntity(keyValue);
- var btns = moduleIBLL.GetButtonList(keyValue);
- var cols = moduleIBLL.GetColumnList(keyValue);
- var fields = moduleIBLL.GetFormList(keyValue);
- var jsondata = new
- {
- moduleEntity = module,
- moduleButtons = btns,
- moduleColumns = cols,
- moduleFields = fields
- };
- return this.JsonResult(jsondata);
- }
-
- #endregion
-
- #region 提交数据
- /// <summary>
- /// 保存功能表单
- /// </summary>
- /// <param name="keyValue">主键值</param>
- /// <param name="moduleEntity">功能实体</param>
- /// <param name="moduleButtonListJson">按钮实体列表</param>
- /// <param name="moduleColumnListJson">视图实体列表</param>
- /// <param name="moduleFormListJson">表单字段列表</param>
- /// <returns></returns>
- [HttpPost]
- [ValidateAntiForgeryToken]
- [AjaxOnly]
- public ActionResult SaveForm(string keyValue, string moduleEntityJson, string moduleButtonListJson, string moduleColumnListJson,string moduleFormListJson)
- {
- var moduleButtonList = moduleButtonListJson.ToList<ModuleButtonEntity>();
- var moduleColumnList = moduleColumnListJson.ToList<ModuleColumnEntity>();
- var moduleFormList = moduleFormListJson.ToList<ModuleFormEntity>();
- var moduleEntity = moduleEntityJson.ToObject<ModuleEntity>();
-
- moduleIBLL.SaveEntity(keyValue, moduleEntity, moduleButtonList, moduleColumnList, moduleFormList);
- return Success("保存成功。");
- }
- /// <summary>
- /// 删除表单数据
- /// </summary>
- /// <param name="keyValue">主键</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult DeleteForm(string keyValue)
- {
- bool res = moduleIBLL.Delete(keyValue);
- if (res)
- {
- return Success("删除成功。");
- }
- else
- {
- return Fail("有子节点无法删除。");
- }
- }
- #endregion
-
- #region 权限数据
- /// <summary>
- /// 获取权限按钮和列表信息
- /// </summary>
- /// <param name="url">页面地址</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetAuthorizeButtonColumnList(string url)
- {
- Dictionary<string, string> dicButton = new Dictionary<string, string>();
- Dictionary<string, string> dicColumn = new Dictionary<string, string>();
-
- ModuleEntity moduleEntity = moduleIBLL.GetModuleByUrl(url);
-
- if (moduleEntity != null)
- {
- List<ModuleButtonEntity> buttonList = moduleIBLL.GetButtonList(moduleEntity.F_ModuleId);
- foreach (var item in buttonList)
- {
- if (!dicButton.ContainsKey(item.F_EnCode))
- {
- dicButton.Add(item.F_EnCode, item.F_FullName);
- }
- }
- List<ModuleColumnEntity> columnList = moduleIBLL.GetColumnList(moduleEntity.F_ModuleId);
- foreach (var item in columnList)
- {
- if (!dicColumn.ContainsKey(item.F_EnCode))
- {
- dicColumn.Add(item.F_EnCode.ToLower(), item.F_FullName);
- }
- }
- }
- var jsonData = new
- {
- module = moduleEntity,
- btns = dicButton,
- cols = dicColumn
- };
- return this.JsonResult(jsonData);
- }
- #endregion
- }
- }
|