コード例 #1
0
        public void Page_Load(object sender, EventArgs e)
        {
            if (IsForbidden)
            {
                return;
            }

            _additional.Add("module", Body.GetQueryString("module"));

            if (!IsPostBack)
            {
                ClientScriptRegisterClientScriptBlock("NodeTreeScript", DepartmentTreeItem.GetScript(EDepartmentLoadingType.AdministratorTree, null));

                BindGrid();
            }
        }
コード例 #2
0
        private void CreateTree(List <DepartmentEntity> departments, DepartmentTreeItem root)
        {
            var children = departments.Where(b => b.Pid == root.Id).OrderBy(b => b.Order).ToList();

            for (int i = 0; i < children.Count(); i++)
            {
                root.Children.Add(new DepartmentTreeItem
                {
                    Id          = children[i].Id,
                    Label       = children[i].Name,
                    Order       = children[i].Order,
                    Description = children[i].Description,
                    Pid         = children[i].Pid
                });
                CreateTree(departments, root.Children[i]);
            }
        }
コード例 #3
0
        public async Task <DepartmentTreeItem> GetDepartmentTreeAsync()
        {
            var allDepartments = await _dbContent.Departments.AsNoTracking().ToListAsync();

            var temp = allDepartments.SingleOrDefault(b => b.Pid == default(Guid));
            var root = new DepartmentTreeItem
            {
                Id          = temp.Id,
                Label       = temp.Name,
                Description = temp.Description,
                Order       = temp.Order,
                Pid         = temp.Pid
            };

            CreateTree(allDepartments, root);
            return(root);
        }
コード例 #4
0
        public void Page_Load(object sender, EventArgs e)
        {
            _additional.Add("UrlFormatString", PageUtils.GetAdminUrl(nameof(ModalDepartmentSelect), null));

            if (!IsPostBack)
            {
                if (Body.IsQueryExists("DepartmentID"))
                {
                    var    departmentId   = Body.GetQueryInt("DepartmentID");
                    var    departmentName = DepartmentManager.GetDepartmentName(departmentId);
                    string scripts        = $"window.parent.showCategoryDepartment('{departmentName}', '{departmentId}');";
                    PageUtils.CloseModalPageWithoutRefresh(Page, scripts);
                }
                else
                {
                    ClientScriptRegisterClientScriptBlock("NodeTreeScript", DepartmentTreeItem.GetScript(EDepartmentLoadingType.DepartmentSelect, _additional));
                    BindGrid();
                }
            }
        }
コード例 #5
0
 public string GetScriptOnLoad(int currentDepartmentId)
 {
     if (currentDepartmentId != 0)
     {
         var departmentInfo = DepartmentManager.GetDepartmentInfo(currentDepartmentId);
         if (departmentInfo != null)
         {
             string path;
             if (departmentInfo.ParentsCount <= 1)
             {
                 path = currentDepartmentId.ToString();
             }
             else
             {
                 path = departmentInfo.ParentsPath.Substring(departmentInfo.ParentsPath.IndexOf(",", StringComparison.Ordinal) + 1) + "," + currentDepartmentId;
             }
             return(DepartmentTreeItem.GetScriptOnLoad(path));
         }
     }
     return(string.Empty);
 }
コード例 #6
0
 public string GetScriptOnLoad(int currentDepartmentID)
 {
     if (currentDepartmentID != 0)
     {
         var departmentInfo = DepartmentManager.GetDepartmentInfo(currentDepartmentID);
         if (departmentInfo != null)
         {
             var path = string.Empty;
             if (departmentInfo.ParentsCount <= 1)
             {
                 path = currentDepartmentID.ToString();
             }
             else
             {
                 path = departmentInfo.ParentsPath.Substring(departmentInfo.ParentsPath.IndexOf(",") + 1) + "," + currentDepartmentID.ToString();
             }
             return(DepartmentTreeItem.GetScriptOnLoad(path));
         }
     }
     return(string.Empty);
 }
コード例 #7
0
        public void Page_Load(object sender, EventArgs e)
        {
            _departmentId = AuthRequest.GetQueryInt("departmentID");
            _scriptName   = AuthRequest.GetQueryString("ScriptName");
            var url = PageUtils.GetSettingsUrl(nameof(ModalAdminSelect), new NameValueCollection
            {
                { "scriptName", _scriptName }
            });

            _additional.Add("UrlFormatString", url);

            if (!IsPostBack)
            {
                LtlDepartment.Text = "管理员列表";
                if (AuthRequest.IsQueryExists("UserName"))
                {
                    var    userName    = AuthRequest.GetQueryString("UserName");
                    var    displayName = AdminManager.GetDisplayName(userName, true);
                    string scripts     = $"window.parent.{_scriptName}('{displayName}', '{userName}');";
                    LayerUtils.CloseWithoutRefresh(Page, scripts);
                }
                else if (AuthRequest.IsQueryExists("departmentID"))
                {
                    if (_departmentId > 0)
                    {
                        LtlDepartment.Text     = DepartmentManager.GetDepartmentName(_departmentId);
                        RptUser.DataSource     = DataProvider.AdministratorDao.GetUserNameList(_departmentId, false);
                        RptUser.ItemDataBound += RptUser_ItemDataBound;
                        RptUser.DataBind();
                    }
                }
                else
                {
                    ClientScriptRegisterClientScriptBlock("NodeTreeScript", DepartmentTreeItem.GetScript(EDepartmentLoadingType.DepartmentSelect, _additional));
                }
            }

            BindGrid();
        }
