From b716afd262ff60ff1db0b1e7c95800e7ad2b7202 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期一, 07 七月 2025 11:07:37 +0800
Subject: [PATCH] 支付版本更新 根据资金流向使用V2或V3服务商版本支付

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java |  183 +++++++++++++++++++++++++++++++++------------
 1 files changed, 132 insertions(+), 51 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java
index 32a4d46..d6cbced 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java
@@ -1,5 +1,7 @@
 package com.dsh.guns.modular.system.controller.code;
 import com.dsh.course.feignClient.account.*;
+import com.dsh.course.feignClient.communityWorldCup.Model.WorldCupIncomeVO;
+import com.dsh.course.feignClient.communityWorldCup.WorldCupClient;
 import com.dsh.course.feignClient.competition.model.Competition;
 import com.dsh.course.feignClient.competition.model.CompetitionQuery;
 import com.dsh.course.feignClient.competition.model.PaymentCompetition;
@@ -36,6 +38,8 @@
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
@@ -148,6 +152,7 @@
         query.setProvince(province);
         query.setCity(city);
         query.setStoreId(storeId);
+        query.setInsertType(UserExt.getUser().getObjectType());
         if(UserExt.getUser().getObjectType()==2){
             List<Integer> operatorId = storeService.list(new QueryWrapper<TStore>()
                     .eq("operatorId", UserExt.getUser().getObjectId())).stream()
@@ -236,23 +241,33 @@
         model.addAttribute("roleType",objectType);
         return PREFIX + "Income.html";
     }
+    @Autowired
+    private WorldCupClient worldCupClient;
     /**
      * 获取收入管理列表
      */
     @RequestMapping(value = "/incomeListAll")
     @ResponseBody
