应用情况:资讯表通过activityflg来区分资讯类型(00:资讯 01:报名 02:拼团)
设置默认排序参数(默认降序:sorttype:00:升序 01:降序)
controller:
String sorttype = request.getParameter("sorttype");
if (!Tools.isNotNullStr(sorttype)) {
sorttype = "01";
}
xml:
<select id="appEditList" resultType="Map">
select a.nid,a.title,a.showtype,a.url,a.linkurl,a.contentpicurl,a.contentpicsurl
,a.updatetime,a.pubsta,a.editsta,a.edittime,a.hideflg
,a.shareurl,a.picurl,a.picdescribe,c.uname,c.phone,a.createtime
,b.rbiid,b.rbioname
from info_news a
INNER JOIN rbi_organization b on b.orgid = a.orgid
LEFT JOIN os_user c on c.uid = a.createuid
where a.delflg = '00' and a.comefrom!='10' and activityflg = #{activityflg}
and a.editsta in ('00','01') and b.testorg='00' and a.showtype not in ('06','07')
<if test="keyword != null and keyword != ''.toString()">
AND (a.title LIKE CONCAT('%',#{keyword},'%')
OR b.rbioname LIKE CONCAT('%',#{keyword},'%'))
</if>
ORDER BY
<choose>
<when test="sorttype == '00'.toString()">
a.updatetime ASC
</when>
<when test="sorttype == '01'.toString()">
a.updatetime DESC
</when>
<otherwise>
</otherwise>
</choose>
<if test="beginNo != null and endNo != null">
limit #{beginNo,jdbcType=INTEGER},
#{endNo,jdbcType=INTEGER}
</if>
</select>