您的位置:首页> 日志> 动易系统 正文

最近信息公开要按国务院标准来调整了:

http://www.gov.cn/zhengce/content/2019-12/03/5457588/files/f78997ecef234e928a16bd438552846e.pdf

现在理一下,信息公开在全部用信息公开模块主题的情况下,是如何实现的。

一、父栏目页:

首先了解一下信息主题类型

SubjectCategoryType.Link:链接主题

SubjectCategoryType.Information:信息主题

SubjectCategoryType.Reference:引用主题

SubjectCategoryType.single:单页主题

 

父栏目循环页(参考文章循环页)

<!-- 栏目循环 S -->

<div class="pageBoxLoop scroll_cont" id="@Model.Identifier">
    @{
        var subjectCategoryService = new SubjectCategoryService();
        var childSubjectCategoryList = subjectCategoryService.GetChildren(Model);
        var EnableDisplayOnTree = Param.EnableDisplayOnTree;//主题树是否显示
        foreach (SubjectCategory item in childSubjectCategoryList)
        {
           //判断是否设置了主题树显示
            if(item.EnableDisplayOnTree == true ) {
          //当链接主题的时候只显示一个主题链接
            if (item.SubjectCategoryType == SubjectCategoryType.Link){
            <div class="ndbgList">@Power.Url.SubjectCategoryLink(item.Identifier)</div>
            }
     //当是信息主题和引用主题的时候,显示信息列表;
            else if(item.SubjectCategoryType ==SubjectCategoryType.Information || item.SubjectCategoryType ==SubjectCategoryType.Reference ){
            <div class="box">
                <div class="hd">
                    <h3 class="title">@Power.Url.SubjectCategoryLink(item.Identifier)</h3>
                </div>
                <div class="bd">
                    <ul class="infoList">
                         @Power.Partial("InfoPublicity/Publicity", "信息公开列表", new { Count = 6, Identifier = item.Identifier, TitleLength = 100, DisplayDateTime = "yyyy-MM-dd" })
                    </ul>
                <div class="moreBox">
                        @Power.Url.SubjectCategoryLink(item.Identifier, "更多", new { @class = "more" })
                </div>
                 </div>
            </div>
                }
            }
        }
    }
</div>
<!-- 栏目循环 E -->
 

二、侧栏菜单多级自动获取+当前标识符+主题树是否显示;

在默认的主题多级列表和主题多级列表-内循环上修改;

增加了当前标识符 class=on和EnableDisplayOnTree主题树是否显示

string currentIdentifier = Param.CurrentIdentifier; //当前标识符
if( subjectCategory.Identifier == currentIdentifier )
{
className = className + " on";
}

if(subjectCategory.EnableDisplayOnTree == true ){}

信息公开-主题多级列表:

/UploadFiles/Article/20206/202006301818252896.zip

 

侧栏菜单调用:

@{
SubjectCategory subjectCategory = Param.SubjectCategory;
var className = Param.className ?? "publicityMenu"; //类名
var currentIdentifier = Param.CurrentIdentifier;
}
<dl class="@className">
@Power.Partial("InfoPublicity/Publicity", "信息公开-主题多级列表", new { Count = 5, Identifier = "", CurrentIdentifier = currentIdentifier,depth=4})
</dl>
 
<script>
//当有子级的时候,第一级的父级加上<i></i> +号图标
if ($("#menuTree1 dt").size() > 0) {
$("#menuTree1 #D3").parents("dt").prepend('<i></i>');
}
$(".@className dt i").click(function(event) {
var dtObj=$(this).parents("dt");
if(dtObj.hasClass('on')){
dtObj.removeClass('on');
dtObj.next("dd").hide();
}
else{
dtObj.addClass('on');
dtObj.next("dd").show();
}
});
// class="on"的时候,父级也加上class="on"
if ($(".@className dt.on").hasClass("on")){
($(".@className .menuTree .on").parents("dt").addClass("on"));
}
</script>

信息公开列表页调用:

<aside class="side">
@Power.Partial("InfoPublicity/Publicity", "侧栏-信息公开菜单" ,new { CurrentIdentifier = Model.Identifier })
</aside>