Esempio n. 1
0
        /// <summary>
        /// 表格组件
        /// </summary>
        /// <param name="fid"></param>
        /// <param name="multi"></param>
        /// <returns></returns>
        public IActionResult GridComponent(string fid, string multi)
        {
            FapComponent fc = _dbContext.Get <FapComponent>(fid);

            JqGridViewModel model = this.GetJqGridModel(fc.GridTableName, (q) =>
            {
                q.QueryCols = fc.GridDisplayFields;
                q.InitWhere = fc.TableCondition;
            });

            model.JqgridId = fid;
            model.IsMulti  = multi.ToBool();

            model.TempData.Add("returnfields", fc.ReturnFields);


            return(View(model));
        }
Esempio n. 2
0
        public IActionResult TreeGridComponent(string fid, string multi)
        {
            FapComponent      fc    = _dbContext.Get <FapComponent>(fid);
            TreeGridViewModel model = new TreeGridViewModel();

            model.TreeGridId          = fid;
            model.IsMulti             = multi.ToBool();
            model.TreeFilterCondition = fc.TreeFilterCondition;
            model.TreeTitle           = fc.TreeTitle;
            model.GridTitle           = fc.GridTitle;
            #region 表
            QuerySet qs = new QuerySet();
            qs.TableName = fc.GridTableName;
            qs.QueryCols = fc.GridDisplayFields;
            qs.InitWhere = fc.TableCondition;

            model.GridModel = new JqGridViewModel
            {
                QuerySet = qs
            };
            model.TempData.Add("returnfields", fc.ReturnFields);

            #endregion

            #region 树
            //将List<dynamic>转换成List<TreeDataView>
            List <TreeDataView> treeList = new List <TreeDataView>();
            string icon = "icon-folder  ace-icon fa fa-folder blue";
            if (!fc.TreeTableName.EqualsWithIgnoreCase("orgdept"))
            {
                if (!string.IsNullOrWhiteSpace(fc.TreeNodeIcon))
                {
                    icon = fc.TreeNodeIcon;
                }
                string sql = string.Format("select Fid as Id,{0} as Text,Pid,'{1}' as Icon from {2} ", fc.TreeDisplayField, icon, fc.TreeTableName);
                if (!string.IsNullOrWhiteSpace(fc.TreeCondition))
                {
                    sql += " where " + fc.TreeCondition;
                }
                if (!string.IsNullOrWhiteSpace(fc.TreeOrder))
                {
                    sql += " order by " + fc.TreeOrder;
                }
                var dataList = _dbContext.Query(sql);


                foreach (var data in dataList)
                {
                    treeList.Add(new TreeDataView()
                    {
                        Id = data.Id, Text = data.Text, Pid = data.Pid, Icon = data.Icon, Data = new { selectable = true }
                    });
                }
            }
            else
            {
                IEnumerable <OrgDept> powerDepts = _rbacService.GetDeptInfoAuthority(_applicationContext.CurrentRoleUid);
                if (powerDepts != null && powerDepts.Any())
                {
                    foreach (var data in powerDepts)
                    {
                        TreeDataView tdv = new TreeDataView()
                        {
                            Id = data.Fid, Text = data.DeptName, State = new NodeState {
                                Opened = false
                            }, Pid = data.Pid, Icon = icon, Data = new { selectable = !data.HasPartPower }
                        };
                        if (data.HasPartPower)
                        {
                            tdv.Icon = "icon-folder  ace-icon fa fa-ban orange";
                        }
                        treeList.Add(tdv);
                    }
                }
            }
            List <TreeDataView> tree     = new List <TreeDataView>();
            TreeDataView        treeRoot = new TreeDataView()
            {
                Id    = "0",
                Text  = "请选择",
                State = new NodeState {
                    Opened = true
                },
                Icon = "icon-folder purple ace-icon fa 	fa-flag",
            };
            TreeViewHelper.MakeTree(treeRoot.Children, treeList, treeRoot.Id);
            tree.Add(treeRoot);

            string rej = tree.ToJsonIgnoreNullValue();
            model.JsonData = rej;
            #endregion


            return(View(model));
        }