将参数list,和其他参数放到map中,传到后台,requestList是个集合
Map<String, Object> map = new HashMap<String, Object>();
map.put("afterDate", afterDate);
map.put("powerPlantInfo", requestList);
try {
contracts = this.queryForList("gfContract.powerStationList", map);
map,前面的查询语句,是防止出现null不循环语句,则报错条件1-2永无数据
<select id="powerStationList" parameterClass="java.util.Map" resultMap="powerSationMap">
<dynamic prepend="">
<![CDATA[
SELECT
'33101' as AREA_CODE,
E.Gc_No as POWER_GENERATION_NO,
E.Gc_Name as POWER_USER_NAME,
E.Gc_Addr as POWER_ADDR,
'1' SIGN_STATUS,
w.PAY_AMT,
w.pay_ym
FROM
(
SELECT
*
FROM
YD_33101.fc_gc
WHERE
gc_no ='22222222' ) E
LEFT JOIN ( SELECT t.pay_amt, t.gc_no, t.pay_ym FROM yd_33101.fs_pay_info t WHERE t.pay_ym = #afterDate# ) w
ON E.gc_no = w.gc_no
where 1=2
]]>
<iterate close=" " open=" " property="powerPlantInfo" conjunction="">
<!-- <iterate property="map" conjunction="UNION "> -->
<![CDATA[
union
SELECT
#powerPlantInfo[].proCode# as AREA_CODE,
E.Gc_No as POWER_GENERATION_NO,
E.Gc_Name as POWER_USER_NAME,
E.Gc_Addr as POWER_ADDR,
'1' SIGN_STATUS,
w.PAY_AMT,
w.pay_ym
FROM
(
SELECT
*
FROM
YD_$powerPlantInfo[].proCode$.fc_gc
WHERE
gc_no =#powerPlantInfo[].userNo# ) E
LEFT JOIN ( SELECT t.pay_amt, t.gc_no, t.pay_ym FROM yd_33101.fs_pay_info t WHERE t.pay_ym = #afterDate# ) w
ON E.gc_no = w.gc_no
]]>
</iterate>
</dynamic>
</select>