コード例 #8
0
        private string GetTitle(DepartmentInfo departmentInfo)
        {
            var treeItem = DepartmentTreeItem.CreateInstance(departmentInfo);

            return(treeItem.GetItemHtml(EDepartmentLoadingType.List, null, true));
        }
コード例 #9
0
        public static string GetDepartmentRowHtml(DepartmentInfo departmentInfo, EDepartmentLoadingType loadingType, NameValueCollection additional)
        {
            var treeItem = DepartmentTreeItem.CreateInstance(departmentInfo);
            var title    = treeItem.GetItemHtml(loadingType, additional, false);

            var rowHtml = string.Empty;

            if (loadingType == EDepartmentLoadingType.AdministratorTree || loadingType == EDepartmentLoadingType.DepartmentSelect || loadingType == EDepartmentLoadingType.ContentTree)
            {
                rowHtml = $@"
<tr treeItemLevel=""{departmentInfo.ParentsCount + 1}"">
	<td nowrap>{title}</td>
</tr>
";
            }
            else if (loadingType == EDepartmentLoadingType.ContentList)
            {
                string editUrl = $@"<a href=""javascript:;"" onclick=""{ModalDepartmentAdd.GetOpenWindowStringToEdit(
                    departmentInfo.DepartmentId, GetRedirectUrl(departmentInfo.DepartmentId))}"">编辑</a>";

                var urlUp = PageUtils.GetAdminUrl(nameof(PageDepartment), new NameValueCollection
                {
                    { "Subtract", "True" },
                    { "DepartmentID", departmentInfo.DepartmentId.ToString() }
                });
                string upLink = $@"<a href=""{urlUp}""><img src=""../Pic/icon/up.gif"" border=""0"" alt=""上升"" /></a>";

                var urlDown = PageUtils.GetAdminUrl(nameof(PageDepartment), new NameValueCollection
                {
                    { "Add", "True" },
                    { "DepartmentID", departmentInfo.DepartmentId.ToString() }
                });
                string downLink = $@"<a href=""{urlDown}""><img src=""../Pic/icon/down.gif"" border=""0"" alt=""下降"" /></a>";

                string checkBoxHtml = $"<input type='checkbox' name='DepartmentIDCollection' value='{departmentInfo.DepartmentId}' />";

                rowHtml = $@"
<tr treeItemLevel=""{departmentInfo.ParentsCount + 1}"">
    <td>{title}</td>
    <td>&nbsp;{departmentInfo.Code}</td>
    <td class=""center"">{departmentInfo.CountOfAdmin}</td>
    <td class=""center"">{upLink}</td>
    <td class=""center"">{downLink}</td>
    <td class=""center"">{editUrl}</td>
    <td class=""center"">{checkBoxHtml}</td>
</tr>
";
            }
            else if (loadingType == EDepartmentLoadingType.GovPublicDepartment)
            {
                var publishmentSystemId = TranslateUtils.ToInt(additional["PublishmentSystemID"]);

                var returnUrl = PageGovPublicDepartment.GetRedirectUrl(publishmentSystemId, departmentInfo.DepartmentId);

                string editUrl = $@"<a href=""javascript:;"" onclick=""{ModalDepartmentAdd.GetOpenWindowStringToEdit(
                    departmentInfo.DepartmentId, returnUrl)}"">编辑</a>";

                var urlUp = PageUtils.GetWcmUrl(nameof(PageGovPublicDepartment), new NameValueCollection
                {
                    { "PublishmentSystemID", publishmentSystemId.ToString() },
                    { "DepartmentID", departmentInfo.DepartmentId.ToString() },
                    { "Subtract", true.ToString() }
                });
                string upLink = $@"<a href=""{urlUp}""><img src=""../Pic/icon/up.gif"" border=""0"" alt=""上升"" /></a>";

                var urlDown = PageUtils.GetWcmUrl(nameof(PageGovPublicDepartment), new NameValueCollection
                {
                    { "PublishmentSystemID", publishmentSystemId.ToString() },
                    { "DepartmentID", departmentInfo.DepartmentId.ToString() },
                    { "Add", true.ToString() }
                });
                string downLink = $@"<a href=""{urlDown}""><img src=""../Pic/icon/down.gif"" border=""0"" alt=""下降"" /></a>";

                string checkBoxHtml = $"<input type='checkbox' name='DepartmentIDCollection' value='{departmentInfo.DepartmentId}' />";

                rowHtml = $@"
<tr treeItemLevel=""{departmentInfo.ParentsCount + 1}"">
    <td>{title}</td>
    <td>&nbsp;{departmentInfo.Code}</td>
    <td class=""center"">{upLink}</td>
    <td class=""center"">{downLink}</td>
    <td class=""center"">{editUrl}</td>
    <td class=""center"">{checkBoxHtml}</td>
</tr>
";
            }
            return(rowHtml);
        }