Просмотр исходного кода

feat(shared-prosperity): 完善用户树形结构功能并添加合伙人身份显示

- 重构 SharedProsperityUserRepository 中的变量命名,将 userDao 替换为 shareUserDao
- 添加合伙人等级配置数组,支持从 0 到 6 级别的身份标识
- 在用户信息中集成合伙人身份显示,格式为 "昵称(账号)(身份:级别)"
- 修改测试控制器使用正确的用户树方法并注释掉旧的测试代码
- 优化用户信息获取逻辑以支持身份级别的展示功能
shichen месяцев назад: 5
Родитель
Сommit
e7408b5239

+ 19 - 6
app/common/repositories/shared/SharedProsperityUserRepository.php

@@ -528,21 +528,33 @@ class SharedProsperityUserRepository extends BaseRepository
528 528
      */
529 529
     public function getUserTree($userId)
530 530
     {
531
-        /** @var SharedProsperityUserDao $userDao */
532
-        $userDao = app()->make(SharedProsperityUserDao::class);
531
+        /** @var SharedProsperityUserDao $shareUserDao */
532
+        $shareUserDao = app()->make(SharedProsperityUserDao::class);
533 533
         
534 534
         // 获取所有下级用户ID(包括自己)
535
-        $subordinateIds = $userDao->getAllSubordinateUserIds($userId, true);
535
+        $subordinateIds = $shareUserDao->getAllSubordinateUserIds($userId, true);
536 536
         if (empty($subordinateIds)) {
537 537
             return [];
538 538
         }
539 539
         
540 540
         // 获取这些共富用户的基本信息(包含parent_id)
541
-        $sharedUsers = $userDao->getSharedProsperityUserEntityListByUserIdList($subordinateIds);
541
+        $sharedUsers = $shareUserDao->getSharedProsperityUserEntityListByUserIdList($subordinateIds);
542
+
542 543
         if (empty($sharedUsers)) {
543 544
             return [];
544 545
         }
545
-        
546
+
547
+        // 用户身份
548
+        $partnerLevel = [
549
+            0 => '用户',
550
+            1 => '一星合伙人',
551
+            2 => '二星合伙人',
552
+            3 => '三星合伙人',
553
+            4 => '钻石合伙人',
554
+            5 => '总裁合伙人',
555
+            6 => '联席主席团',
556
+        ];
557
+
546 558
         // 获取用户昵称映射
547 559
         $userIds = array_map(function ($entity) {
548 560
             return $entity->getUserId();
@@ -552,7 +564,8 @@ class SharedProsperityUserRepository extends BaseRepository
552 564
         $userInfos = $userDao->getUserEntityListByUidList($userIds);
553 565
         $idToName = [];
554 566
         foreach ($userInfos as $userInfo) {
555
-            $idToName[$userInfo->getUid()] = $userInfo->getNickname()  . '(' . $userInfo->account .')' ?? ('用户' . $userInfo->getUid());
567
+            $sharedUserInfo = $shareUserDao->getSharedProsperityUserEntityListByUserIdList([$userInfo->getUid()]);
568
+            $idToName[$userInfo->getUid()] = $userInfo->getNickname()  . '(' . $userInfo->account .')(身份:' . $partnerLevel[$sharedUserInfo[0]->getPartnerLevel()] . ')' ?? ('用户' . $userInfo->getUid());
556 569
         }
557 570
         
558 571
         // 构建节点数组

+ 8 - 8
app/controller/api/Test.php

@@ -9,15 +9,15 @@ class Test
9 9
 {
10 10
     public function test()
11 11
     {
12
-        // /** @var SharedProsperityUserRepository $userRepository */
13
-        // $userRepository = app()->make(SharedProsperityUserRepository::class);
14
-        // $list = $userRepository->getUserTree(43);
15
-        // var_dump(json_encode($list));
16
-        $field = request()->param('field');
17
-        /** @var UserRepository $userRepository */
18
-        $userRepository = app()->make(UserRepository::class);
19
-        $list = $userRepository->getUserForTree($field,43);
12
+        /** @var SharedProsperityUserRepository $userRepository */
13
+        $userRepository = app()->make(SharedProsperityUserRepository::class);
14
+        $list = $userRepository->getUserTree(43);
20 15
         var_dump(json_encode($list));
16
+        // $field = request()->param('field');
17
+        // /** @var UserRepository $userRepository */
18
+        // $userRepository = app()->make(UserRepository::class);
19
+        // $list = $userRepository->getUserForTree($field,43);
20
+        // var_dump(json_encode($list));
21 21
         // return app('json')->success($list);
22 22
     }
23 23
 }