From d76ed8abc8f31e210f4e93f173f41bc2861870dd Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 06 Apr 2021 15:37:49 +0800 Subject: [PATCH] 20210406 交易员列表查询 --- src/main/resources/mapper/contract/ContractOrderDao.xml | 163 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 159 insertions(+), 4 deletions(-) diff --git a/src/main/resources/mapper/contract/ContractOrderDao.xml b/src/main/resources/mapper/contract/ContractOrderDao.xml index d98a8d3..4df2c4c 100644 --- a/src/main/resources/mapper/contract/ContractOrderDao.xml +++ b/src/main/resources/mapper/contract/ContractOrderDao.xml @@ -2,10 +2,165 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.xcong.excoin.modules.contract.dao.ContractOrderDao"> - - <select id="selectContractOrderInPage" resultType="com.xcong.excoin.modules.contract.entity.ContractOrderEntity"> - select * from contract_order where member_id=#{memberId} - order by create_time desc + <select id="selectOrderNoByOrderIds" resultType="java.lang.String"> + SELECT + order_no + FROM + contract_order + WHERE + id = #{orderId} </select> + <select id="selectFollowOrderListByMemberId" resultType="com.xcong.excoin.modules.contract.entity.ContractOrderEntity"> + SELECT + * + FROM + contract_order + WHERE + member_id = #{tradeMemberId} + AND contract_type = 2 + AND closing_price IS NOT NULL; + </select> + + <select id="selectContractOrderInPage" resultType="com.xcong.excoin.modules.contract.entity.ContractOrderEntity"> + select + create_time, + id, + member_id, + order_no, + position_type, + trade_type, + order_type, + order_status, + entrust_opening_price, + entrust_time, + symbol, + symbol_cnt, + symbol_sku, + closing_price, + closing_time, + closing_fee_amount*(select fee_spread_ratio from platform_trade_setting) closing_fee_amount, + closing_type, + lever_ratio, + stop_loss_price, + stop_profit_price, + reward_amount, + reward_ratio, + opening_price, + opening_time, + pre_payment_amount, + bond_amount, + mark_price, + force_closing_price, + hold_amount, + opening_fee_amount*(select fee_spread_ratio from platform_trade_setting) opening_fee_amount + from contract_order + <if test="record != null"> + <where> + <if test="record.memberId != null" > + and member_id=#{record.memberId} + </if> + <if test="record.symbol != null and record.symbol != ''"> + and symbol = #{record.symbol} + </if> + </where> + </if> + order by create_time desc, id desc + </select> + + <select id="selectOrderDetailByIdAndMemberId" resultType="com.xcong.excoin.modules.contract.entity.ContractOrderEntity"> + select * from contract_order where id=#{id} and member_id=#{memberId} + </select> + + <select id="selectFollowOrderByMemberId" resultType="com.xcong.excoin.modules.contract.entity.ContractOrderEntity"> + select * + from contract_order a, follow_follower_order_relation b + where a.id=b.order_id and a.member_id=#{memberId} + </select> + + <select id="selectFollowOrderTotalProfitByMemberId" resultType="java.math.BigDecimal"> + select sum(reward_ratio)*100 + from contract_order + where member_id=#{memberId} and contract_type=2 + </select> + + <select id="selectFollowOrderCntForWinRate" resultType="java.lang.Integer"> + select count(1) + from contract_order a + where member_id=#{memberId} + and contract_type=2 and order_type in (3,4) + <if test="type!=null and type==1"> + and reward_amount > 0 + </if> + <if test="type!=null and type==2"> + and 0 > reward_amount + </if> + </select> + + <select id="selectWholeOpenOrderByOrderNo" resultType="com.xcong.excoin.modules.contract.entity.ContractOrderEntity"> + select * from contract_order + where order_no=#{orderNo} + and order_type in (1,2) and order_status=1 + </select> + + <select id="selectWholeFeeAmountByOrderNo" resultType="java.math.BigDecimal"> + select sum(opening_fee_amount) + from contract_order + where order_no=#{orderNo} + and order_type in (1,2) and order_status=1 + </select> + + <update id="updateOrderProfitOrLessById"> + update contract_order + set reward_amount=#{rewardAmount}, + reward_ratio=#{rewardRatio} + where id=#{id} + </update> + + <select id="getBurstUsdtByMemberId" resultType="java.math.BigDecimal"> + SELECT + IFNULL(SUM(reward_amount), 0) + FROM + contract_order + WHERE + closing_type IN (4, 5) + and member_id=#{memberId} + </select> + + <select id="selectThirtyTotalCntByMemberId" resultType="java.math.BigDecimal"> + select sum(symbol_cnt)/2 + from contract_order + where + member_id=#{memberId} + and contract_type=2 + and create_time BETWEEN #{offsetDay} and #{date} + </select> + + <select id="selectThirtyWinCntByMemberId" resultType="java.math.BigDecimal"> + select sum(symbol_cnt)/2 + from contract_order + where + member_id=#{memberId} + and contract_type=2 + and create_time BETWEEN #{offsetDay} and #{date} + and reward_ratio > 0 + </select> + + <select id="selectThirtyMaxRatioByMemberId" resultType="java.math.BigDecimal"> + select MAX(reward_ratio)*100 + from contract_order + where + member_id=#{memberId} + and contract_type=2 + and create_time BETWEEN #{offsetDay} and #{date} + </select> + + <select id="selectThirtyMinRatioByMemberId" resultType="java.math.BigDecimal"> + select MIN(reward_ratio)*100 + from contract_order + where + member_id=#{memberId} + and contract_type=2 + and create_time BETWEEN #{offsetDay} and #{date} + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.1