From 419ab2e6ed630e789f35456fa98e16dd2cc01fc6 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Fri, 14 May 2021 11:23:35 +0800 Subject: [PATCH] Merge branch 'yunding' of http://120.27.238.55:7000/r/exchange into yunding --- src/main/java/com/xcong/excoin/modules/yunding/service/Impl/YunDingServiceImpl.java | 38 +++++++++++++++++++++++++++++++++++--- 1 files changed, 35 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/YunDingServiceImpl.java b/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/YunDingServiceImpl.java index f78552d..f7b5bf5 100644 --- a/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/YunDingServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/YunDingServiceImpl.java @@ -204,6 +204,34 @@ return Result.fail("请重新选择产品"); } + Integer status = ydProductEntity.getStatus(); + if(YdProductEntity.STATUE_WORK != status){ + if(YdProductEntity.STATUE_END == status){ + return Result.fail("产品已售罄"); + } + if(YdProductEntity.STATUE_READY == status){ + return Result.fail("产品未开售"); + } + } + + //限购总量 + Integer limitedNum = ydProductEntity.getLimitedNum(); + //获取目前待生效,已生效的总T数 + int quantityOwn = 0; + QueryWrapper<YdOrderEntity> powerReradyQuery = new QueryWrapper<>(); + powerReradyQuery.eq("member_id",memberId); + powerReradyQuery.eq("product_id",payProductDto.getId()); + powerReradyQuery.eq("type",YdOrderEntity.PRODUCT_ORDER); + powerReradyQuery.ne("state",YdOrderEntity.ORDER_STATE_END); + List<YdOrderEntity> powerReradyQuerys = ydOrderDao.selectList(powerReradyQuery); + if(CollUtil.isNotEmpty(powerReradyQuerys)){ + for(YdOrderEntity ydOrderEntity : powerReradyQuerys){ + quantityOwn = quantityOwn + ydOrderEntity.getQuantity(); + } + } + if(quantityOwn >= limitedNum){ + return Result.fail("产品限购"+limitedNum); + } if (quantity.compareTo(BigDecimal.valueOf(ydProductEntity.getLimitedNum())) < 1) { return Result.fail("产品限购" + ydProductEntity.getLimitedNum()); } @@ -288,6 +316,7 @@ BigDecimal totalProfitAll = BigDecimal.ZERO; QueryWrapper<YdOrderEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("member_id",memberId); + objectQueryWrapper.eq("type",YdOrderEntity.PRODUCT_ORDER); List<YdOrderEntity> ydOrderEntities = ydOrderDao.selectList(objectQueryWrapper); if(CollUtil.isNotEmpty(ydOrderEntities)){ for(YdOrderEntity order : ydOrderEntities){ @@ -301,6 +330,7 @@ QueryWrapper<YdOrderEntity> powerNowQuery = new QueryWrapper<>(); powerNowQuery.eq("member_id",memberId); powerNowQuery.eq("state",YdOrderEntity.ORDER_STATE_WORK); + powerNowQuery.eq("type",YdOrderEntity.PRODUCT_ORDER); List<YdOrderEntity> PowerNowQuery = ydOrderDao.selectList(powerNowQuery); if(CollUtil.isNotEmpty(PowerNowQuery)){ for(YdOrderEntity order : PowerNowQuery){ @@ -313,10 +343,11 @@ int powerReady = 0; QueryWrapper<YdOrderEntity> powerReradyQuery = new QueryWrapper<>(); powerReradyQuery.eq("member_id",memberId); + powerReradyQuery.eq("type",YdOrderEntity.PRODUCT_ORDER); powerReradyQuery.eq("state",YdOrderEntity.ORDER_STATE_READY); - List<YdOrderEntity> PowerReradyQuery = ydOrderDao.selectList(powerReradyQuery); - if(CollUtil.isNotEmpty(PowerReradyQuery)){ - for(YdOrderEntity order : PowerReradyQuery){ + List<YdOrderEntity> powerReradyQuerys = ydOrderDao.selectList(powerReradyQuery); + if(CollUtil.isNotEmpty(powerReradyQuerys)){ + for(YdOrderEntity order : powerReradyQuerys){ int quantity = order.getQuantity(); powerReady = powerReady + quantity; } @@ -543,6 +574,7 @@ YdOrderEntity orderEntity = new YdOrderEntity(); orderEntity.setType(YdOrderEntity.AGENT_ORDER); orderEntity.setMemberId(memberId); + orderEntity.setProductId(id); orderEntity.setAmount(salePrice); ydOrderDao.insert(orderEntity); -- Gitblit v1.9.1