1、遍历map
package com.isuzu.vehicle.onroad.dal.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.isuzu.vehicle.onroad.dal.entity.VehicleOnroad;
import com.isuzu.vehicle.onroad.service.vo.VehicleOnroadVo;
import com.ne.ice.boot.common.entity.Page;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Results;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.type.JdbcType;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author Yungui.Zheng
*/
public interface VehicleOnroadMapper extends BaseMapper<VehicleOnroad>
{
/**
* 分页查询
* @param page 分页对象
* @param conditionMap 条件map
* @param order 排序
* @return 分页list
*/
@Select("<script>"
+ " select "
+" * "
+ " FROM "
+ " tm_vehicle_onroad "
+" <where> "
+" <foreach collection="cond.keys" item="wkey" >"
+" <choose> " +
" <when test="wkey =='vin'"> " +//关键词
" and vin like concat('%',#{cond[${wkey}]},'%') " +
" </when> " +
" <when test="wkey =='vinList'"> " +//用户vinList
" and vin in (
" +
" <foreach collection="cond[wkey]" item="item" index="index" separator=",">
" +
" #{item}
" +
" </foreach>) " +
" </when> " +
" <when test="wkey =='from'"> " +//开始时间
" and create_time >=#{cond[${wkey}]} " +
" </when> " +
" <when test="wkey =='to'"> " +//结束时间
" and create_time <=#{cond[${wkey}]} " +
" </when> " +
" <otherwise> " +
" <if test="cond[wkey]!= null">and ${wkey}= #{cond[${wkey}]}</if> " +
" </otherwise> " +
" </choose>"+
"</foreach> "+
" </where> "
+" <if test="order!= null"> ${order}</if> "
+ "</script>")
List<VehicleOnroad> selectPageByMap(Page<VehicleOnroad> page, @Param("cond") Map<String, Object> conditionMap, @Param("order") String order) ;
}
2、二级循环OGNL表达式取值