1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| <select id="search" resultMap="BaseResultMap"> SELECT <include refid="BaseColumns"/> FROM <include refid="BaseTable"/> <if test="criteria != null and criteria.vo != null"> <trim prefix="WHERE" prefixOverrides="AND | OR"> <if test="criteria.vo.id != null"> AND id = #{criteria.vo.id, jdbcType=BIGINT} </if> <if test="criteria.vo.name != null and criteria.vo.name!=''"> AND name = #{criteria.vo.name, jdbcType=VARCHAR} </if> <if test="criteria.generic != null"> <trim prefix=" and (" prefixOverrides="" suffix=")"> <foreach collection="criteria.generic.genericCriteria" item="criteriachild" separator="or"> <if test="criteriachild.valid"> <trim prefix="(" prefixOverrides="and" suffix=")"> <foreach collection="criteriachild.criteria" item="criterion"> <if test="criterion.frontBrackets != null and criterion.frontBrackets != ''"> ${criterion.frontBrackets} </if> <choose> <when test="criterion.noValue"> ${criterion.condition} </when> <when test="criterion.singleValue"> ${criterion.condition} #{criterion.value} </when> <when test="criterion.betweenValue"> ${criterion.condition} #{criterion.value} and #{criterion.secondValue} </when> <when test="criterion.listValue"> ${criterion.condition} <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=","> #{listItem} </foreach> </when> </choose> <if test="criterion.postBrackets != null and criterion.postBrackets != ''"> ${criterion.postBrackets} </if> <if test="criterion.conditionOperation != null and criterion.conditionOperation != ''"> ${criterion.conditionOperation} </if> </foreach> </trim> </if> </foreach> </trim> </if> </trim> </if> <if test="criteria != null and criteria.orderByClauses != null "> <trim prefix=" ORDER BY " suffix=" " suffixOverrides=","> <foreach collection="criteria.orderByClauses" item="orderByObj"> <if test="orderByObj.field != null and orderByObj.field != ''"> <if test="orderByObj.orderByMode == 0"> ${orderByObj.field} ASC , </if> <if test="orderByObj.orderByMode != 0"> ${orderByObj.field} DESC , </if> </if> </foreach> </trim> </if> </select>
|