Преглед изворни кода

fix(finance): 修复统计数据中排除测试用户的问题

- 查询数据库获取所有测试用户的uid列表
- 将测试用户uid转换为逗号分隔的字符串
- 在共富会员身份统计查询中排除测试用户
- 在共富团队统计查询中排除测试用户
- 确保统计数据准确性,避免测试数据影响业务指标
shichen пре 4 месеци
родитељ
комит
324579b8a0
1 измењених фајлова са 4 додато и 2 уклоњено
  1. 4 2
      app/common/repositories/finance/FinanceRepository.php

+ 4 - 2
app/common/repositories/finance/FinanceRepository.php

@@ -388,7 +388,9 @@ class FinanceRepository extends BaseRepository
388 388
             $data['tow'][] = ['className' => 'el-icon-s-goods', 'count' => set_price_rtrim($maker[0]['count'] ?? 0), 'name' => '商户', 'user_group' => 0];
389 389
 
390 390
             // 共富会员身份
391
-            $sharedUserDataQuery = Db::query("SELECT partner_level,count(user_id) count FROM `rrx_shared_prosperity_user` group by partner_level");
391
+            $testUids = Db::name('user')->where('test_user',  '1')->column('uid');
392
+            $testUidsStr = implode(',',$testUids);
393
+            $sharedUserDataQuery = Db::query("SELECT partner_level,count(user_id) count FROM `rrx_shared_prosperity_user` where user_id not in (".$testUidsStr.") group by partner_level");
392 394
             $sharedUserDataQuery = array_column($sharedUserDataQuery, 'count', 'partner_level');
393 395
             $data['three'][] = ['className' => 'el-icon-s-goods', 'count' => (int)($sharedUserDataQuery[0] ?? 0), 'name' => '普通用户', 'partner_level' => 0];
394 396
             $data['three'][] = ['className' => 'el-icon-s-goods', 'count' => (int)($sharedUserDataQuery[1] ?? 0), 'name' => '一星合伙人', 'partner_level' => 1];
@@ -399,7 +401,7 @@ class FinanceRepository extends BaseRepository
399 401
             $data['three'][] = ['className' => 'el-icon-s-goods', 'count' => (int)($sharedUserDataQuery[6] ?? 0), 'name' => '联席主席团', 'partner_level' => 6];
400 402
 
401 403
             // 共富百人团、千人团、万人团数据
402
-            $sharedGroupUserDataQuery = Db::query("SELECT group_id,count(user_id) count FROM `rrx_shared_prosperity_group_user` group by group_id");
404
+            $sharedGroupUserDataQuery = Db::query("SELECT group_id,count(user_id) count FROM `rrx_shared_prosperity_group_user` where user_id not in (".$testUidsStr.") group by group_id");
403 405
             $sharedGroupUserDataQuery = array_column($sharedGroupUserDataQuery, 'count', 'group_id');
404 406
             $data['four'][] = ['className' => 'el-icon-s-goods', 'count' => (int)($sharedGroupUserDataQuery[1] ?? 0), 'name' => '万人团', 'group_id' => 1];
405 407
             $data['four'][] = ['className' => 'el-icon-s-goods', 'count' => (int)($sharedGroupUserDataQuery[2] ?? 0), 'name' => '千人团', 'group_id' => 2];