-    public List<IncomeVO> incomeListAll(String time,Integer incomeType,String userName,String amount) {
+    public List<IncomeVO> incomeListAll(String time,Integer incomeType,String userName,String amount) throws ParseException {
 
         // 充值记录查询query
         RechargeRecordsQuery rechargeRecordsQuery = new RechargeRecordsQuery();
         // 报名课程查询query
         RegisterOrderQuery query = new RegisterOrderQuery();
+        query.setInsertType(UserExt.getUser().getObjectType());
+        if(UserExt.getUser().getObjectType()==2){
+            query.setStoresIds(storeService.list(new QueryWrapper<TStore>()
+                    .eq("operatorId",UserExt.getUser().getObjectId())
+            ).stream().map(TStore::getId).collect(Collectors.toList()));
+        }
         // 赛事活动查询query
         CompetitionQuery competitionQuery = new CompetitionQuery();
         // 会员支付查询query
         IncomeQuery incomeQuery = new IncomeQuery();
         // 场地预约记录查询query
         SiteBookingQuery siteBookingQuery = new SiteBookingQuery();
+        // 世界杯记录查询query
+        WorldCupQuery worldCupQuery = new WorldCupQuery();
         AppUserByNameAndPhoneDTO appUserByNameAndPhoneDTO = new AppUserByNameAndPhoneDTO();
         appUserByNameAndPhoneDTO.setUserName(userName);
         if (userName!=null){
@@ -265,6 +280,7 @@
                 query.setUserIds(collect);
                 incomeQuery.setUserIds(collect);
                 siteBookingQuery.setUserIds(collect);
+                worldCupQuery.setUserIds(collect);
             }
         }
         if (amount==null || amount.equals("")){
@@ -273,13 +289,16 @@
             rechargeRecordsQuery.setAmount(null);
             competitionQuery.setAmount(null);
             incomeQuery.setAmount(null);
+            worldCupQuery.setAmount(null);
         }else {
             siteBookingQuery.setAmount(new BigDecimal(amount));
             query.setAmount(new BigDecimal(amount));
             rechargeRecordsQuery.setAmount(new BigDecimal(amount));
             competitionQuery.setAmount(new BigDecimal(amount));
             incomeQuery.setAmount(new BigDecimal(amount));
+            worldCupQuery.setAmount(new BigDecimal(amount));
         }
+
         if (UserExt.getUser().getObjectType()==2){
             // 拿到门店集合id
             List<Integer> operatorId = storeService.list(new QueryWrapper<TStore>()
@@ -289,16 +308,23 @@
             competitionQuery.setOperatorId(UserExt.getUser().getObjectId());
             siteBookingQuery.setStoreIds(operatorId);
         }
+        if (UserExt.getUser().getObjectType()==3){
+            // 拿到门店集合id
+            List<Integer> integers = new ArrayList<>();
+            integers.add(UserExt.getUser().getObjectId());
+            siteBookingQuery.setStoreIds(integers);
+            query.setStoresIds(integers);
+            competitionQuery.setStoreId(UserExt.getUser().getObjectId());
+        }
 
         siteBookingQuery.setTime(time);
         query.setRegisterTime(time);
         rechargeRecordsQuery.setTime(time);
         competitionQuery.setTime(time);
         incomeQuery.setTime(time);
+        worldCupQuery.setTime(time);
         Integer roleType = UserExt.getUser().getObjectType();
-        IncomeVO incomeVO = new IncomeVO();
         List<IncomeVO> incomeVOS = new ArrayList<>();
-
             if ( incomeType==null || incomeType == 1){
             // 会员支付记录
             List<VipPayment> vipPayments = vipPaymentClient.registrationList(incomeQuery);
@@ -308,7 +334,7 @@
                     }
                     TAppUser tAppUser = appUserClient.queryById(vipPayment.getAppUserId());
                     IncomeVO temp = new IncomeVO();
-                    temp.setId(vipPayment.getId());
+                    temp.setId(vipPayment.getId().toString());
                     if (tAppUser!=null){
                         if (tAppUser.getProvince()!=null){
                             temp.setProvince(tAppUser.getProvince());
@@ -322,7 +348,7 @@
                     temp.setStoreName("");
                     temp.setAmount(new BigDecimal(vipPayment.getAmount().toString()));
                     temp.setIncomeType(1);
-                    temp.setState(vipPayment.getState());
+                    temp.setState(2);
                     temp.setInsertTime(vipPayment.getInsertTime());
                     if (UserExt.getUser().getObjectType()!=1){
                         break;
@@ -339,7 +365,7 @@
                     }
                     TAppUser tAppUser = appUserClient.queryById(rechargeRecordsVO.getAppUserId());
                     IncomeVO temp = new IncomeVO();
-                    temp.setId(rechargeRecordsVO.getId().intValue());
+                    temp.setId(rechargeRecordsVO.getId().toString());
                     if (tAppUser!=null){
                         if (tAppUser.getProvince()!=null){
                             temp.setProvince(tAppUser.getProvince());
@@ -356,7 +382,7 @@
                         temp.setAmount(rechargeRecordsVO.getAmount());
                     }
                     temp.setIncomeType(2);
-                    temp.setState(rechargeRecordsVO.getPayStatus());
+                    temp.setState(2);
 
                     incomeVOS.add(temp);
                 }
@@ -370,7 +396,7 @@
                     }
                     TAppUser tAppUser = appUserClient.queryById(registerOrderVO.getAppUserId());
                     IncomeVO temp = new IncomeVO();
-                    temp.setId(registerOrderVO.getId().intValue());
+                    temp.setId(registerOrderVO.getId().toString());
                     if (tAppUser!=null){
                         if (tAppUser.getProvince()!=null){
                             temp.setProvince(tAppUser.getProvince());
@@ -389,11 +415,13 @@
                         temp.setAmount(registerOrderVO.getMoney());
                     }
                     temp.setIncomeType(3);
-                    temp.setState(registerOrderVO.getPayStatus());
+
+                        temp.setState(2);
+
                     incomeVOS.add(temp);
                 }
             }
-            if(roleType !=3) {
+
                 if (incomeType == null || incomeType == 4) {
                     // 报名活动
                     List<PaymentCompetition> competitions = competitionClient.listAllPayment(competitionQuery);
@@ -404,6 +432,9 @@
                         IncomeVO temp = new IncomeVO();
                         TAppUser tAppUser = appUserClient.queryById(competition.getAppUserId());
                         Competition competition1 = competitionClient.queryById(competition.getCompetitionId());
+                        if(null == competition1){
+                            continue;
+                        }
                         if (!competition1.getStoreId().equals("")){
                             String[] split = competition1.getStoreId().split(",");
                             List<Integer> list = new ArrayList<>();
@@ -420,7 +451,7 @@
 
                             temp.setStoreName(substring);
                         }
-                        temp.setId(competition.getId().intValue());
+                        temp.setId(competition.getId().toString());
                         if (tAppUser!=null){
                             if (tAppUser.getProvince()!=null){
                                 temp.setProvince(tAppUser.getProvince());
@@ -436,25 +467,25 @@
                             temp.setAmount(new BigDecimal(competition.getAmount().toString()));
                         }
                         temp.setIncomeType(4);
-                        temp.setState(competition.getPayStatus());
+
+                            temp.setState(2);
+
                         incomeVOS.add(temp);
                     }
                 }
-            }
+
             if (incomeType == null || incomeType == 5) {
                 // 预约场地
                 List<SiteBooking> siteBookings = siteClient.listAll(siteBookingQuery);
                 for (SiteBooking siteBooking : siteBookings) {
                     IncomeVO temp = new IncomeVO();
-                    if (siteBooking.getStatus() == 0 || siteBooking.getStatus() == 5 || siteBooking.getStatus() == 4) {
-                        temp.setState(1);
-                    } else {
+
                         temp.setState(2);
-                    }
+
                     TAppUser tAppUser = appUserClient.queryAppUser1(siteBooking.getAppUserId());
                     Store store = storeClient.getStoreById(siteBooking.getStoreId());
 
-                    temp.setId(siteBooking.getId());
+                    temp.setId(siteBooking.getId().toString());
                     temp.setProvince(siteBooking.getProvince());
                     temp.setCity(siteBooking.getCity());
                     temp.setStoreName(store.getName());
@@ -477,6 +508,25 @@
                     incomeVOS.add(temp);
                 }
             }
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        if (roleType == 1 && (incomeType == null || incomeType == 6)){
+                List<WorldCupIncomeVO> worldCupIncome = worldCupClient.getWorldCupIncome(worldCupQuery);
+                for (WorldCupIncomeVO worldCupIncomeVO : worldCupIncome) {
+                    IncomeVO temp = new IncomeVO();
+                    temp.setId(worldCupIncomeVO.getId());
+                    temp.setProvince(worldCupIncomeVO.getProvince());
+                    temp.setCity(worldCupIncomeVO.getCity());
+                    temp.setStoreName(worldCupIncomeVO.getStoreName());
+                    temp.setPayUser(worldCupIncomeVO.getUserName());
+                    temp.setPhone(worldCupIncomeVO.getPhone());
+                    temp.setAmount(new BigDecimal(worldCupIncomeVO.getAmount()));
+                    temp.setIncomeType(6);
+                    temp.setState(2);
+                    temp.setInsertTime(simpleDateFormat.parse(worldCupIncomeVO.getPayTime()));
+                    incomeVOS.add(temp);
+                }
+            }
         return incomeVOS;
     }
 
@@ -485,17 +535,23 @@
      */
     @RequestMapping(value = "/getIncomeData")
     @ResponseBody
-    public Object getIncomeData(String time,Integer incomeType,String userName,String amount) {
+    public Object getIncomeData(String time,Integer incomeType,String userName,String amount) throws ParseException {
         // 充值记录查询query
         RechargeRecordsQuery rechargeRecordsQuery = new RechargeRecordsQuery();
         // 报名课程查询query
         RegisterOrderQuery query = new RegisterOrderQuery();
+        query.setInsertType(UserExt.getUser().getObjectType());
+        query.setStoresIds(storeService.list(new QueryWrapper<TStore>()
+                .eq("operatorId",UserExt.getUser().getObjectId()))
+        .stream().map(TStore::getId).collect(Collectors.toList()));
         // 赛事活动查询query
         CompetitionQuery competitionQuery = new CompetitionQuery();
         // 会员支付查询query
         IncomeQuery incomeQuery = new IncomeQuery();
         // 场地预约记录查询query
         SiteBookingQuery siteBookingQuery = new SiteBookingQuery();
+        // 世界杯查询query
+        WorldCupQuery worldCupQuery = new WorldCupQuery();
         AppUserByNameAndPhoneDTO appUserByNameAndPhoneDTO = new AppUserByNameAndPhoneDTO();
         appUserByNameAndPhoneDTO.setUserName(userName);
         if (userName!=null){
@@ -508,6 +564,7 @@
                 query.setUserIds(collect);
                 incomeQuery.setUserIds(collect);
                 siteBookingQuery.setUserIds(collect);
+                worldCupQuery.setUserIds(collect);
             }
         }
         if (amount==null || amount.equals("")){
@@ -516,12 +573,14 @@
             rechargeRecordsQuery.setAmount(null);
             competitionQuery.setAmount(null);
             incomeQuery.setAmount(null);
+            worldCupQuery.setAmount(null);
         }else {
             siteBookingQuery.setAmount(new BigDecimal(amount));
             query.setAmount(new BigDecimal(amount));
             rechargeRecordsQuery.setAmount(new BigDecimal(amount));
             competitionQuery.setAmount(new BigDecimal(amount));
             incomeQuery.setAmount(new BigDecimal(amount));
+            worldCupQuery.setAmount(new BigDecimal(amount));
         }
         if (UserExt.getUser().getObjectType()==2){
             // 拿到门店集合id
@@ -532,16 +591,22 @@
             competitionQuery.setOperatorId(UserExt.getUser().getObjectId());
             siteBookingQuery.setStoreIds(operatorId);
         }
-
+        if (UserExt.getUser().getObjectType()==3){
+            // 拿到门店集合id
+            List<Integer> integers = new ArrayList<>();
+            integers.add(UserExt.getUser().getObjectId());
+            siteBookingQuery.setStoreIds(integers);
+            query.setStoresIds(integers);
+            competitionQuery.setStoreId(UserExt.getUser().getObjectId());
+        }
         siteBookingQuery.setTime(time);
         query.setRegisterTime(time);
         rechargeRecordsQuery.setTime(time);
         competitionQuery.setTime(time);
         incomeQuery.setTime(time);
+        worldCupQuery.setTime(time);
         Integer roleType = UserExt.getUser().getObjectType();
-        IncomeVO incomeVO = new IncomeVO();
         List<IncomeVO> incomeVOS = new ArrayList<>();
-
         if ( incomeType==null || incomeType == 1){
             // 会员支付记录
             List<VipPayment> vipPayments = vipPaymentClient.registrationList(incomeQuery);
@@ -551,7 +616,7 @@
                 }
                 TAppUser tAppUser = appUserClient.queryById(vipPayment.getAppUserId());
                 IncomeVO temp = new IncomeVO();
-                temp.setId(vipPayment.getId());
+                temp.setId(vipPayment.getId().toString());
                 if (tAppUser!=null){
                     if (tAppUser.getProvince()!=null){
                         temp.setProvince(tAppUser.getProvince());
@@ -565,7 +630,7 @@
                 temp.setStoreName("");
                 temp.setAmount(new BigDecimal(vipPayment.getAmount().toString()));
                 temp.setIncomeType(1);
-                temp.setState(vipPayment.getState());
+                temp.setState(2);
                 temp.setInsertTime(vipPayment.getInsertTime());
                 if (UserExt.getUser().getObjectType()!=1){
                     break;
@@ -582,7 +647,7 @@
                 }
                 TAppUser tAppUser = appUserClient.queryById(rechargeRecordsVO.getAppUserId());
                 IncomeVO temp = new IncomeVO();
-                temp.setId(rechargeRecordsVO.getId().intValue());
+                temp.setId(rechargeRecordsVO.getId().toString());
                 if (tAppUser!=null){
                     if (tAppUser.getProvince()!=null){
                         temp.setProvince(tAppUser.getProvince());
@@ -599,8 +664,7 @@
                     temp.setAmount(rechargeRecordsVO.getAmount());
                 }
                 temp.setIncomeType(2);
-                temp.setState(rechargeRecordsVO.getPayStatus());
-
+                temp.setState(2);
                 incomeVOS.add(temp);
             }
         }
@@ -613,12 +677,10 @@
                 }
                 TAppUser tAppUser = appUserClient.queryById(registerOrderVO.getAppUserId());
                 IncomeVO temp = new IncomeVO();
-                temp.setId(registerOrderVO.getId().intValue());
-                if (registerOrderVO.getPayStatus()==2) {
-                    temp.setState(2);
-                } else {
-                    temp.setState(1);
-                }
+                temp.setId(registerOrderVO.getId().toString());
+
+                temp.setState(2);
+
                 if (tAppUser!=null){
                     if (tAppUser.getProvince()!=null){
                         temp.setProvince(tAppUser.getProvince());
@@ -637,11 +699,10 @@
                     temp.setAmount(registerOrderVO.getMoney());
                 }
                 temp.setIncomeType(3);
-                temp.setState(registerOrderVO.getPayStatus());
+                temp.setState(2);
                 incomeVOS.add(temp);
             }
         }
-        if(roleType !=3) {
             if (incomeType == null || incomeType == 4) {
                 // 报名活动
                 List<PaymentCompetition> competitions = competitionClient.listAllPayment(competitionQuery);
@@ -652,6 +713,9 @@
                     IncomeVO temp = new IncomeVO();
                     TAppUser tAppUser = appUserClient.queryById(competition.getAppUserId());
                     Competition competition1 = competitionClient.queryById(competition.getCompetitionId());
+                    if(null == competition1){
+                        continue;
+                    }
                     if (!competition1.getStoreId().equals("")){
                         String[] split = competition1.getStoreId().split(",");
                         List<Integer> list = new ArrayList<>();
@@ -668,12 +732,10 @@
 
                         temp.setStoreName(substring);
                     }
-                    if (competition.getPayStatus()==2) {
+
                         temp.setState(2);
-                    } else {
-                        temp.setState(1);
-                    }
-                    temp.setId(competition.getId().intValue());
+
+                    temp.setId(competition.getId().toString());
                     if (tAppUser!=null){
                         if (tAppUser.getProvince()!=null){
                             temp.setProvince(tAppUser.getProvince());
@@ -689,25 +751,20 @@
                         temp.setAmount(new BigDecimal(competition.getAmount().toString()));
                     }
                     temp.setIncomeType(4);
-                    temp.setState(competition.getPayStatus());
+                    temp.setState(2);
                     incomeVOS.add(temp);
                 }
             }
-        }
         if (incomeType == null || incomeType == 5) {
             // 预约场地
             List<SiteBooking> siteBookings = siteClient.listAll(siteBookingQuery);
             for (SiteBooking siteBooking : siteBookings) {
                 IncomeVO temp = new IncomeVO();
-                if (siteBooking.getStatus() == 0 || siteBooking.getStatus() == 5 || siteBooking.getStatus() == 4) {
-                    temp.setState(1);
-                } else {
-                    temp.setState(2);
-                }
+                temp.setState(2);
                 TAppUser tAppUser = appUserClient.queryAppUser1(siteBooking.getAppUserId());
                 Store store = storeClient.getStoreById(siteBooking.getStoreId());
 
-                temp.setId(siteBooking.getId());
+                temp.setId(siteBooking.getId().toString());
                 temp.setProvince(siteBooking.getProvince());
                 temp.setCity(siteBooking.getCity());
                 temp.setStoreName(store.getName());
@@ -730,9 +787,25 @@
                 incomeVOS.add(temp);
             }
         }
-
-        BigDecimal totalAmount = BigDecimal.ZERO; // 初始化累加变量为0
-
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        if (roleType == 1 && (incomeType == null || incomeType == 6)){
+            List<WorldCupIncomeVO> worldCupIncome = worldCupClient.getWorldCupIncome(worldCupQuery);
+            for (WorldCupIncomeVO worldCupIncomeVO : worldCupIncome) {
+                IncomeVO temp = new IncomeVO();
+                temp.setId(worldCupIncomeVO.getId());
+                temp.setProvince(worldCupIncomeVO.getProvince());
+                temp.setCity(worldCupIncomeVO.getCity());
+                temp.setStoreName(worldCupIncomeVO.getStoreName());
+                temp.setPayUser(worldCupIncomeVO.getUserName());
+                temp.setPhone(worldCupIncomeVO.getPhone());
+                temp.setAmount(new BigDecimal(worldCupIncomeVO.getAmount()));
+                temp.setIncomeType(6);
+                temp.setState(2);
+                temp.setInsertTime(simpleDateFormat.parse(worldCupIncomeVO.getPayTime()));
+                incomeVOS.add(temp);
+            }
+        }
+         BigDecimal totalAmount = BigDecimal.ZERO; // 初始化累加变量为0
         for (IncomeVO vo : incomeVOS) {
             if (vo.getAmount() == null ){
                 BigDecimal temp = BigDecimal.ZERO;
@@ -758,6 +831,13 @@
         if(UserExt.getUser().getObjectType()==3){
             coachQuery.setStoreId(UserExt.getUser().getObjectId());
         }
+        if(UserExt.getUser().getObjectType()==2){
+            // 运营商门店ids
+            List<Integer> storeIds = storeService
+                    .list(new QueryWrapper<TStore>().eq("operatorId", UserExt.getUser().getObjectId()))
+                    .stream().map(TStore::getId).collect(Collectors.toList());
+            coachQuery.setStoreIds(storeIds);
+        }
         return cancelledClassesClient.listAll(coachQuery);
     }
     /**
@@ -773,6 +853,7 @@
         query.setProvince(province);
         query.setCity(city);
         query.setStoreId(storeId);
+        query.setInsertType(UserExt.getUser().getObjectType());
         if(UserExt.getUser().getObjectType()==2){
             query.setStoresIds(storeService.list(new QueryWrapper<TStore>()
                     .eq("operatorId",UserExt.getUser().getObjectId())

--
Gitblit v1.7.1