From 6a30d9896eb9717af3ab993271421a8e80ad2dc1 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期三, 17 十二月 2025 18:05:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBigGiftPackageOrderServiceImpl.java |   74 +++++++++++++++++++++++++++++++++++++
 1 files changed, 74 insertions(+), 0 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBigGiftPackageOrderServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBigGiftPackageOrderServiceImpl.java
index f44ce30..d5603e5 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBigGiftPackageOrderServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBigGiftPackageOrderServiceImpl.java
@@ -1,5 +1,7 @@
 package com.ruoyi.system.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -8,13 +10,20 @@
 import com.ruoyi.system.config.ICBCConfig;
 import com.ruoyi.system.dto.BigGiftPlaceOrderDTO;
 import com.ruoyi.system.mapper.TBigGiftPackageMapper;
+import com.ruoyi.system.mapper.TCommissionTransactionFlowMapper;
 import com.ruoyi.system.mapper.TBigGiftPackageOrderMapper;
 import com.ruoyi.system.mapper.TCompanyMapper;
 import com.ruoyi.system.model.TBigGiftPackage;
 import com.ruoyi.system.model.TBigGiftPackageOrder;
+import com.ruoyi.system.mapper.TBigGiftPackageOrderMapper;
+import com.ruoyi.system.model.TCommissionTransactionFlow;
 import com.ruoyi.system.model.TCompany;
 import com.ruoyi.system.query.BigGiftPackageOrderQuery;
+import com.ruoyi.system.query.ProfitPageListQuery;
 import com.ruoyi.system.service.TBigGiftPackageOrderService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.system.service.TCommissionTransactionFlowService;
+import com.ruoyi.system.vo.ProfitPageListVo;
 import com.ruoyi.system.utils.ICBCPayUtil;
 import com.ruoyi.system.utils.OrderCodeGenerator;
 import com.ruoyi.system.vo.PlaceOrderVO;
@@ -48,6 +57,9 @@
 
     @Resource
     private TBigGiftPackageMapper bigGiftPackageMapper;
+
+    @Resource
+    private TCommissionTransactionFlowMapper commissionTransactionFlowMapper;
 
     @Autowired
     private ICBCPayUtil icbcPayUtil;
@@ -108,6 +120,68 @@
     }
 
     @Override
+    public List<ProfitPageListVo> profitPageList(Page<ProfitPageListVo> page, ProfitPageListQuery query) {
+        String sTime = null;
+        String eTime = null;
+        if(query.getCreateTime()!=null && !query.getCreateTime().isEmpty()){
+            String[] split = query.getCreateTime().split(" - ");
+            sTime = split[0] + " 00:00:00";
+            eTime = split[1] + " 23:59:59";
+        }
+
+        List<ProfitPageListVo> profitPageListVos = this.baseMapper.profitPageList(page, query, sTime, eTime);
+
+
+        if(!profitPageListVos.isEmpty()){
+            List<Integer> orderIds = profitPageListVos.stream().map(ProfitPageListVo::getId).collect(Collectors.toList());
+            List<TCommissionTransactionFlow> tCommissionTransactionFlows = commissionTransactionFlowMapper.selectList(new LambdaQueryWrapper<TCommissionTransactionFlow>().in(TCommissionTransactionFlow::getOrderId, orderIds));
+            for (ProfitPageListVo profitPageListVo : profitPageListVos) {
+                TCommissionTransactionFlow flow = tCommissionTransactionFlows.stream().filter(e -> e.getOrderId().equals(profitPageListVo.getId()) && e.getAppUserType()==2).findFirst().orElse( null);
+                if(flow!=null){
+                    profitPageListVo.setSaleProfit(flow.getCommissionAmount());
+                }
+                TCommissionTransactionFlow flow1 = tCommissionTransactionFlows.stream().filter(e -> e.getOrderId().equals(profitPageListVo.getId()) && e.getAppUserType()==3).findFirst().orElse( null);
+                if(flow1!=null){
+                    profitPageListVo.setPartnerProfit(flow1.getCommissionAmount());
+                }
+            }
+        }
+
+        return profitPageListVos;
+    }
+
+    @Override
+    public List<ProfitPageListVo> profitPageListExport(ProfitPageListQuery query) {
+        String sTime = null;
+        String eTime = null;
+        if(query.getCreateTime()!=null && !query.getCreateTime().isEmpty()){
+            String[] split = query.getCreateTime().split(" - ");
+            sTime = split[0] + " 00:00:00";
+            eTime = split[1] + " 23:59:59";
+        }
+
+        List<ProfitPageListVo> profitPageListVos = this.baseMapper.profitPageListExport(query, sTime, eTime);
+
+
+        if(!profitPageListVos.isEmpty()){
+            List<Integer> orderIds = profitPageListVos.stream().map(ProfitPageListVo::getId).collect(Collectors.toList());
+            List<TCommissionTransactionFlow> tCommissionTransactionFlows = commissionTransactionFlowMapper.selectList(new LambdaQueryWrapper<TCommissionTransactionFlow>().in(TCommissionTransactionFlow::getOrderId, orderIds));
+            for (ProfitPageListVo profitPageListVo : profitPageListVos) {
+                TCommissionTransactionFlow flow = tCommissionTransactionFlows.stream().filter(e -> e.getOrderId().equals(profitPageListVo.getId()) && e.getAppUserType()==2).findFirst().orElse( null);
+                if(flow!=null){
+                    profitPageListVo.setSaleProfit(flow.getCommissionAmount());
+                }
+                TCommissionTransactionFlow flow1 = tCommissionTransactionFlows.stream().filter(e -> e.getOrderId().equals(profitPageListVo.getId()) && e.getAppUserType()==3).findFirst().orElse( null);
+                if(flow1!=null){
+                    profitPageListVo.setPartnerProfit(flow1.getCommissionAmount());
+                }
+            }
+        }
+
+        return profitPageListVos;
+    }
+
+    @Override
     @Transactional(rollbackFor = Exception.class)
     public PlaceOrderVO placeOrder(BigGiftPlaceOrderDTO dto, Integer appUserId, String openid) {
         // 1. 校验商品是否存在

--
Gitblit v1.7.1