ibcadmin 发表于 2019-8-13 17:41:22

1. mvc 树形控件tree + 表格jqgrid 显示界面

<p>1.界面显示效果</p>
<p>   <div align="center"></div></p>
<p> </p>
<p>2.资源下载 地址 </p>
<p>1. jstreehttps://www.jstree.com/   2.表格jqgridhttps://blog.mn886.net/jqGrid/3.界面布局https://cloud.tencent.com/developer/section/1489925</p>
<p>3.前端代码</p>
<div align="center"></div><div align="center"></div>

@{
    ViewBag.Title = "系统功能";
    Layout = "~/Views/Shared/_Index.cshtml";
}
<script>
   
    $(function () {
      InitialPage();
      GetTree();
      GetGrid();
    });
    //初始化页面
    function InitialPage() {
      //layout布局
      $('#layout').layout({
            applyDemoStyles: true,
            onresize: function () {
                $(window).resize()
            }
      });
      //resize重设(表格、树形)宽高
      $(window).resize(function (e) {
            window.setTimeout(function () {
                $('#gridTable').setGridWidth(($('.gridPanel').width()));
                $("#gridTable").setGridHeight($(window).height() - 141.5);
                $("#itemTree").setTreeHeight($(window).height() - 52);
            }, 200);
            e.stopPropagation();
      });
    }
    //加载树
    var _parentId = "";
    function GetTree() {
      var item = {
            height: $(window).height() - 52,
            url: "../../SystemManager/Module/GetTreeJson",
            onnodeclick: function (item) {
                _parentId = item.id;
                $('#btn_Search').trigger("click");
            }
      };
      //初始化
      $("#itemTree").treeview(item);
    }
    //加载表格
    function GetGrid() {
      var selectedRowIndex = 0;
      var $gridTable = $('#gridTable');
      $gridTable.jqGrid({
            url: "../../SystemManager/Module/GetListJson?parentid=0",
            datatype: "json",
            height: $(window).height() - 141.5,
            autowidth: true,
            colModel: [
                { label: "主键", name: "ModuleId", index: "ModuleId", hidden: true },
                { label: "编号", name: "EnCode", index: "EnCode", width: 150, align: "left" },
                { label: "名称", name: "FullName", index: "FullName", width: 150, align: "left" },
                { label: "地址", name: "UrlAddress", index: "UrlAddress", width: 350, align: "left" },
                { label: "目的", name: "Target", index: "Target", width: 60, align: "center" },
                {
                  label: "菜单", name: "IsMenu", index: "IsMenu", width: 50, align: "center",
                  formatter: function (cellvalue, options, rowObject) {
                        return cellvalue == 1 ? "<i value=" + cellvalue + " class=\"fa fa-toggle-on\"></i>" : "<i value=" + cellvalue + " class=\"fa fa-toggle-off\"></i>";
                  }
                },
                {
                  label: "展开", name: "AllowExpand", index: "AllowExpand", width: 50, align: "center",
                  formatter: function (cellvalue, options, rowObject) {
                        return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
                  }
                },
                {
                  label: "公共", name: "IsPublic", index: "IsPublic", width: 50, align: "center",
                  formatter: function (cellvalue, options, rowObject) {
                        return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
                  }
                },
                {
                  label: "有效", name: "EnabledMark", index: "EnabledMark", width: 50, align: "center",
                  formatter: function (cellvalue, options, rowObject) {
                        return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
                  }
                },
                { label: "描述", name: "Description", index: "Description", width: 100, align: "left" }
            ],
            pager: false,
            rowNum: "1000",
            rownumbers: true,
            shrinkToFit: false,
            gridview: true,
            onSelectRow: function () {
                selectedRowIndex = $("#" + this.id).getGridParam('selrow');
            },
            gridComplete: function () {
                $("#" + this.id).setSelection(selectedRowIndex, false);
            }
      });
      //查询条件
      $("#queryCondition .dropdown-menu li").click(function () {
            var text = $(this).find('a').html();
            var value = $(this).find('a').attr('data-value');
            $("#queryCondition .dropdown-text").html(text).attr('data-value', value)
      });
      //查询变乱
      $("#btn_Search").click(function () {
            $gridTable.jqGrid('setGridParam', {
                url: "../../SystemManager/Module/GetListJson",
                postData: {
                  parentid: _parentId,
                  condition: $("#queryCondition").find('.dropdown-text').attr('data-value'),
                  keyword: $("#txt_Keyword").val()
                }
            }).trigger('reloadGrid');
      });
      //查询回车
      $('#txt_Keyword').bind('keypress', function (event) {
            if (event.keyCode == "13") {
                $('#btn_Search').trigger("click");
            }
      });
    }
    //新增
    function btn_add() {
      dialogOpen({
            id: "Form",
            title: '添加功能',
            url: '/SystemManager/Module/Form?parentId=' + _parentId,
            width: "700px",
            height: "430px",
            btn: null
      });
    };
    //编辑
    function btn_edit() {
      var keyValue = $("#gridTable").jqGridRowValue("ModuleId");
      if (checkedRow(keyValue)) {
            dialogOpen({
                id: "Form",
                title: '编辑功能',
                url: '/SystemManager/Module/Form?keyValue=' + keyValue,
                width: "700px",
                height: "430px",
                btn: null
            });
      }
    }
    //删除
    function btn_delete() {
      var keyValue = $("#gridTable").jqGridRowValue("ModuleId");
      if (keyValue) {
            $.RemoveForm({
                url: "../../SystemManager/Module/RemoveForm",
                param: { keyValue: keyValue },
                success: function (data) {
                  $("#gridTable").trigger("reloadGrid");
                }
            })
      } else {
            dialogMsg('请选择需要删除的数据项!', 0);
      }
    }
