您的位置:首页> 日志> 前端技术 正文
DTOP

SA获取相关关联内容

liotc | 2018年06月04日 |

>>收藏本文 已有 0条评论

    规范性文件的内容都会对应一个政策解读,反之政策解读也会有一个相关联的规范性文件。如效果图所示,列表中除了有各栏目自身内容,还需要显示对应的关联内容链接按钮。

 

      基础操作:

      1、在平台中建扩展字段(整数)

     

       2、在添加内容时,可以看到扩展的字段选项,扩展项需要添加的内容是关联内容标题的ID数字。      

      文章与文章之间关联

      1、以规范性文件和政策解读都是文章之间关联的为例,使用标签《文章标题列表》,先在标签中加需要获取的模型,最后一句。

  1. @{ 
  2.     string keyword = Param.keyword?.ToString(); 
  3.     var node = new NodeService().GetEntity(x => x.NodeId == Model.NodeId); 
  4.     var target = Param.LinkBlankTarget == true && node != null && node.ContentOpenInNewTarget ? "_blank" : null; 
  5.     var service = new ArticleService(); 

      2、在标签内容增加。

  1. @if ((int)Model.ExtendObject.xglj != 0) 
  2.             { 
  3.             <a class="gl" href="@service.GetEntity((int)Model.ExtendObject.xglj).ContentUrl()">关联内容</a>
  4.             } 
  5.             else 
  6.             { 
  7.             <a class="gl gl-false">关联内容</a>
  8.             } 

     3、在标签参数要注意添加读取扩展字段参数 ExtendField = true。

  1. <ul>
  2.    @Power.ArticleList("文章标题列表-关联", new { Count = 6Node = "zcjd"TitleLength = 60 , Sort = "PublishTime DESC"ExtendField = true, showDate = trueDateFormat = "yyyy-MM-dd"  }) 
  3. </ul>

      信息公开与文章之间关联

      当规范性文件是信息公开内容,政策解读是文章内容,实现规范性文件(信息公开内容)去关联文章内容,标签以《信息公开列表》为例。

      1、首先同样是获取文章内容,增加代码最后一行:

  1. @{ 
  2.  
  3.     int count = Param.Count; 
  4.     string identifier = Param.Identifier; 
  5.     int departmentId = Param.DepartmentId ?? new DepartmentService().GetMany(d => d.SiteId == SiteContext.Current.SiteId).FirstOrDefault().DepartmentId; 
  6.     var publicInformations = new PublicInformationService().GetLatestList(departmentId, identifier, count, true, true, false); 
  7.     int TitleLength = Param.TitleLength ?? 50; 
  8.     var DisplayDateTime = Param.DisplayDateTime ?? ""; 
  9.     var TimeRight = Param.TimeRight ?? ""; 
  10.     var article = new ArticleService(); 

      2、在标签内容添加。

  1. @if ((int)publicInformation.ExtendObject.xglj != 0) 
  2.              {                  
  3.                 <a class="gl" href="@article.GetEntity((int)publicInformation.ExtendObject.xglj).ContentUrl()">关联内容</a>
  4.              } 
  5.              else 
  6.              { 
  7.                 <a class="gl gl-false">关联内容</a>
  8.              } 

      文章信息公开之间关联

      1、实现政策解读去关联信息公开内容,标签以《文章标题列表》为例。      

  1. @model Article 
  2. @{ 
  3.     string keyword = Param.keyword?.ToString(); 
  4.     var node = new NodeService().GetEntity(x => x.NodeId == Model.NodeId); 
  5.     var target = Param.LinkBlankTarget == true && node != null && node.ContentOpenInNewTarget ? "_blank" : null; 
  6.     var service = new PublicInformationService(); 

      2、在标签内容中添加。

  1. @if ((int)Model.ExtendObject.xglj != 0) 
  2.         { 
  3.             
  4.            <a class="gl" href="@Power.Url.ContentUrl(service.GetEntity((int)Model.ExtendObject.xglj))">关联内容</a>
  5.         } 
  6.         else 
  7.         { 
  8.             <a class="gl gl-false" >关联内容</a>
  9.         }