From 7f133cb8fc080b64ab8002b35f04b646f95a6abf Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 27 May 2021 16:37:38 +0800
Subject: [PATCH] Merge branch 'otc' of http://120.27.238.55:7000/r/exchange into otc

---
 src/main/resources/mapper/otc/OtcOrderDao.xml |  103 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 101 insertions(+), 2 deletions(-)

diff --git a/src/main/resources/mapper/otc/OtcOrderDao.xml b/src/main/resources/mapper/otc/OtcOrderDao.xml
index 5c21413..f932ed5 100644
--- a/src/main/resources/mapper/otc/OtcOrderDao.xml
+++ b/src/main/resources/mapper/otc/OtcOrderDao.xml
@@ -4,7 +4,7 @@
 
     <select id="selectOrderListUnFinish" resultType="com.xcong.excoin.modules.otc.entity.OtcOrder">
         select * from otc_order
-        where status not in (2,4) and member_id=#{memberId} and entrust_order_id=#{entrustOrderId}
+        where status in (1,2) and member_id=#{memberId} and entrust_order_id=#{entrustOrderId}
     </select>
 
 
@@ -14,12 +14,13 @@
             a.order_no orderNo,
             a.unit_price unitPrice,
             a.coin_amount amount,
+            a.status status,
             a.total_amount totalAmount,
             a.create_time creatTime,
             a.order_type orderType,
             b.name name
         from otc_order a
-        inner join member b on a.member_id=b.id
+        inner join member b on a.opposite_member_id=b.id
         <where>
             <if test="record!=null">
                 <if test="record.status != null and record.status == 1">
@@ -36,5 +37,103 @@
                 </if>
             </if>
         </where>
+        order by a.create_time desc
     </select>
+
+    <update id="updateOrderStatusByOrderNo">
+        update otc_order
+        set status=#{status}
+        <if test="payName != null and payName != ''">
+            , pay_name = #{payName}
+        </if>
+        where order_no=#{orderNo}
+    </update>
+
+    <select id="selectOrderByOrderNoAndType" resultType="com.xcong.excoin.modules.otc.entity.OtcOrder">
+        select * from otc_order
+        where order_no=#{orderNo} and order_type=#{orderType}
+    </select>
+
+    <select id="selectOrderListWithStatusAndType" resultType="com.xcong.excoin.modules.otc.entity.OtcOrder">
+        select * from otc_order
+        where order_type=#{type} and status=#{status}
+    </select>
+
+    <select id="selectMemberCntForEntrust" resultType="java.lang.Integer">
+        select count(distinct member_id) from otc_order
+        where entrust_member_id=#{entrustMemberId} and status != 4 and entrust_member_id!=member_id
+    </select>
+
+    <select id="selectTotalOrderCount" resultType="java.lang.Integer">
+        select count(1) from otc_order
+        where entrust_member_id=#{entrustMemberId} and entrust_member_id!=member_id
+        <if test="status != null">
+            and status = #{status}
+        </if>
+    </select>
+
+    <select id="selectMemberAvgPayTime" resultType="java.math.BigDecimal">
+        select
+               IFNULL(sum(timestampdiff(SECOND, create_time, pay_time))/count(1), 0)
+        from otc_order
+        where status=3 and member_id=#{memberId} and order_type='B'
+    </select>
+
+    <select id="selectMemberAvgCoinTime" resultType="java.math.BigDecimal">
+        select
+            IFNULL(sum(timestampdiff(SECOND, pay_time, finish_time))/count(1), 0)
+        from otc_order
+        where status=3 and member_id=40 and order_type='S'
+    </select>
+
+    <select id="selectOrderListForUser" resultType="com.xcong.excoin.modules.otc.entity.OtcOrder">
+        select * from otc_order
+        where member_id=#{memberId}
+        <!-- 查询除完成以外所有订单 -->
+        <if test="status != null">
+            and status = #{status}
+        </if>
+    </select>
+
+    <select id="selectOrderTotalAmount" resultType="java.math.BigDecimal">
+        select sum(total_amount) from otc_order
+        where member_id=#{memberId} and status = 3
+    </select>
+
+    <select id="selectByMemberIdAndTargetId" resultType="com.xcong.excoin.modules.otc.vo.ChatOrderVo">
+        select
+            order_no orderNo,
+            member_id memberId,
+            unit_price unitPrice,
+            coin_amount usdtAmount,
+            total_amount totalAmount,
+            status status,
+            order_type orderType
+        from otc_order
+        where ((member_id=#{memberId} and opposite_member_id=#{targetId})
+            or
+              (member_id=#{targetId} and opposite_member_id=#{memberId}))
+            and status in (1,2)
+        order by create_time desc
+
+    </select>
+
+    <select id="selectOneByMemberIdAndTargetId" resultType="com.xcong.excoin.modules.otc.vo.ChatOrderVo">
+        select
+            order_no orderNo,
+            member_id memberId,
+            unit_price unitPrice,
+            coin_amount usdtAmount,
+            total_amount totalAmount,
+            status status,
+            order_type orderType
+        from otc_order
+        where ((member_id=#{memberId} and opposite_member_id=#{targetId})
+            or
+               (member_id=#{targetId} and opposite_member_id=#{memberId}))
+        order by create_time desc
+            LIMIT 2
+
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1