瀏覽代碼

feat(app): 增加课程类型订单处理逻辑

- 引入 AppCoursesMapper 用于查询课程信息- 在订单处理中增加对课程类型(TYPE_5)的支持
- 根据课程地址和时间范围查询并记录相关场地信息
- 区分个人赛(TYPE_3)、学校(TYPE_0)和课程(TYPE_5)的处理逻辑- 清理定时任务中的无用注释代码
wzq 1 周之前
父節點
當前提交
a53e2e17d4

+ 36 - 2
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/service/impl/AppIsinServiceImpl.java

@@ -44,6 +44,8 @@ public class AppIsinServiceImpl extends ServiceImpl<AppIsinMapper, AppIsin> impl
     private AppSitePlaceMapper appSitePlaceMapper;
     @Resource
     private AppGamePriceRulesMapper appGamePriceRulesMapper;
+    @Resource
+    private AppCoursesMapper appCoursesMapper;
 
     @Override
     public Page<AppIsinVerifyVO> pageAppIsinVerifyRecords(Page<AppIsinVerifyVO> page, String orgCode) {
@@ -108,8 +110,12 @@ public class AppIsinServiceImpl extends ServiceImpl<AppIsinMapper, AppIsin> impl
         List<AppGmtInfoVO> appGmtInfoVOList = new ArrayList<>();
         List<AppOrderProInfo> appOrderProInfos = appOrderProInfoMapper.selectList(Wrappers.lambdaQuery(AppOrderProInfo.class).eq(AppOrderProInfo::getTicketNo, ticketNo));
         for (AppOrderProInfo appOrderProInfo : appOrderProInfos) {
-            if (Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_4) || Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_0)){
-                if (Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_4)){
+            if (Objects.equals(
+                    appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_3)
+                    || Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_0)
+                    || Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_5)){
+                //个人赛
+                if (Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_3)){
                     String familyUserId = appOrderProInfo.getFamilyUserId();
                     List<String> familyIds = Arrays.stream(familyUserId.split(",")).collect(Collectors.toList());
                     AppOrder appOrder = appOrderMapper.selectById(appOrderProInfo.getOrderId());
@@ -134,6 +140,7 @@ public class AppIsinServiceImpl extends ServiceImpl<AppIsinMapper, AppIsin> impl
                         }
                     }
                 }
+                //学校
                 if (Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_0)){
                     String familyUserId = appOrderProInfo.getFamilyUserId();
                     AppOrder appOrder = appOrderMapper.selectById(appOrderProInfo.getOrderId());
@@ -161,6 +168,33 @@ public class AppIsinServiceImpl extends ServiceImpl<AppIsinMapper, AppIsin> impl
                         }
                     }
                 }
+                //课程
+                if (Objects.equals(appOrderProInfo.getType(), CommonConstant.ORDER_PRO_INFO_TYPE_5)){
+                    String familyUserId = appOrderProInfo.getFamilyUserId();
+                    AppOrder appOrder = appOrderMapper.selectById(appOrderProInfo.getOrderId());
+                    String productIds = appOrder.getProductIds();
+                    AppCourses appCourses = appCoursesMapper.selectById(productIds);
+                    if (Objects.nonNull(appCourses)){
+                        String siteId = appCourses.getAddressSiteId();
+
+                        List<AppGmtInfo> appGmtInfos = appGmtInfoMapper.selectList(Wrappers.lambdaQuery(AppGmtInfo.class)
+                                .eq(AppGmtInfo::getSiteId, siteId)
+                                .eq(AppGmtInfo::getFamilyId, familyUserId).between(AppGmtInfo::getGmtCreate, appCourses.getStartTime(), appCourses.getEndTime()));
+                        for (AppGmtInfo appGmtInfo : appGmtInfos) {
+                            String familyUserName = familyMembersMapper.selectById(appGmtInfo.getFamilyId()).getFullName();
+                            String siteName = appSiteMapper.selectById(appGmtInfo.getSiteId()).getName();
+                            AppGmtInfoVO appGmtInfoVO = new AppGmtInfoVO();
+                            appGmtInfoVO
+                                    .setSiteId(appGmtInfo.getSiteId())
+                                    .setSiteName(siteName)
+                                    .setFamilyId(appGmtInfo.getFamilyId())
+                                    .setFamilyUserName(familyUserName)
+                                    .setGmtCreate(appGmtInfo.getGmtCreate())
+                                    .setPicUrl(appGmtInfo.getPicUrl());
+                            appGmtInfoVOList.add(appGmtInfoVO);
+                        }
+                    }
+                }
             }
         }
         appOrderUseRecordsVO.setAppGmtInfoList(appGmtInfoVOList);

+ 1 - 4
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/quartz/job/OrTeachingJobService.java

@@ -287,10 +287,7 @@ public class OrTeachingJobService {
                     }
                 }
             }
-//            allRecords.forEach(data -> {
-////                log.info("提取数据: {}", data);
-//
-//            });
+
         } catch (Exception e) {
             log.error("处理门禁记录失败", e);
         }