his-otcrealtime-mapper.xml
3.02 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?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.OtcRealTimeDao">
<!-- 成交统计 -->
<sql id="queryOtcTradeSumCondition">
WHERE t.OTC_PROP = '0S0' AND T.REAL_STATUS = 0
<if test="otc_code != null and otc_code != ''">
and t.otc_code = #{otc_code}
</if>
<if test="startDate != null and startDate != ''">
<![CDATA[and t.curr_date >= #{startDate}]]>
</if>
<if test="endDate != null and endDate != ''">
<![CDATA[and t.curr_date <= #{endDate}]]>
</if>
</sql>
<select id="queryOtcTradeSum" parameterType="map" resultType="map">
<include refid="common.pageStart"/>
SELECT T.OTC_CODE,
SUM(T.BUSINESS_AMOUNT) AMOUNT_TOTAL,
SUM(T.BUSINESS_PRICE * T.BUSINESS_AMOUNT) PRICE_TOTAL
FROM HS_HIS.HIS_OTCREALTIME_VIEW T
<include refid="queryOtcTradeSumCondition" />
GROUP BY T.OTC_CODE
ORDER BY T.OTC_CODE
<include refid="common.pageEnd"/>
</select>
<select id="queryOtcTradeSumTotal" parameterType="map" resultType="int">
SELECT COUNT(*)
FROM (
SELECT T.OTC_CODE
FROM HS_HIS.HIS_OTCREALTIME_VIEW T
<include refid="queryOtcTradeSumCondition" />
GROUP BY T.OTC_CODE
)
</select>
<select id="queryOtcTradeSumFoot" parameterType="map" resultType="map">
SELECT
SUM(T.BUSINESS_AMOUNT) AMOUNT_TOTAL,
SUM(T.BUSINESS_PRICE * T.BUSINESS_AMOUNT) PRICE_TOTAL
FROM HS_HIS.HIS_OTCREALTIME_VIEW T
<include refid="queryOtcTradeSumCondition" />
</select>
<!-- 用户累计买入量统计 -->
<select id="queryBuyTotal" resultType="map" parameterType="map">
SELECT * FROM(
SELECT T.FUND_ACCOUNT, SUM(T.BUSINESS_AMOUNT) BUY_TOTAL
FROM HS_HIS.HIS_OTCREALTIME_VIEW T
WHERE T.OTC_PROP = '0B0' AND T.REAL_STATUS = 0 AND T.OTC_CODE = #{otc_code}
<if test="fund_account != null and fund_account != ''">
AND T.FUND_ACCOUNT = #{fund_account}
</if>
GROUP BY T.FUND_ACCOUNT) A
<![CDATA[WHERE A.BUY_TOTAL > 0]]>
</select>
<!-- 查询历史成交记录 -->
<select id="queryTrade" parameterType="map" resultType="TradeRecordInfo">
<include refid="common.pageStart" />
SELECT TO_CHAR(TO_DATE(T.CURR_DATE||' '||SUBSTR(DECODE(LENGTH(T.CURR_TIME), 8, '0'||T.CURR_TIME, T.CURR_TIME), 0, 6),
'yyyymmdd hh24miss'), 'yyyy-mm-dd hh24:mi:ss') TRADE_AT,
T.OTC_CODE, C.OTC_NAME, T.BUSINESS_PRICE, T.BUSINESS_AMOUNT
FROM HS_HIS.HIS_OTCREALTIME T, HS_OTC.OTCCODE C
<include refid="queryTradeCondition" />
ORDER BY T.INIT_DATE DESC, T.CURR_TIME DESC
<include refid="common.pageEnd" />
</select>
<select id="queryTradeTotal" parameterType="map" resultType="int">
SELECT COUNT(*)
FROM HS_HIS.HIS_OTCREALTIME T, HS_OTC.OTCCODE C
<include refid="queryTradeCondition" />
</select>
<sql id="queryTradeCondition">
WHERE T.OTC_CODE = C.OTC_CODE AND T.OTC_PROP = '0B0' AND T.REAL_STATUS = '0'
<if test="startDate != null and startDate != ''">
<![CDATA[ AND T.INIT_DATE >= #{startDate} ]]>
</if>
</sql>
</mapper>