From 5575818556096be1dadaf5ff356b5db4c832aaa2 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 26 May 2021 19:27:09 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java
index cecad17..363eaff 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java
@@ -40,23 +40,31 @@
     public void add() {
         MemberEntity member = LoginUserUtils.getAppLoginUser();
         member = memberDao.selectById(member.getId());
+//        long memberId = 444L;
+//        MemberEntity member = memberDao.selectById(memberId);
 
         if (MemberEntity.IS_TRADER_Y.equals(member.getIsTrader())) {
             throw new GlobalException("已经是市商");
         }
         OtcSetting setting = otcSettingDao.selectById(1L);
         // 所有已完成订单
-        List<OtcOrder> finishOrders = otcOrderDao.selectOrderListForUser(member.getId(), 0);
+        List<OtcOrder> finishOrders = otcOrderDao.selectOrderListForUser(member.getId(), 3);
         if (CollUtil.isEmpty(finishOrders) || setting.getOrderNum() > finishOrders.size()) {
             throw new GlobalException("条件未达标");
         }
 
-        List<OtcOrder> unFinishOrders = otcOrderDao.selectOrderListForUser(member.getId(), 4);
-        if (CollUtil.isNotEmpty(unFinishOrders)) {
-            BigDecimal.valueOf(finishOrders.size() - unFinishOrders.size()).divide(BigDecimal.valueOf(finishOrders.size()), 2, BigDecimal.ROUND_DOWN)
+        List<OtcOrder> allOrders = otcOrderDao.selectOrderListForUser(member.getId(), null);
+        if (CollUtil.isNotEmpty(allOrders)) {
+            BigDecimal finishRatio = BigDecimal.valueOf(finishOrders.size()).divide(BigDecimal.valueOf(allOrders.size()), 4, BigDecimal.ROUND_DOWN).multiply(BigDecimal.valueOf(100));
+            if (setting.getCompletionRate().compareTo(finishRatio) > 0) {
+                throw new GlobalException("条件未达标");
+            }
         }
 
         BigDecimal totalAmount = otcOrderDao.selectOrderTotalAmount(member.getId());
+        if (setting.getTotalAmount().compareTo(totalAmount) > 0) {
+            throw new GlobalException("条件未达标");
+        }
 
         OtcMarketBussiness mb = this.baseMapper.selectMarketBussinessByMemberId(member.getId());
         OtcMarketBussiness otcMb = new OtcMarketBussiness();

--
Gitblit v1.9.1