From 53d9ce668f7775b959f2d1be6f5caf30f43e5f29 Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期日, 28 四月 2024 11:30:22 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 common-buiness/src/main/java/cn/stylefeng/guns/modular/business/service/impl/OrderMentalTestServiceImpl.java |   25 +++++++++++++++++++------
 1 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/common-buiness/src/main/java/cn/stylefeng/guns/modular/business/service/impl/OrderMentalTestServiceImpl.java b/common-buiness/src/main/java/cn/stylefeng/guns/modular/business/service/impl/OrderMentalTestServiceImpl.java
index 66caf56..1fe17ab 100644
--- a/common-buiness/src/main/java/cn/stylefeng/guns/modular/business/service/impl/OrderMentalTestServiceImpl.java
+++ b/common-buiness/src/main/java/cn/stylefeng/guns/modular/business/service/impl/OrderMentalTestServiceImpl.java
@@ -73,24 +73,37 @@
 
     @Override
     public OrderMentalTest createOrderMentalTest(Long userId, Long topicId, Boolean isNeedPay, Boolean isBack) {
+        // 获取用户已支付订单(以后每次都只有1个订单号)
+        OrderMentalTest doneOrder = this.baseMapper.selectOne(
+                Wrappers.<OrderMentalTest>lambdaQuery()
+                        .eq(OrderMentalTest::getUserId, userId)
+                        .eq(OrderMentalTest::getGoodsId, topicId)
+                        .eq(OrderMentalTest::getStatusFlag, OrderStatusFlagEnum.PAY_SUCCESS.getCode())
+                        .orderByDesc(OrderMentalTest::getCreateTime)
+                        .last("LIMIT 1")
+        );
+        if (doneOrder != null) {
+            return doneOrder;
+        }
+
         // 题库信息
         MentalTestTopic topic = mentalTestTopicService.getById(topicId);
         Assert.notNull(topic, "题库不存在");
 
-        // 获取用户是否有后台添加订单
+        // 查询题库后台添加的订单
         long isBackCount = this.count(
                 Wrappers.<OrderMentalTest>lambdaQuery()
+                        .eq(OrderMentalTest::getIsBack, true)
                         .eq(OrderMentalTest::getUserId, userId)
                         .eq(OrderMentalTest::getGoodsId, topicId)
-                        .eq(OrderMentalTest::getIsBack, 1)
         );
         if (isBackCount > 0) {
-            // 有,则以后全部为后台添加标记
+            // 以后的订单都标记为后台添加
             isBack = true;
         }
 
         // 获取用户最近创建的待支付订单
-        OrderMentalTest o = this.getOne(
+        OrderMentalTest o = this.baseMapper.selectOne(
                 Wrappers.<OrderMentalTest>lambdaQuery()
                         .eq(OrderMentalTest::getUserId, userId)
                         .eq(OrderMentalTest::getGoodsId, topicId)
@@ -144,8 +157,8 @@
     }
 
     @Override
-    public List<Map<String, Object>> getStatOrderList(String dateFormat, String beginTime, String endTime, Long workerId, List<Integer> statusList) {
-        return this.baseMapper.getStatOrderList(dateFormat, beginTime, endTime, workerId, statusList);
+    public List<Map<String, Object>> getStatOrderList(String dateFormat, String beginTime, String endTime, Long workerId, List<Integer> statusList, List<String> orderNoList) {
+        return this.baseMapper.getStatOrderList(dateFormat, beginTime, endTime, workerId, statusList, orderNoList);
     }
 
 }

--
Gitblit v1.7.1