1
zj
2024-06-13 8eea5be3b36875bd4ffe70e6c3a5bb07b1d829bf
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?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.yami.trading.dao.future.FuturesOrderMapper">
 
    <sql id="tFuturesOrderColumns">
        a.uuid AS "uuid",
        a.party_id AS "partyId",
        a.symbol AS "symbol",
        a.order_no AS "orderNo",
        a.direction AS "direction",
        a.timenum AS "timenum",
        a.timeunit AS "timeunit",
        a.unit_amount AS "unitAmount",
        a.volume AS "volume",
        a.fee AS "fee",
        a.profit_ratio AS "profitRatio",
        a.profit AS "profit",
        a.trade_avg_price AS "tradeAvgPrice",
        a.close_avg_price AS "closeAvgPrice",
        a.state AS "state",
        a.create_time AS "createTime",
        a.close_time AS "closeTime",
        a.settlement_time AS "settlementTime",
        a.profit_loss AS "profitLoss",
        a.create_by AS "createBy",
        a.update_by AS "updateBy",
        a.update_time AS "updateTime",
        a.remarks AS "remarks",
        a.del_flag AS "delFlag",
        a.create_time_ts AS "createTimeTs",
        a.update_time_ts AS "updateTimeTs"
 
    </sql>
 
    <sql id="tFuturesOrderJoins">
 
    </sql>
 
 
    <select id="findByHourAndSate" resultType="com.yami.trading.bean.future.domain.FuturesOrder">
        select a.* from t_futures_order a left join tz_user b on a.PARTY_ID = b.user_id
        <where>
        <if test="state!=null and state!=''">
            and a.state=#{state}
        </if>
        <if test="roleName!=null and roleName!=''">
            and b.role_name=#{roleName}
        </if>
        and timestampdiff(minute, FROM_UNIXTIME(a.settlement_time), #{nowTime}) &lt; 24*60
        and del_flag = 0
        </where>
    </select>
 
 
 
 
    <select id="findById" resultType="com.yami.trading.bean.future.dto.TFuturesOrderDTO">
        SELECT
            <include refid="tFuturesOrderColumns"/>
        FROM t_futures_order a
        <include refid="tFuturesOrderJoins"/>
        WHERE a.uuid = #{id} and a.del_flag = 0
    </select>
 
    <select id="findList" resultType="com.yami.trading.bean.future.dto.TFuturesOrderDTO">
        SELECT
            <include refid="tFuturesOrderColumns"/>
        FROM t_futures_order a
        <include refid="tFuturesOrderJoins"/>
        ${ew.customSqlSegment}
    </select>
 
 
    <!--代理商逻辑 todo -->
    <select id="listRecord" resultType="com.yami.trading.bean.future.dto.TFuturesOrderDTO" >
        select * from t_futures_order a left join tz_user b on a.party_id = b.user_id
        left join t_item item on a.symbol = item.symbol
        <where>
            <if test="query.type!=null and query.type!=''">
                and item.type=#{query.type}
            </if>
        <if test="query.orderNo!=null and query.orderNo!=''">
            and a.order_no=#{query.orderNo}
        </if>
            <if test="query.direction!=null and query.direction!=''">
                and a.direction=#{query.direction}
            </if>
            <if test="query.tradeAvgPrice!=null and query.tradeAvgPrice!=''">
                and a.trade_avg_price=#{query.tradeAvgPrice}
            </if>
 
            <if test="query.children != null and query.children.size() >0">
                AND a.party_id in
                <foreach collection="query.children" item="item" index="index" open="(" close=")" separator=",">
                    #{item}
                </foreach>
            </if>
        <if test="query.symbol!=null and query.symbol!=''">
            and a.symbol=#{query.symbol}
        </if>
 
        <if test="query.volume!=null and query.volume!=''">
            and a.volume=#{query.volume}
        </if>
        <if test="query.state!=null and query.state!=''">
            and a.state=#{query.state}
        </if>
            <if test="query.userCode!=null and query.userCode!=''">
                and b.user_code=#{query.userCode}
            </if>
            <if test="query.roleName!=null and query.roleName!=''">
                and b.role_name=#{query.roleName}
            </if>
        <if test="query.userId!=null and query.userId!=''">
            and b.user_id=#{query.userId}
        </if>
        <if test="query.roleName!=null and query.roleName!=''">
            and b.role_name=#{query.roleName}
        </if>
        <if test="query.ip!=null and query.ip!=''">
            and b.user_lastip like CONCAT('%', #{query.ip}, '%')
        </if>
        <if test="query.userName!=null and query.userName!=''">
            AND  (b.user_name like CONCAT('%', #{query.userName}, '%') or b.user_code like CONCAT('%', #{query.userName}, '%'))
        </if>
        </where>
        order by a.create_time desc
    </select>
 
</mapper>