xml 配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.saic.grape.csc.dao.CouponManagerCscDAO">
<resultMap id="CouponMap" type="Map">
<result column="coupId" property="coupId" javaType="string"/>
<collection property="brandList" ofType="map" javaType="ArrayList" column="coupId" select="queryBrandList"/>
<collection property="cityList" ofType="map" javaType="ArrayList" column="coupId" select="queryCityList"/>
</resultMap>
<!-- 获取保养券列表 -->
<select id="getCouponList" parameterType="Map" resultMap="CouponMap" flushCache="true">
SELECT
c.id coupId,
DATE_FORMAT(c.expired_date,'%Y-%m-%d %H:%i:%s') AS expiredDate,
c.valid_days validDays,
c.amount amount,
c.states states,
DATE_FORMAT(c.modify_date,'%Y-%m-%d %H:%i:%s') AS modifyDate,
c.memo memo
FROM t_coupon c
<where>
<if test="coupId != null and coupId != ''">
c.id = #{coupId}
</if>
<if test="expiredDate != null and expiredDate != ''">
AND c.expired_date = #{expiredDate}
</if>
<if test="validDays != null and validDays != ''">
AND c.valid_days = #{validDays}
</if>
<if test="amount != null and amount != ''">
AND c.amount = #{amount}
</if>
<if test="states != null and states != ''">
AND c.states = #{states}
</if>
</where>
</select>
<select id="queryBrandList" parameterType="string" resultType="map">
SELECT
cb.id cbId,
cb.brand_id brandId,
cb.brand_name brandName
FROM t_coupon_brand cb
WHERE
cb.coupon_id = #{coupId}
</select>
<select id="queryCityList" parameterType="string" resultType="map">
SELECT
cc.id ccId,
cc.city_code cityCode,
cc.city_name cityName
FROM t_coupon_city cc
WHERE
cc.coupon_id = #{coupId}
</select>
</mapper>
java 代码:
/**
* 获取保养券规则信息列表
*/
@Override
public List<Map<String, Object>> getCouponList(Map<String, Object> params) {
// TODO Auto-generated method stub
return this.getSqlSession().selectList(nameSpace.concat("getCouponList"), params);
}