From f6a912c1a6a26c809568f964941fb4ad4483274e Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 31 May 2021 11:19:40 +0800
Subject: [PATCH] modify
---
src/main/resources/mapper/otc/OtcOrderDao.xml | 132 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 131 insertions(+), 1 deletions(-)
diff --git a/src/main/resources/mapper/otc/OtcOrderDao.xml b/src/main/resources/mapper/otc/OtcOrderDao.xml
index a41a946..f932ed5 100644
--- a/src/main/resources/mapper/otc/OtcOrderDao.xml
+++ b/src/main/resources/mapper/otc/OtcOrderDao.xml
@@ -4,6 +4,136 @@
<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>
+
+
+ <select id="selectOrdderListInPage" resultType="com.xcong.excoin.modules.otc.vo.OrderListVo">
+ select
+ a.id,
+ 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.opposite_member_id=b.id
+ <where>
+ <if test="record!=null">
+ <if test="record.status != null and record.status == 1">
+ and a.status in (1, 2)
+ </if>
+ <if test="record.status != null and record.status == 2">
+ and a.status = 3
+ </if>
+ <if test="record.status != null and record.status == 3">
+ and a.status = 4
+ </if>
+ <if test="record.memberId != null">
+ and a.member_id = ${record.memberId}
+ </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