</script>
<div class="ui-layout" id="layout" style="height: 100%; width: 100%;">
    <div class="ui-layout-west">
      <div class="west-Panel">
            <div class="panel-Title">功能目录</div>
            <div id="itemTree"></div>
      </div>
    </div>
    <div class="ui-layout-center">
      <div class="center-Panel">
            <div class="panel-Title">功能信息</div>
            <div class="titlePanel">
                <div class="title-search">
                  <table>
                        <tr>
                            <td>
                              <div id="queryCondition" class="btn-group">
                                    <a class="btn btn-default dropdown-text" data-toggle="dropdown">选择条件</a>
                                    <a class="btn btn-default dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></a>
                                    <ul class="dropdown-menu">
                                        <li><a data-value="EnCode">编号</a></li>
                                        <li><a data-value="FullName">名称</a></li>
                                        <li><a data-value="UrlAddress">地址</a></li>
                                    </ul>
                              </div>
                            </td>
                            <td style="padding-left: 2px;">
                              <input id="txt_Keyword" type="text" class="form-control" placeholder="请输入要查询关键字" style="width: 200px;" />
                            </td>
                            <td style="padding-left: 5px;">
                              <a id="btn_Search" class="btn btn-primary"><i class="fa fa-search"></i>&nbsp;查询</a>
                            </td>
                        </tr>
                  </table>
                </div>
                <div class="toolbar">
                  <div class="btn-group">
                        <a id="lr-replace" class="btn btn-default" onclick="reload();"><i class="fa fa-refresh"></i>&nbsp;刷新</a>
                        <a id="lr-add" class="btn btn-default" onclick="btn_add()"><i class="fa fa-plus"></i>&nbsp;新增</a>
                        <a id="lr-edit" class="btn btn-default" onclick="btn_edit()"><i class="fa fa-pencil-square-o"></i>&nbsp;编辑</a>
                        <a id="lr-delete" class="btn btn-default" onclick="btn_delete()"><i class="fa fa-trash-o"></i>&nbsp;删除</a>
                  </div>
                  <script>$('.toolbar').authorizeButton()</script>
                </div>
            </div>
            <div class="gridPanel">
                <table id="gridTable"></table>
            </div>
      </div>
    </div>
</div>

View Code
<p>4后端代码</p>
<p>   4.1 control   </p>
<div align="center"></div><div align="center"></div>

/// <summary>
      /// 功能列表
      /// </summary>
      /// <param name="parentid">节点Id</param>
      /// <param name="condition">查询条件</param>
      /// <param name="keyword">关键字</param>
      /// <returns>返回列表Json</returns>
      
      public ActionResult GetListJson(string parentid, string condition, string keyword)
      {

            var data = NewObject<ModuleLogic>().GetListByCondition(parentid).datas;
            if (!string.IsNullOrEmpty(condition) && !string.IsNullOrEmpty(keyword))
            {
                #region 多条件查询
                switch (condition)
                {
                  case "EnCode":    //编号
                        data = data.FindAll(t => t.EnCode.Contains(keyword));
                        break;
                  case "FullName":      //名称
                        data = data.FindAll(t => t.FullName.Contains(keyword));
                        break;
                  case "UrlAddress":   //地址
                        data = data.FindAll(t => t.UrlAddress.Contains(keyword));
                        break;
                  default:
                        break;
                }
                #endregion
            }
            return Content(JsonHelper.ToJson(data));
      }

