From b851bab9fdd923e2f6b569a3fdcabb5738a47e88 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 04 Jun 2021 10:04:31 +0800 Subject: [PATCH] modify --- src/main/java/com/xcong/excoin/rabbit/consumer/OtcConsumer.java | 22 +++++++++++++++++----- 1 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/xcong/excoin/rabbit/consumer/OtcConsumer.java b/src/main/java/com/xcong/excoin/rabbit/consumer/OtcConsumer.java index 59a2307..a99af18 100644 --- a/src/main/java/com/xcong/excoin/rabbit/consumer/OtcConsumer.java +++ b/src/main/java/com/xcong/excoin/rabbit/consumer/OtcConsumer.java @@ -43,19 +43,31 @@ OtcMarketBussiness mb = otcMarketBussinessDao.selectMarketBussinessByMemberId(entrustOrder.getMemberId()); - mb.setTotalOrderCnt(mb.getTotalOrderCnt() + 1); if (!OtcOrder.STATUS_CANCEL.equals(status)) { if (OtcEntrustOrder.ORDER_TYPE_S.equals(entrustOrder.getOrderType())) { mb.setSaleOrderCnt(mb.getSaleOrderCnt() + 1); + mb.setSaleTotalCnt(mb.getSaleTotalCnt() + 1); } else { mb.setBuyOrderCnt(mb.getBuyOrderCnt() + 1); + mb.setTotalOrderCnt(mb.getTotalOrderCnt() + 1); + } + } else { + if (OtcEntrustOrder.ORDER_TYPE_S.equals(entrustOrder.getOrderType())) { + mb.setSaleTotalCnt(mb.getSaleTotalCnt() + 1); + } else { + mb.setTotalOrderCnt(mb.getTotalOrderCnt() + 1); } } - BigDecimal buyFinishRatio = BigDecimal.valueOf(mb.getBuyOrderCnt()).divide(BigDecimal.valueOf(mb.getTotalOrderCnt()), 8, BigDecimal.ROUND_DOWN); - BigDecimal saleFinishRatio = BigDecimal.valueOf(mb.getSaleOrderCnt()).divide(BigDecimal.valueOf(mb.getTotalOrderCnt()), 8, BigDecimal.ROUND_DOWN); - mb.setFinishRatio(buyFinishRatio); - mb.setSaleFinishRatio(saleFinishRatio); + if (mb.getTotalOrderCnt() != 0) { + BigDecimal buyFinishRatio = BigDecimal.valueOf(mb.getBuyOrderCnt()).divide(BigDecimal.valueOf(mb.getTotalOrderCnt()), 8, BigDecimal.ROUND_DOWN); + mb.setFinishRatio(buyFinishRatio); + } + + if (mb.getSaleTotalCnt() != 0) { + BigDecimal saleFinishRatio = BigDecimal.valueOf(mb.getSaleOrderCnt()).divide(BigDecimal.valueOf(mb.getSaleTotalCnt()), 8, BigDecimal.ROUND_DOWN); + mb.setSaleFinishRatio(saleFinishRatio); + } // 平均付款时间 -- Gitblit v1.9.1