his-bank-transfer-mapper.xml
2.86 KB
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
<?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">
<!-- 出入金记录 @author 仝玉甫 -->
<mapper namespace="com.cjs.cms.dao.report.HisBankTransferDao">
<sql id="innerSearchCondition">
WHERE 1 = 1
<if test="userId != null and userId != ''"> AND FUND_ACCOUNT = #{userId} </if>
<if test="occurBalance > 0"><![CDATA[ AND OCCUR_BALANCE > #{occurBalance} ]]></if>
<if test="startDate != null and startDate != ''"> <![CDATA[AND CURR_DATE >= #{startDate} ]]> </if>
<if test="endDate != null and endDate != ''"> <![CDATA[AND CURR_DATE <= #{endDate} ]]> </if>
</sql>
<sql id="searchCondition">
WHERE 1 = 1
<if test="transType != null and transType != ''"> AND T.TRANS_TYPE IN (${transType}) </if>
<if test="chargeType != null and chargeType != ''"> AND T.CHARGE_TYPE = #{chargeType} </if>
<if test="bkTransStatus != null and bkTransStatus != ''"> AND T.BKTRANS_STATUS = #{bkTransStatus} </if>
</sql>
<select id="search" parameterType="map" resultType="map">
<!-- CHARGE_TYPE(01:快捷;02:网银) -->
<include refid="common.pageStart"/>
SELECT * FROM(
SELECT A.FUND_ACCOUNT, A.OCCUR_BALANCE, A.POST_BALANCE, '01' AS CHARGE_TYPE,
A.CURR_DATE, A.CURR_TIME, A.TRANS_TYPE, A.REMARK, A.BKTRANS_STATUS
FROM HS_ASSET.BANKTRANSFER A
<include refid="innerSearchCondition" />
UNION
SELECT C.FUND_ACCOUNT, C.OCCUR_BALANCE, C.POST_BALANCE, '01' AS CHARGE_TYPE,
C.CURR_DATE, C.CURR_TIME, C.TRANS_TYPE, C.REMARK, C.BKTRANS_STATUS
FROM HS_HIS.HIS_BANKTRANSFER C
<include refid="innerSearchCondition" />
UNION
SELECT B.FUND_ACCOUNT, B.OCCUR_BALANCE, 0.0 AS POST_BALANCE, '02' AS CHARGE_TYPE,
B.CURR_DATE, B.CURR_TIME, '01' AS TRANS_TYPE, '' AS REMARK, '2' AS BKTRANS_STATUS
FROM HS_ASSET.BANKTRANSIN B
<include refid="innerSearchCondition" />
) T
<include refid="searchCondition" />
ORDER BY CURR_DATE DESC, FUND_ACCOUNT
<include refid="common.pageEnd"/>
</select>
<select id="searchTotal" parameterType="map" resultType="int">
SELECT COUNT(*) FROM(
SELECT A.FUND_ACCOUNT, A.OCCUR_BALANCE, A.POST_BALANCE, '01' AS CHARGE_TYPE,
A.CURR_DATE, A.CURR_TIME, A.TRANS_TYPE, A.REMARK, A.BKTRANS_STATUS
FROM HS_ASSET.BANKTRANSFER A
<include refid="innerSearchCondition" />
UNION
SELECT C.FUND_ACCOUNT, C.OCCUR_BALANCE, C.POST_BALANCE, '01' AS CHARGE_TYPE,
C.CURR_DATE, C.CURR_TIME, C.TRANS_TYPE, C.REMARK, C.BKTRANS_STATUS
FROM HS_HIS.HIS_BANKTRANSFER C
<include refid="innerSearchCondition" />
UNION
SELECT B.FUND_ACCOUNT, B.OCCUR_BALANCE, 0.0 AS POST_BALANCE, '02' AS CHARGE_TYPE,
B.CURR_DATE, B.CURR_TIME, '01' AS TRANS_TYPE, '' AS REMARK, '2' AS BKTRANS_STATUS
FROM HS_ASSET.BANKTRANSIN B
<include refid="innerSearchCondition" />
) T
<include refid="searchCondition" />
</select>
</mapper>