/// <summary>
      /// 功能列表
      /// </summary>
      /// <param name="keyword">关键字</param>
      /// <returns>返回树形Json</returns>
      
      public ActionResult GetTreeJson(string keyword)
      {
            var data = NewObject<ModuleLogic>().GetListByCache().datas;
            if (!string.IsNullOrEmpty(keyword))
            {
                data = data.TreeWhere(t => t.FullName.Contains(keyword), "");
            }
            var treeList = new List<TreeEntity>();
            foreach (ModuleEntity item in data)
            {
                TreeEntity tree = new TreeEntity();
                bool hasChildren = data.Count(t => t.ParentId == item.ModuleId) == 0 ? false : true;
                tree.id = item.ModuleId.ToConvertString();
                tree.text = item.FullName;
                tree.value = item.ModuleId.ToConvertString();
                tree.isexpand = true;
                tree.complete = true;
                tree.hasChildren = hasChildren;
                tree.parentId = item.ParentId.ToConvertString();
            //tree.img = item.Icon;
                treeList.Add(tree);
            }
            return Content(treeList.TreeToJson());         
      }

View Code
<p>   4.2 逻辑层 </p>
<div align="center"></div><div align="center"></div>

/*
* ==============================================================================
* File name: ModuleLogic
* Description:
* Version: 1.0
* Created: 2017/07/26 15:30:50
* Author: 蔡創捷
* ==============================================================================
*/


using System;
using CommonLibrary.Log;
using CommonContract.Base;
using CommonContract.Entity;
using CommonContract.Condition;
using System.Collections.Generic;
using MIT.Application.Dao.BaseManager;
using CommonLibrary.Serializer;
using System.Linq;
using CommonContract.Result;
using CommonLibrary.Base;

namespace MIT.Application.Logic.BaseManager
{
    public class ModuleLogic : BaseLogic<ModuleEntity, ModuleDao>
    {



      public Results<List<ModuleEntity>> GetListByCondition(string parentid)
      {
            Results<List<ModuleEntity>> result = new Results<List<ModuleEntity>>();
            result.datas = NewObject<ModuleDao>().GetListByCondition(true, it => it.ParentId == parentid, it => it.SortCode);
            return result;
      }


      #region 通過條件獲取所有數據
      public Results<int> GetSortCode()
      {
            Results<int> result = new Results<int>();
            int SortCode = 0;            
            SortCode = NewObject<ModuleDao>().GetSortCode();
            result.datas = SortCode;         
            return result;
      }
      #endregion
      #region 保存數據(新增、修改)
      public Results SaveForm(string keyValue, ModuleEntity moduleEntity, string moduleButtonListJson, string moduleColumnListJson)
      {
            Results result = new Results();         
            var moduleButtonList = JsonHelper.ToObject<List<ModuleButtonEntity>>(moduleButtonListJson);
            var moduleColumnList = JsonHelper.ToObject<List<ModuleColumnEntity>>(moduleColumnListJson);
            int res = NewObject<ModuleDao>().SaveForm(keyValue, moduleEntity, moduleButtonList, moduleColumnList);         
            result.isSuccess =(res > 0);         
            return result;
      }
      #endregion
      #region 获取授权菜單
      public Results<List<ModuleEntity>> GetModuleList(string userId)
      {
            Results<List<ModuleEntity>> result = new Results<List<ModuleEntity>>();
            List<ModuleEntity> list = null;         
            if (userId == "System")
            {
                list = NewObject<ModuleDao>().GetList();

            }
            else
            {
                list = NewObject<ModuleDao>().GetModuleList(userId);
            }
            list = list.OrderBy(it => it.SortCode).ToList() ;
            result.datas = list;         
            return result;
      }
      #endregion      

    }
}

View Code
<p>4.3数据层 </p>
<div align="center"></div><div align="center"></div>

/*
* ==============================================================================
* File name: ModuleDao
* Description:
* Version: 1.0
* Created: 2017/07/26 15:28:10
* Author: 蔡創捷
* ==============================================================================
*/

using System;
using System.Collections.Generic;
using CommonLibrary.Serializer;
using CommonContract.Condition;
using CommonContract.Entity;
using CommonLibrary.Cache;
using CommonLibrary.SqlDB;
using CommonLibrary.ExtendsMethod;
using CommonLibrary.Log;
using SqlSugar;
using System.Text;

namespace MIT.Application.Dao.BaseManager
{
    //系统功能表

    public class ModuleDao : BaseDao<ModuleEntity>
    {

      public ModuleDao()
      {
            base.CacheKey = "ModuleCacheKey";
      }

