From 9a968ba186af5280fcc29cc3eb04412eff204ba7 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Thu, 27 May 2021 16:37:33 +0800 Subject: [PATCH] modify --- src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java index 18c5555..66d6a7f 100644 --- a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java @@ -1,11 +1,13 @@ package com.xcong.excoin.modules.otc.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.crypto.SecureUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -76,6 +78,7 @@ OtcSetting setting = otcSettingDao.selectById(1L); String times = redisUtils.getString(AppContants.OTC_ORDER_CANCEL_TIMES + member.getId()); + times = times == null ? "0" :times; if (setting.getCancellNum() <= Integer.parseInt(times)) { throw new GlobalException("订单取消次数过多, 限制交易24小时"); } @@ -95,6 +98,18 @@ BigDecimal cny = orderAddDto.getUsdtAmount().multiply(entrustOrder.getUnitPrice()); if (cny.compareTo(orderAddDto.getCnyAmount()) != 0) { throw new GlobalException("数量与金额不符"); + } + /** + * 最多三单未付款 + */ + QueryWrapper<OtcOrder> objectQueryWrapper = new QueryWrapper<>(); + objectQueryWrapper.eq("member_id",member.getId()); + objectQueryWrapper.lt("status",OtcOrder.STATUS_PAY); + List<OtcOrder> otcOrders = this.baseMapper.selectList(objectQueryWrapper); + if(CollUtil.isNotEmpty(otcOrders)){ + if(otcOrders.size() > 3){ + throw new GlobalException("最多可同时有三个待付款订单"); + } } OtcOrder otcOrder = new OtcOrder(); @@ -155,6 +170,7 @@ OtcSetting setting = otcSettingDao.selectById(1L); String times = redisUtils.getString(AppContants.OTC_ORDER_CANCEL_TIMES + member.getId()); + times = times == null ? "0" :times; if (setting.getCancellNum() <= Integer.parseInt(times)) { throw new GlobalException("订单取消次数过多, 限制交易24小时"); } @@ -335,6 +351,7 @@ } buyDetail.setSaleName(saleMember.getName()); + buyDetail.setSaleMemberId(saleMember.getId()); buyDetail.setBankName(buyOrder.getBankName()); buyDetail.setBankNo(buyOrder.getBankNo()); @@ -380,7 +397,10 @@ saleDetail.setCreateTime(saleOrder.getCreateTime()); saleDetail.setIsMb(member.getIsTrader()); saleDetail.setPayName(saleOrder.getPayName()); + saleDetail.setSaleName(buyMember.getName()); + saleDetail.setSaleMemberId(buyMember.getId()); + saleDetail.setPayType(saleOrder.getPayType()); saleDetail.setIsOwnEntrust(member.getId().equals(saleOrder.getEntrustMemberId()) ? 1 : 2); -- Gitblit v1.9.1