first commit

This commit is contained in:
2026-08-31 16:22:00 +08:00
commit e969a1e559
2665 changed files with 128795 additions and 0 deletions
@@ -0,0 +1,543 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<LabelType>列表类</LabelType>
<LabelIntro>内容信息列表复杂算法主标签,此标签仅用来调用,无需修改!</LabelIntro>
<OutType>sin</OutType>
<LabelDataType>sql_sysquery</LabelDataType>
<EnabelAjax>False</EnabelAjax>
<IsXsltSql>false</IsXsltSql>
<IsXsltCountSql>false</IsXsltCountSql>
<LabelSqlString>SELECT NodeID,arrChildID,ItemListOrderType,ItemPageSize FROM PE_Nodes WHERE NodeID IN (@nodes)</LabelSqlString>
<attributes>
<name>bindStyle</name>
<datatype>string</datatype>
<default>普通式</default>
<intro>项目呈现样式</intro>
</attributes>
<attributes>
<name>usePage</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否分页显示</intro>
</attributes>
<attributes>
<name>outputQty</name>
<datatype>int</datatype>
<default>10</default>
<intro>输出的项目数量</intro>
</attributes>
<attributes>
<name>titleLength</name>
<datatype>int</datatype>
<default>50</default>
<intro>项目标题长度,一个汉字占两个字节</intro>
</attributes>
<attributes>
<name>contentLength</name>
<datatype>int</datatype>
<default>0</default>
<intro>项目内容长度</intro>
</attributes>
<attributes>
<name>nodes</name>
<datatype>supersql</datatype>
<default>0</default>
<intro>栏目ID</intro>
</attributes>
<attributes>
<name>includeChildNodes</name>
<datatype>bool</datatype>
<default>true</default>
<intro>是否包含子栏目</intro>
</attributes>
<attributes>
<name>models</name>
<datatype>string</datatype>
<default>0</default>
<intro>模型ID</intro>
</attributes>
<attributes>
<name>bindModel</name>
<datatype>int</datatype>
<default>1</default>
<intro>通过模型ID与指定的模型表联合</intro>
</attributes>
<attributes>
<name>specials</name>
<datatype>string</datatype>
<default>0</default>
<intro>专题ID</intro>
</attributes>
<attributes>
<name>items</name>
<datatype>string</datatype>
<default>0</default>
<intro>项目ID</intro>
</attributes>
<attributes>
<name>listOrderType</name>
<datatype>int</datatype>
<default>1</default>
<intro>项目列表排序方式</intro>
</attributes>
<attributes>
<name>linkOpenType</name>
<datatype>int</datatype>
<default>0</default>
<intro>项目列表打开方式</intro>
</attributes>
<attributes>
<name>inDays</name>
<datatype>int</datatype>
<default />
<intro>近多少天的项目</intro>
</attributes>
<attributes>
<name>betDate</name>
<datatype>string</datatype>
<default />
<intro>介于时间段之间的项目</intro>
</attributes>
<attributes>
<name>author</name>
<datatype>string</datatype>
<default />
<intro>为指定作者的项目</intro>
</attributes>
<attributes>
<name>editor</name>
<datatype>string</datatype>
<default />
<intro>为指定编辑者的项目</intro>
</attributes>
<attributes>
<name>inputer</name>
<datatype>string</datatype>
<default />
<intro>为指定录入者的项目</intro>
</attributes>
<attributes>
<name>hits</name>
<datatype>int</datatype>
<default />
<intro>点击数大于等于指定值的项目</intro>
</attributes>
<attributes>
<name>dayHits</name>
<datatype>int</datatype>
<default />
<intro>日点击数大于等于指定值的项目</intro>
</attributes>
<attributes>
<name>weekHits</name>
<datatype>int</datatype>
<default />
<intro>周点击数大于等于指定值的项目</intro>
</attributes>
<attributes>
<name>monthHits</name>
<datatype>int</datatype>
<default />
<intro>月点击数大于等于指定值的项目</intro>
</attributes>
<attributes>
<name>eliteLevel</name>
<datatype>int</datatype>
<default />
<intro>推荐级大于等于指定值的项目</intro>
</attributes>
<attributes>
<name>priorityLevel</name>
<datatype>int</datatype>
<default />
<intro>优先级大于等于指定值的项目</intro>
</attributes>
<attributes>
<name>picExist</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否查询带图片的项目</intro>
</attributes>
<attributes>
<name>disableVirtualLink</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否禁止输出虚连接项目</intro>
</attributes>
<attributes>
<name>displayPropertyPrefix</name>
<datatype>int</datatype>
<default>0</default>
<intro>项目列表前缀修饰符</intro>
</attributes>
<attributes>
<name>displayDateTime</name>
<datatype>string</datatype>
<default />
<intro>显示日期格式如:mm-dd,为空则不显示</intro>
</attributes>
<attributes>
<name>displayNewSign</name>
<datatype>int</datatype>
<default />
<intro>近多少天的项目视为最新,为空则不启用此功能</intro>
</attributes>
<attributes>
<name>displayTitlePrefix</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示项目前缀修饰语</intro>
</attributes>
<attributes>
<name>displayHits</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示项目点击数</intro>
</attributes>
<attributes>
<name>displayTips</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示作者,更新日期,点击数等浮动提示信息</intro>
</attributes>
<attributes>
<name>displayAuthor</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示作者</intro>
</attributes>
<attributes>
<name>displayEditor</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示编辑</intro>
</attributes>
<attributes>
<name>displayInputer</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示内容的录入者</intro>
</attributes>
<attributes>
<name>displayNodeName</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示所属栏目名称</intro>
</attributes>
<attributes>
<name>displayHotSign</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示热门内容图标</intro>
</attributes>
<attributes>
<name>displayCommentLink</name>
<datatype>bool</datatype>
<default>false</default>
<intro>是否显示评论链接</intro>
</attributes>
<attributes>
<name>listOrderByNodeSet</name>
<datatype>bool</datatype>
<default>false</default>
<intro>项目列表排序方式由节点配置取代</intro>
</attributes>
<attributes>
<name>pageSizeByNodeSet</name>
<datatype>bool</datatype>
<default>false</default>
<intro>输出的项目数量由节点配置取代</intro>
</attributes>
<attributes>
<name>optionalCond</name>
<datatype>string</datatype>
<default />
<intro>可选扩展查询约束条件</intro>
</attributes>
<attributes>
<name>optionalExtend</name>
<datatype>string</datatype>
<default />
<intro>可选扩展参数</intro>
</attributes>
<LabelTemplate><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:pe="labelproc" exclude-result-prefixes="pe">
<xsl:output method="html" version="1.0" encoding="UTF-8" indent="no"/>
<xsl:param name="bindStyle" />
<xsl:param name="usePage" />
<xsl:param name="outputQty" />
<xsl:param name="titleLength" />
<xsl:param name="contentLength" />
<xsl:param name="nodes" />
<xsl:param name="includeChildNodes" />
<xsl:param name="models" />
<xsl:param name="bindModel"/>
<xsl:param name="specials" />
<xsl:param name="items" />
<xsl:param name="listOrderType" />
<xsl:param name="linkOpenType"/>
<xsl:param name="inDays" />
<xsl:param name="betDate" />
<xsl:param name="editor" />
<xsl:param name="author" />
<xsl:param name="inputer" />
<xsl:param name="copyFrom" />
<xsl:param name="hits" />
<xsl:param name="dayHits" />
<xsl:param name="weekHits" />
<xsl:param name="monthHits" />
<xsl:param name="eliteLevel" />
<xsl:param name="priorityLevel" />
<xsl:param name="picExist"/>
<xsl:param name="disableVirtualLink" />
<xsl:param name="displayDateTime" />
<xsl:param name="displayPropertyPrefix" />
<xsl:param name="displayNewSign" />
<xsl:param name="displayTitlePrefix" />
<xsl:param name="displayHits" />
<xsl:param name="displayTips" />
<xsl:param name="displayAuthor" />
<xsl:param name="displayEditor" />
<xsl:param name="displayInputer" />
<xsl:param name="displayNodeName" />
<xsl:param name="displayCommentLink"/>
<xsl:param name="displayHotSign" />
<xsl:param name="listOrderByNodeSet" />
<xsl:param name="pageSizeByNodeSet" />
<xsl:param name="optionalCond" />
<xsl:param name="optionalExtend" />
<xsl:variable name="singleApos">'</xsl:variable>
<xsl:variable name="doubleApos">''</xsl:variable>
<!--约束条件模板,如需维护此模板,请注意各项数据有效性-->
<xsl:template name="_constraint">
<xsl:param name="_doubleApos"/>
<xsl:if test="$disableVirtualLink = 'true'">
AND CM.LinkType = 0
</xsl:if>
<xsl:if test="$specials != 0">
AND SI.SpecialID IN (<xsl:value-of select="$specials"/>)
</xsl:if>
<xsl:if test="$models != 0">
AND CM.ModelID IN (<xsl:value-of select="$models"/>)
</xsl:if>
<xsl:if test="$items != 0">
AND CM.GeneralID IN (<xsl:value-of select="$items"/>)
</xsl:if>
<xsl:if test="$eliteLevel != ''">
AND CM.EliteLevel &gt;= <xsl:value-of select="$eliteLevel"/>
</xsl:if>
<xsl:if test="$priorityLevel != ''">
AND CM.Priority &gt;= <xsl:value-of select="$priorityLevel"/>
</xsl:if>
<xsl:if test="$hits != ''">
AND CM.Hits &gt;= <xsl:value-of select="$hits"/>
</xsl:if>
<xsl:if test="$dayHits != ''">
AND CM.DayHits &gt;= <xsl:value-of select="$dayHits"/>
</xsl:if>
<xsl:if test="$weekHits != ''">
AND CM.WeekHits &gt;= <xsl:value-of select="$weekHits"/>
</xsl:if>
<xsl:if test="$monthHits != ''">
AND CM.MonthHits &gt;= <xsl:value-of select="$monthHits"/>
</xsl:if>
<xsl:if test="$inDays != ''">
AND DATEDIFF(d,CM.UpdateTime,GETDATE()) &lt;= <xsl:value-of select="$inDays"/>
</xsl:if>
<!--单引号处理-->
<xsl:choose>
<xsl:when test="$usePage = 'true' and $_doubleApos='true'">
<xsl:if test="$picExist = 'true'">
AND CM.DefaultPicUrl != ''''
</xsl:if>
<xsl:if test="$copyFrom != ''">
AND UT.CopyFrom = ''<xsl:value-of select="$copyFrom"/>''
</xsl:if>
<xsl:if test="$author != ''">
AND UT.Author = ''<xsl:value-of select="pe:ReplaceText($author,$singleApos,$doubleApos)"/>''
</xsl:if>
<xsl:if test="$inputer != ''">
AND CM.Inputer = ''<xsl:value-of select="pe:ReplaceText($inputer,$singleApos,$doubleApos)"/>''
</xsl:if>
<xsl:if test="$editor != ''">
AND CM.Editor = ''<xsl:value-of select="pe:ReplaceText($editor,$singleApos,$doubleApos)"/>''
</xsl:if>
<xsl:if test="$betDate != '' and $betDate != '|'">
AND (CONVERT(varchar(10) , CM.UpdateTime, 120 ) &gt;= ''<xsl:value-of select="substring-before($betDate,'|')" />'') AND (CONVERT(varchar(10) , CM.UpdateTime, 120 ) &lt;= ''<xsl:value-of select="substring-after($betDate,'|')" />'')
</xsl:if>
</xsl:when>
<xsl:otherwise>
<xsl:if test="$picExist = 'true'">
AND CM.DefaultPicUrl != ''
</xsl:if>
<xsl:if test="$copyFrom != ''">
AND UT.CopyFrom = '<xsl:value-of select="$copyFrom"/>'
</xsl:if>
<xsl:if test="$author != ''">
AND UT.Author = '<xsl:value-of select="pe:ReplaceText($author,$singleApos,$doubleApos)"/>'
</xsl:if>
<xsl:if test="$inputer != ''">
AND CM.Inputer = '<xsl:value-of select="pe:ReplaceText($inputer,$singleApos,$doubleApos)"/>'
</xsl:if>
<xsl:if test="$editor != ''">
AND CM.Editor = '<xsl:value-of select="pe:ReplaceText($editor,$singleApos,$doubleApos)"/>'
</xsl:if>
<xsl:if test="$betDate != '' and $betDate != '|'">
AND (CONVERT(varchar(10) , CM.UpdateTime, 120 ) &gt;= '<xsl:value-of select="substring-before($betDate,'|')" />') AND (CONVERT(varchar(10) , CM.UpdateTime, 120 ) &lt;= '<xsl:value-of select="substring-after($betDate,'|')" />')
</xsl:if>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="$optionalCond != ''">
<xsl:value-of select="$optionalCond"/>
</xsl:if>
</xsl:template>
<xsl:template match="/NewDataSet">
<!--参数传递节,如需增加参数传递,请修改此变量节-->
<xsl:variable name="_params">
titleLength="<xsl:value-of select="$titleLength"/>" linkOpenType="<xsl:value-of select="$linkOpenType"/>" displayCommentLink="<xsl:value-of select="$displayCommentLink"/>" contentLength="<xsl:value-of select="$contentLength"/>" displayAuthor="<xsl:value-of select="$displayAuthor"/>" displayEditor="<xsl:value-of select="$displayEditor"/>" displayPropertyPrefix="<xsl:value-of select="$displayPropertyPrefix"/>" displayDateTime="<xsl:value-of select="$displayDateTime"/>" displayTitlePrefix="<xsl:value-of select="$displayTitlePrefix"/>" displayHits="<xsl:value-of select="$displayHits"/>" displayTips="<xsl:value-of select="$displayTips"/>" displayInputer="<xsl:value-of select="$displayInputer"/>" displayNodeName="<xsl:value-of select="$displayNodeName"/>" displayHotSign="<xsl:value-of select="$displayHotSign"/>" displayNewSign="<xsl:value-of select="$displayNewSign"/>" optionalExtend="<xsl:value-of select="$optionalExtend"/>"
</xsl:variable>
<!--绑定样式前缀节,如需维护,请修改此变量节-->
<xsl:variable name="_bindStyle">
内容信息列表_<xsl:value-of select="$bindStyle"/>
</xsl:variable>
<!--约束条件节,如需维护,请修改此变量节-->
<!--内容列表排序方式判断、此变量节请勿修改-->
<xsl:variable name="_listOrderType">
<xsl:choose>
<xsl:when test="contains($nodes,',') = 'true'">
<xsl:value-of select="$listOrderType"/>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$listOrderByNodeSet = 'true'">
<xsl:value-of select="/NewDataSet/Table/ItemListOrderType"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$listOrderType"/>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!--内容列表排序、此变量节请勿修改-->
<xsl:variable name="_listOrderValue">
<xsl:choose>
<xsl:when test="$_listOrderType = 1">CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 2">CM.GeneralID ASC</xsl:when>
<xsl:when test="$_listOrderType = 3">CM.UpdateTime DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 4">CM.UpdateTime ASC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 5">CM.Hits DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 6">CM.Hits ASC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 7">CM.CommentAudited DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 8">CM.CommentAudited ASC,,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 9">CM.DayHits DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 10">CM.DayHits ASC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 11">CM.WeekHits DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 12">CM.WeekHits ASC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 13">CM.MonthHits DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 14">CM.MonthHits ASC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 15">CM.EliteLevel DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 16">CM.EliteLevel ASC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 17">CM.Priority DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 18">CM.Priority ASC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 19">CM.Hits DESC,CM.UpdateTime DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 20">CM.EliteLevel DESC,CM.UpdateTime DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 21">CM.Priority DESC,CM.UpdateTime DESC,CM.GeneralID DESC</xsl:when>
<xsl:when test="$_listOrderType = 22">CM.CommentAudited DESC,CM.UpdateTime DESC,CM.GeneralID DESC</xsl:when>
<xsl:otherwise>CM.UpdateTime DESC,CM.GeneralID DESC</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!--分页大小判断、此变量节请勿修改-->
<xsl:variable name="_pageSize">
<xsl:choose>
<xsl:when test="$pageSizeByNodeSet = 'true'">
<xsl:choose>
<xsl:when test="NewDataSet/Table/ItemPageSize &gt; 0">
<xsl:value-of select="NewDataSet/Table/ItemPageSize"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$outputQty"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$outputQty"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!--取得节点列,此变量节请勿修改-->
<xsl:variable name="_nodes">
<xsl:choose>
<xsl:when test="$includeChildNodes = 'false'">
<xsl:value-of select="$nodes"/>
</xsl:when>
<xsl:otherwise>
<xsl:for-each select="/NewDataSet/Table">
<xsl:value-of select="arrChildID"/>,
</xsl:for-each>0
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!--取得模型绑定串节,此变量节请勿修改-->
<xsl:variable name="_bindModel">
<xsl:if test="$specials != 0">
INNER JOIN PE_SpecialInfos SI ON (CM.ItemID = SI.GeneralID)
</xsl:if>
<xsl:if test="$bindModel != 0">
<xsl:value-of select="pe:GetSqlSnippet($bindModel)"/>
</xsl:if>
</xsl:variable>
<!--查询语句组合节,此节请勿修改-->
<xsl:choose>
<xsl:when test="Table">
<xsl:choose>
<xsl:when test="$usePage = 'true'">
{PE.Label id="<xsl:value-of select="$_bindStyle"/>" <xsl:value-of select="$_params"/> queryCond="EXEC [dbo].[PR_Common_PagingLarge] 'PE_CommonModel CM <xsl:value-of select="$_bindModel"/>', 'CM.GeneralID', '*', @pagesize, @startrow, 'CM.Status = 99 AND CM.NodeID IN (<xsl:value-of select="$_nodes"/>) <xsl:call-template name="_constraint">
<xsl:with-param name="_doubleApos" select="'true'"/>
</xsl:call-template>', '', '<xsl:value-of select="$_listOrderValue"/>' ;" queryCount="SELECT COUNT (CM.ItemID) FROM PE_CommonModel CM <xsl:value-of select="$_bindModel"/> WHERE CM.Status = 99 AND CM.NodeID IN (<xsl:value-of select="$_nodes"/>) <xsl:call-template name="_constraint">
<xsl:with-param name="_doubleApos" select="'false'"/>
</xsl:call-template>" page="true" pagesize="<xsl:value-of select="$_pageSize"/>" urlpage="true" /}
</xsl:when>
<xsl:otherwise>
{PE.Label id="<xsl:value-of select="$_bindStyle"/>" <xsl:value-of select="$_params"/> queryCond="SELECT TOP <xsl:value-of select="$_pageSize"/> * FROM PE_CommonModel CM <xsl:value-of select="$_bindModel"/> WHERE CM.Status = 99 AND CM.NodeID IN (<xsl:value-of select="$_nodes"/>) <xsl:call-template name="_constraint">
<xsl:with-param name="usePage" select="'false'"/>
</xsl:call-template> ORDER BY <xsl:value-of select="$_listOrderValue"/>" page="false" /}
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$nodes = 0">
<xsl:choose>
<xsl:when test="$usePage = 'true'">
{PE.Label id="<xsl:value-of select="$_bindStyle"/>" <xsl:value-of select="$_params"/> queryCond="EXEC [dbo].[PR_Common_PagingLarge] 'PE_CommonModel CM <xsl:value-of select="$_bindModel"/>', 'CM.GeneralID', '*', @pagesize, @startrow, 'CM.Status = 99 <xsl:call-template name="_constraint">
<xsl:with-param name="_doubleApos" select="'true'"/>
</xsl:call-template>', '', '<xsl:value-of select="$_listOrderValue"/>' ;" queryCount="SELECT COUNT (CM.ItemID) FROM PE_CommonModel CM <xsl:value-of select="$_bindModel"/> WHERE CM.Status = 99 <xsl:call-template name="_constraint">
<xsl:with-param name="_doubleApos" select="'false'"/>
</xsl:call-template>" page="true" pagesize="<xsl:value-of select="$_pageSize"/>" urlpage="true" /}
</xsl:when>
<xsl:otherwise>
{PE.Label id="<xsl:value-of select="$_bindStyle"/>" <xsl:value-of select="$_params"/> queryCond="SELECT TOP <xsl:value-of select="$_pageSize"/> * FROM PE_CommonModel CM <xsl:value-of select="$_bindModel"/> WHERE CM.Status = 99 <xsl:call-template name="_constraint">
<xsl:with-param name="_doubleApos" select="'false'"/>
</xsl:call-template> ORDER BY <xsl:value-of select="$_listOrderValue"/>" page="false" /}
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<font style="color:red">指定了不存在的栏目ID或栏目数组!</font>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>]]></LabelTemplate>
<Version officialVersion="" modifiedVersions="3001" compatibleVersion="" />
<attributes>
<name>copyFrom</name>
<datatype>string</datatype>
<default>
</default>
<intro>项目来源</intro>
</attributes>
</root>