      /// <summary>
      /// 获取最大编号
      /// </summary>
      /// <returns></returns>
      public int GetSortCode()
      {
            var db = SqlSugarHelper.GetInstance();
            int sortCode = db.Queryable<ModuleEntity>().Max(it => it.SortCode).ToInt();
            if (!string.IsNullOrEmpty(sortCode.ToString()))
            {
                return sortCode + 1;
            }
            return 100001;
      }   


      /// <summary>
      /// 通過分页獲取數據
      /// </summary>
      publicList<ModuleEntity> GetListByPage(PageInfo pageInfo, string queryJson)
      {
            var db = SqlSugarHelper.GetInstance();
            int totalCount = 0;
            var queryParam = JsonHelper.ToJObject(queryJson);
            string parentid = queryParam["parentid"].ToConvertString();
            string condition = queryParam["condition"].ToConvertString();
            string keyword = queryParam["keyword"].ToConvertString();
         
            List<ModuleEntity> list = db.Queryable<ModuleEntity>()
                  .WhereIF(!parentid.IsEmpty(), it => it.ParentId == parentid)
                  .WhereIF(!keyword.IsEmpty() && condition == "EnCode", it => it.EnCode.Contains(keyword))
                  .WhereIF(!keyword.IsEmpty() && condition == "FullName", it => it.FullName.Contains(keyword))
                  .WhereIF(!keyword.IsEmpty() && condition == "UrlAddress", it => it.UrlAddress.Contains(keyword))                  
                .OrderBy(it => it.SortCode)
                .ToPageList(pageInfo.page, pageInfo.limit, ref totalCount);

            pageInfo.records = totalCount;
            return list;
      }

      /// <summary>
      /// 删除功能
      /// </summary>
      /// <param name="keyValue">主键</param>
      public new int RemoveForm(string keyValue)
      {
            var db = SqlSugarHelper.GetInstance();
            db.Ado.BeginTran();
            try
            {
                int count = db.Queryable<ModuleEntity>().Where(t => t.ParentId == keyValue).Count();
                if (count > 0)
                {
                  throw new Exception("当前所选数据有子节点数据!");
                }
                db.DeleteableEx<ModuleEntity>(keyValue);
                db.DeleteableEx<ModuleButtonEntity>(t => t.ModuleId == keyValue);
                db.DeleteableEx<ModuleColumnEntity>(t => t.ModuleId == keyValue);

                db.Ado.CommitTran();
                return 1;
            }
            catch (Exception ex)
            {
                db.Ado.RollbackTran();
                LogHelper.WriteError(ex, "删除菜單失敗");
                throw;
            }
      }

      /// <summary>
      ///保存數據(新增、修改)
      /// </summary>
      /// <param name="keyValue">主键值</param>
      /// <param name="Entity">实体</param>
      /// <returns></returns>
      publicint SaveForm(string keyValue, ModuleEntity moduleEntity, List<ModuleButtonEntity> moduleButtonList, List<ModuleColumnEntity> moduleColumnList)
      {
            var db = SqlSugarHelper.GetInstance();
            PageCacheManager.Current.RemoveCache(base.CacheKey);
            int resVal = 0;
            try
            {
                db.Ado.BeginTran();
                if (!string.IsNullOrEmpty(keyValue))
                {
                  moduleEntity.Modify(keyValue);
                  resVal = db.UpdateableEx(moduleEntity);
                }
                else
                {
                  moduleEntity.Create();
                  resVal = db.InsertableEx(moduleEntity);
                }
                db.DeleteableEx<ModuleButtonEntity>(it => it.ModuleId == keyValue);
                if (moduleButtonList != null && moduleButtonList.Count !=0)
                {
                  foreach (var item in moduleButtonList)
                  {
                        item.Create();
                        item.ModuleId = moduleEntity.ModuleId;
                        item.ParentId = "0";
                  }
                  db.InsertableEx(moduleButtonList.ToArray());
                }
                db.DeleteableEx<ModuleColumnEntity>(it => it.ModuleId == keyValue);
                if (moduleColumnList != null && moduleColumnList.Count != 0)
                {
                  foreach (var item in moduleColumnList)
                  {
                        item.Create();
                        item.ModuleId = moduleEntity.ModuleId;
                        item.ParentId = "0";
                  }
                  db.InsertableEx(moduleColumnList.ToArray());
                }
                db.Ado.CommitTran();
                return resVal;
            }
            catch (Exception)
            {
                db.Ado.RollbackTran();
                throw;
            }
      }


