From c56372c3c3320a92af9b8fcd7e31ac29139f98ba Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 03 Apr 2023 01:27:49 +0800
Subject: [PATCH] 设定时区,这样创建的时间就不会出现问题

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   66 +++++++++++++++++++++++---------
 1 files changed, 47 insertions(+), 19 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index f86db0a..50d1583 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -114,12 +114,22 @@
                 DataDictionaryEnum.BUY_TIMES.getType(), DataDictionaryEnum.BUY_TIMES.getCode());
         Integer buyTimes = Integer.parseInt(buyTimesDic.getValue());
 
-        DateTime date = DateUtil.date();
+        DateTime date = DateUtil.offsetHour(DateUtil.date(), -1);
+//        DateTime date = DateUtil.date();
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         String yyyyMMdd = sdf.format(date);
         Integer times = this.baseMapper.selectCountByCreateTimeAndMemberId(yyyyMMdd,member.getId());
         if(buyTimes <= times){
-            throw new FebsException("会员今日已无法购买");
+            throw new FebsException("今日任务完成,明天再来");
+        }
+
+        DataDictionaryCustom allBuyTimesDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                DataDictionaryEnum.ALL_BUY_TIMES.getType(), DataDictionaryEnum.ALL_BUY_TIMES.getCode());
+        Integer allBuyTimes = Integer.parseInt(allBuyTimesDic.getValue());
+
+        Integer allBuyTimesNow = this.baseMapper.selectCountByCreateTime(yyyyMMdd);
+        if(allBuyTimes <= allBuyTimesNow){
+            throw new FebsException("今日任务完成,明天再来");
         }
 
         String orderNo = MallUtils.getOrderNum();
@@ -132,6 +142,7 @@
         orderInfo.setOrderType(addOrderDto.getOrderType());
         //补贴金额
         orderInfo.setSubsidyAmount(goods.getSubsidyAmount());
+        orderInfo.setCommentState(MallOrderInfo.COMMENT_STATE_NO);
 
         this.baseMapper.insert(orderInfo);
         List<MallGoodsSku> mallGoodsSkus = mallGoodsSkuMapper.selectSkuByGoodsId(goods.getId());
@@ -506,22 +517,22 @@
         orderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
         orderInfo.setReceivingTime(new Date());
         this.baseMapper.updateById(orderInfo);
-        /**
-         * 通过支付流水记录,返回下单金额
-         */
-        MallMoneyFlow payFlow = mallMoneyFlowMapper.selectOneByMemberIdAndOrderNoAndTypeAndStatusAndIsReturn(
-                member.getId(),
-                orderInfo.getOrderNo(),
-                MallMoneyFlowTypeEnum.PAY.getCode(),
-                MallMoneyFlow.STATUS_SUCCESS,
-                MallMoneyFlow.IS_RETURN_N);
-        if(ObjectUtil.isNotEmpty(payFlow)){
-            memberWalletService.addBalance(payFlow.getAmount().negate(),payFlow.getRtMemberId());
-            payFlow.setIsReturn(MallMoneyFlow.IS_RETURN_Y);
-            mallMoneyFlowMapper.updateById(payFlow);
-        }
-        //产生补贴流水记录
-        agentProducer.sendDirectRewardMsg(orderInfo.getId());
+//        /**
+//         * 通过支付流水记录,返回下单金额
+//         */
+//        MallMoneyFlow payFlow = mallMoneyFlowMapper.selectOneByMemberIdAndOrderNoAndTypeAndStatusAndIsReturn(
+//                member.getId(),
+//                orderInfo.getOrderNo(),
+//                MallMoneyFlowTypeEnum.PAY.getCode(),
+//                MallMoneyFlow.STATUS_SUCCESS,
+//                MallMoneyFlow.IS_RETURN_N);
+//        if(ObjectUtil.isNotEmpty(payFlow)){
+//            memberWalletService.addBalance(payFlow.getAmount().negate(),payFlow.getRtMemberId());
+//            payFlow.setIsReturn(MallMoneyFlow.IS_RETURN_Y);
+//            mallMoneyFlowMapper.updateById(payFlow);
+//        }
+//        //产生补贴流水记录
+//        agentProducer.sendDirectRewardMsg(orderInfo.getId());
 
     }
 
@@ -655,13 +666,30 @@
 
         orderInfo.setCommentState(MallOrderInfo.COMMENT_STATE_YES);
         this.baseMapper.updateById(orderInfo);
+        /**
+         * 通过支付流水记录,返回下单金额
+         */
+        MallMoneyFlow payFlow = mallMoneyFlowMapper.selectOneByMemberIdAndOrderNoAndTypeAndStatusAndIsReturn(
+                member.getId(),
+                orderInfo.getOrderNo(),
+                MallMoneyFlowTypeEnum.PAY.getCode(),
+                MallMoneyFlow.STATUS_SUCCESS,
+                MallMoneyFlow.IS_RETURN_N);
+        if(ObjectUtil.isNotEmpty(payFlow)){
+            memberWalletService.addBalance(payFlow.getAmount().negate(),payFlow.getRtMemberId());
+            payFlow.setIsReturn(MallMoneyFlow.IS_RETURN_Y);
+            mallMoneyFlowMapper.updateById(payFlow);
+        }
+        //产生补贴流水记录
+        agentProducer.sendDirectRewardMsg(orderInfo.getId());
 
         List<ApiAddCommentDto> apiAddCommentDtos = addCommentDtos.getApiAddCommentDtos();
         if(CollUtil.isNotEmpty(apiAddCommentDtos)){
             for(ApiAddCommentDto apiAddCommentDto : apiAddCommentDtos){
                 Long skuId = apiAddCommentDto.getSkuId();
-                MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(skuId);
                 Long goodsId = apiAddCommentDto.getGoodsId();
+                List<MallGoodsSku> mallGoodsSkus = mallGoodsSkuMapper.selectSkuByGoodsId(goodsId);
+                MallGoodsSku mallGoodsSku = mallGoodsSkus.get(0);
                 MallGoods mallGoods = mallGoodsMapper.selectById(goodsId);
                 MallGoodsComment mallGoodsComment = MallGoodsCommentConversion.INSTANCE.dtoToEntity(apiAddCommentDto);
                 mallGoodsComment.setMemberId(member.getId());

--
Gitblit v1.9.1