      /// <summary>
      /// 获取授权菜單
      /// </summary>
      /// <param name="userId">用户Id</param>
      /// <returns></returns>
      public List<ModuleEntity> GetModuleList(string userId)
      {
            var db = SqlSugarHelper.GetInstance();   
            StringBuilder strSql = new StringBuilder();
            strSql.Append(@"SELECT*
                            FROM    Base_Module
                            WHERE   ModuleId IN (
                                    SELECTItemId
                                    FROM    Base_Authorize
                                    WHERE   ItemType = 1
                                          AND ( ObjectId IN (
                                                SELECT    ObjectId
                                                FROM      Base_UserRelation
                                                WHERE   UserId = @UserId ) )
                                          OR (ItemType = 1 and ObjectId = @UserId) )
                            AND EnabledMark = 1AND DeleteMark = 0 Order By SortCode");
            var dt = db.Ado.SqlQuery<ModuleEntity>(strSql.ToString(), new { UserId = userId });
            return dt;
      }
    }
}

View Code
<p>5.數據格式</p>
<p>5.1表格jqgrid-json</p>
<div align="center"></div><div align="center"></div>

[{"ModuleId":"1","ParentId":"0","EnCode":"SysManage","FullName":"系统管理","Icon":"fa fa-desktop","UrlAddress":null,"Target":"expand","IsMenu":0,"AllowExpand":1,"IsPublic":0,"AllowEdit":null,"AllowDelete":null,"SortCode":1,"DeleteMark":0,"EnabledMark":1,"Description":null,"CreateDate":null,"CreateUserId":null,"CreateUserName":null,"ModifyDate":"2015-11-17 11:22:46","ModifyUserId":"System","ModifyUserName":"超级管理员"},{"ModuleId":"2","ParentId":"0","EnCode":"BaseManage","FullName":"单位组织","Icon":"fa fa-coffee","UrlAddress":null,"Target":"expand","IsMenu":0,"AllowExpand":1,"IsPublic":0,"AllowEdit":null,"AllowDelete":null,"SortCode":2,"DeleteMark":0,"EnabledMark":1,"Description":null,"CreateDate":null,"CreateUserId":null,"CreateUserName":null,"ModifyDate":"2016-03-11 11:02:06","ModifyUserId":"0f36148c-719f-41e0-8c8c-16ffbc40d0e0","ModifyUserName":"佘赐雄"},{"ModuleId":"5","ParentId":"0","EnCode":"FlowManage","FullName":"工作流程","Icon":"fa fa-share-alt","UrlAddress":null,"Target":"expand","IsMenu":0,"AllowExpand":1,"IsPublic":0,"AllowEdit":null,"AllowDelete":null,"SortCode":3,"DeleteMark":0,"EnabledMark":1,"Description":null,"CreateDate":null,"CreateUserId":null,"CreateUserName":null,"ModifyDate":"2016-04-11 10:21:44","ModifyUserId":"System","ModifyUserName":"超级管理员"},{"ModuleId":"6","ParentId":"0","EnCode":"ReportManage","FullName":"报表中央","Icon":"fa fa-area-chart","UrlAddress":null,"Target":"expand","IsMenu":0,"AllowExpand":1,"IsPublic":0,"AllowEdit":null,"AllowDelete":null,"SortCode":4,"DeleteMark":0,"EnabledMark":1,"Description":null,"CreateDate":null,"CreateUserId":null,"CreateUserName":null,"ModifyDate":"2016-04-11 10:21:54","ModifyUserId":"System","ModifyUserName":"超级管理员"},{"ModuleId":"4","ParentId":"0","EnCode":"CommonInfo","FullName":"公共信息","Icon":"fa fa-globe","UrlAddress":null,"Target":"expand","IsMenu":0,"AllowExpand":1,"IsPublic":0,"AllowEdit":null,"AllowDelete":null,"SortCode":5,"DeleteMark":0,"EnabledMark":1,"Description":null,"CreateDate":null,"CreateUserId":null,"CreateUserName":null,"ModifyDate":"2016-04-11 10:21:59","ModifyUserId":"System","ModifyUserName":"超级管理员"},{"ModuleId":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","ParentId":"0","EnCode":"CustomerManage","FullName":"客户关系","Icon":"fa fa-briefcase","UrlAddress":null,"Target":"expand","IsMenu":0,"AllowExpand":1,"IsPublic":0,"AllowEdit":null,"AllowDelete":null,"SortCode":6,"DeleteMark":0,"EnabledMark":1,"Description":"客户关系管理","CreateDate":"2016-03-11 10:53:05","CreateUserId":"0f36148c-719f-41e0-8c8c-16ffbc40d0e0","CreateUserName":"佘赐雄","ModifyDate":"2016-04-21 16:00:07","ModifyUserId":"System","ModifyUserName":"超级管理员"},{"ModuleId":"7","ParentId":"0","EnCode":"DemoManage","FullName":"常用示例","Icon":"fa fa-tags","UrlAddress":null,"Target":"expand","IsMenu":0,"AllowExpand":1,"IsPublic":0,"AllowEdit":null,"AllowDelete":null,"SortCode":7,"DeleteMark":0,"EnabledMark":0,"Description":null,"CreateDate":null,"CreateUserId":null,"CreateUserName":null,"ModifyDate":"2016-04-26 14:58:24","ModifyUserId":"System","ModifyUserName":"超级管理员"}]

View Code
<p>5.2 jstree -json </p>
<div align="center"></div><div align="center"></div>

[{"id":"1","text":"系统管理","value":"1","parentnodes":"0","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"4efd37bf-e3ef-4ced-8248-58eba046d78b","text":"通用字典","value":"4efd37bf-e3ef-4ced-8248-58eba046d78b","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"7ae94059-9aa5-48eb-8330-4e2a6565b193","text":"行政区域","value":"7ae94059-9aa5-48eb-8330-4e2a6565b193","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"7adc5a16-54a4-408e-a101-2ddab8117d67","text":"单据编码","value":"7adc5a16-54a4-408e-a101-2ddab8117d67","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"7cec0a0f-7204-4240-b009-312fa0c11cbf","text":"数据管理","value":"7cec0a0f-7204-4240-b009-312fa0c11cbf","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"34e362f4-c220-4fb7-b3f0-288c83417cb3","text":"数据库连接","value":"34e362f4-c220-4fb7-b3f0-288c83417cb3","parentnodes":"7cec0a0f-7204-4240-b009-312fa0c11cbf","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"2f820f6e-ae2e-472f-82cc-0129a2a57597","text":"数据表管理","value":"2f820f6e-ae2e-472f-82cc-0129a2a57597","parentnodes":"7cec0a0f-7204-4240-b009-312fa0c11cbf","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"c4d7ce1f-72de-4651-b495-6c466261e9af","text":"数据库备份","value":"c4d7ce1f-72de-4651-b495-6c466261e9af","parentnodes":"7cec0a0f-7204-4240-b009-312fa0c11cbf","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"f21fa3a0-c523-4d02-99ca-fd8dd3ae3d59","text":"系统日志","value":"f21fa3a0-c523-4d02-99ca-fd8dd3ae3d59","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"21","text":"系统功能","value":"21","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"b9f9df92-8ac5-46e2-90ac-68c5c2e034c3","text":"微信管理","value":"b9f9df92-8ac5-46e2-90ac-68c5c2e034c3","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"a977d91e-77b7-4d60-a7ad-dfbc138f7c0a","text":"企业号设置","value":"a977d91e-77b7-4d60-a7ad-dfbc138f7c0a","parentnodes":"b9f9df92-8ac5-46e2-90ac-68c5c2e034c3","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"5cc9d2d9-e097-4b51-9b9e-84ca9f1a0ab5","text":"企业号部分","value":"5cc9d2d9-e097-4b51-9b9e-84ca9f1a0ab5","parentnodes":"b9f9df92-8ac5-46e2-90ac-68c5c2e034c3","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"4d0f2e44-f68f-41fd-a55c-40ac67453ef4","text":"企业号成员","value":"4d0f2e44-f68f-41fd-a55c-40ac67453ef4","parentnodes":"b9f9df92-8ac5-46e2-90ac-68c5c2e034c3","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"aa844d70-7211-41d9-907a-f9a10f4ac801","text":"企业号应用","value":"aa844d70-7211-41d9-907a-f9a10f4ac801","parentnodes":"b9f9df92-8ac5-46e2-90ac-68c5c2e034c3","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"cfa631fe-e7f8-42b5-911f-7172f178a811","text":"快速开发","value":"cfa631fe-e7f8-42b5-911f-7172f178a811","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"b0261df5-7be0-4c8e-829c-15836e200af0","text":"系统表单","value":"b0261df5-7be0-4c8e-829c-15836e200af0","parentnodes":"1","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"2","text":"单位组织","value":"2","parentnodes":"0","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"8","text":"机构管理","value":"8","parentnodes":"2","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"9","text":"部分管理","value":"9","parentnodes":"2","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"10","text":"用户管理","value":"10","parentnodes":"2","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"11","text":"角色管理","value":"11","parentnodes":"2","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"12","text":"职位管理","value":"12","parentnodes":"2","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"13","text":"岗位管理","value":"13","parentnodes":"2","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"14","text":"用户组管理","value":"14","parentnodes":"2","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"4","text":"公共信息","value":"4","parentnodes":"0","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"23713d3a-810f-422d-acd5-39bec28ce47e","text":"日程管理","value":"23713d3a-810f-422d-acd5-39bec28ce47e","parentnodes":"4","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"e35d24ce-8a6a-46b9-8b3f-6dc864a8f342","text":"新闻中央","value":"e35d24ce-8a6a-46b9-8b3f-6dc864a8f342","parentnodes":"4","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"6252983c-52f5-402c-991b-ad19a9cb1f94","text":"通知公告","value":"6252983c-52f5-402c-991b-ad19a9cb1f94","parentnodes":"4","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"04b88c96-8d99-45ec-956c-444efa630020","text":"文件资料","value":"04b88c96-8d99-45ec-956c-444efa630020","parentnodes":"4","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"c6b80ed5-b0cb-4844-ba1a-725d2cb4f935","text":"邮件中央","value":"c6b80ed5-b0cb-4844-ba1a-725d2cb4f935","parentnodes":"4","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"5","text":"工作流程","value":"5","parentnodes":"0","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"1b642904-d674-495f-a1e1-4814cc543870","text":"发起流程","value":"1b642904-d674-495f-a1e1-4814cc543870","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"b5cb98f6-fb41-4a0f-bc11-469ff117a411","text":"流程管理","value":"b5cb98f6-fb41-4a0f-bc11-469ff117a411","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"27b6c487-a2d9-4a3a-a40d-dbba27a53d26","text":"流程监控","value":"27b6c487-a2d9-4a3a-a40d-dbba27a53d26","parentnodes":"b5cb98f6-fb41-4a0f-bc11-469ff117a411","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"c0544bfd-a557-45fc-a856-a678a1e88bfc","text":"流程指派","value":"c0544bfd-a557-45fc-a856-a678a1e88bfc","parentnodes":"b5cb98f6-fb41-4a0f-bc11-469ff117a411","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"691f3810-a602-4523-8518-ce5856482d48","text":"草稿流程","value":"691f3810-a602-4523-8518-ce5856482d48","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"0d296398-bc0e-4f38-996a-6e24bc88cc53","text":"待办流程","value":"0d296398-bc0e-4f38-996a-6e24bc88cc53","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"923f7d65-e307-45f7-8f96-73ecbf23b324","text":"已办流程","value":"923f7d65-e307-45f7-8f96-73ecbf23b324","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"6a67a67f-ef07-41e7-baa5-00bc5f662a76","text":"工作委托","value":"6a67a67f-ef07-41e7-baa5-00bc5f662a76","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"021a59b0-2589-4f9e-8140-6052177a967c","text":"我的流程","value":"021a59b0-2589-4f9e-8140-6052177a967c","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"458113c6-b0be-4d6f-acce-7524f4bc3e88","text":"流程配置","value":"458113c6-b0be-4d6f-acce-7524f4bc3e88","parentnodes":"5","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"08dfd779-92d5-4cd8-9982-a76176af0f7c","text":"流程种别","value":"08dfd779-92d5-4cd8-9982-a76176af0f7c","parentnodes":"458113c6-b0be-4d6f-acce-7524f4bc3e88","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"f63a252b-975f-4832-a5be-1ce733bc8ece","text":"流程设计","value":"f63a252b-975f-4832-a5be-1ce733bc8ece","parentnodes":"458113c6-b0be-4d6f-acce-7524f4bc3e88","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"a57993fa-5a94-44a8-a330-89196515c1d9","text":"表单设计","value":"a57993fa-5a94-44a8-a330-89196515c1d9","parentnodes":"458113c6-b0be-4d6f-acce-7524f4bc3e88","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"00ae31cf-b340-4c17-9ee7-6dd08943df02","text":"表单种别","value":"00ae31cf-b340-4c17-9ee7-6dd08943df02","parentnodes":"458113c6-b0be-4d6f-acce-7524f4bc3e88","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]}]},{"id":"6","text":"报表中央","value":"6","parentnodes":"0","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"affacee1-41a3-4c7b-8804-f1c1926babbd","text":"采购报表","value":"affacee1-41a3-4c7b-8804-f1c1926babbd","parentnodes":"6","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"ff1823b5-a966-4e6c-83de-807854f4f0fb","text":"销售报表","value":"ff1823b5-a966-4e6c-83de-807854f4f0fb","parentnodes":"6","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"92a535c9-4d4b-4500-968d-a142e671c09b","text":"报表管理","value":"92a535c9-4d4b-4500-968d-a142e671c09b","parentnodes":"6","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"ddce0dc1-3345-41b7-9716-22641fbbfaed","text":"销售日报表","value":"ddce0dc1-3345-41b7-9716-22641fbbfaed","parentnodes":"6","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"901e6122-985d-4c84-8d8c-56560520f6ed","text":"仓存报表","value":"901e6122-985d-4c84-8d8c-56560520f6ed","parentnodes":"6","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"9db71a92-2ecb-496c-839f-7a82bc22905d","text":"对账报表","value":"9db71a92-2ecb-496c-839f-7a82bc22905d","parentnodes":"6","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"7","text":"常用示例","value":"7","parentnodes":"0","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","text":"客户关系","value":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","parentnodes":"0","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","text":"基础设置","value":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":true,"ChildNodes":[{"id":"6be31cc9-4aee-4279-8435-4b266cec33f0","text":"客户行业","value":"6be31cc9-4aee-4279-8435-4b266cec33f0","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"c30310a7-d0a5-4bf6-8655-c3834a8cc73d","text":"客户种别","value":"c30310a7-d0a5-4bf6-8655-c3834a8cc73d","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"aed02ee7-322f-47f0-8ad6-ab0a2172628f","text":"客户程度","value":"aed02ee7-322f-47f0-8ad6-ab0a2172628f","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"52fe82f8-41ba-433e-9351-ef67e5b35217","text":"客户级别","value":"52fe82f8-41ba-433e-9351-ef67e5b35217","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"be9cbe61-265f-4ddd-851e-d5a1cef6011b","text":"商机来源","value":"be9cbe61-265f-4ddd-851e-d5a1cef6011b","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"80620d6f-55bd-492b-9c21-1b04ca268e75","text":"商机阶段","value":"80620d6f-55bd-492b-9c21-1b04ca268e75","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"62af0605-4558-47b1-9530-bc3515036b37","text":"收支账户","value":"62af0605-4558-47b1-9530-bc3515036b37","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"3b03806d-98d8-40fe-9895-01633119458c","text":"产品信息","value":"3b03806d-98d8-40fe-9895-01633119458c","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"77f13de5-32ad-4226-9e24-f1db507e78cb","text":"收支方式","value":"77f13de5-32ad-4226-9e24-f1db507e78cb","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"eab4a37f-d976-42b7-9589-489ed0678151","text":"付出种类","value":"eab4a37f-d976-42b7-9589-489ed0678151","parentnodes":"16d4e2d5-d154-455f-94f7-63bf80ab26aa","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]},{"id":"66f6301c-1789-4525-a7d2-2b83272aafa6","text":"商机管理","value":"66f6301c-1789-4525-a7d2-2b83272aafa6","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"1d3797f6-5cd2-41bc-b769-27f2513d61a9","text":"客户管理","value":"1d3797f6-5cd2-41bc-b769-27f2513d61a9","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"b352f049-4331-4b19-ac22-e379cb30bd55","text":"客户订单","value":"b352f049-4331-4b19-ac22-e379cb30bd55","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"5f1fa264-cc9b-4146-b49e-743e4633bb4c","text":"客户开票","value":"5f1fa264-cc9b-4146-b49e-743e4633bb4c","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"535d92e9-e066-406c-b2c2-697150a5bdff","text":"收款管理","value":"535d92e9-e066-406c-b2c2-697150a5bdff","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"1ef31fba-7f0a-46f7-b533-49dd0c2e51e0","text":"收款报表","value":"1ef31fba-7f0a-46f7-b533-49dd0c2e51e0","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"9fc384f5-efb7-439e-9fe1-3e50807e6399","text":"付出管理","value":"9fc384f5-efb7-439e-9fe1-3e50807e6399","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]},{"id":"dec79ca7-3b54-432a-be1e-c96e7a2c7150","text":"现金银行报表","value":"dec79ca7-3b54-432a-be1e-c96e7a2c7150","parentnodes":"ad147f6d-613f-4d2d-8c84-b749d0754f3b","showcheck":false,"isexpand":true,"complete":true,"hasChildren":false,"ChildNodes":[]}]}]

View Code
<p> </p><br>来源:<a href="https://www.cnblogs.com/chuangjie1988/p/11284201.html" target="_blank">https://www.cnblogs.com/chuangjie1988/p/11284201.html</a><br>免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 1. mvc 树形控件tree + 表格jqgrid 显示界面