|
@@ -1,6 +1,8 @@
|
|
|
<?php
|
|
|
namespace App\Repositories;
|
|
|
use App\Models\Floor;
|
|
|
+use App\Models\MemberGroup;
|
|
|
+use App\Models\MemberGroupInfo;
|
|
|
use App\Models\TopicGroup;
|
|
|
use App\Models\TopicGroupInfo;
|
|
|
use App\Models\VideoGroup;
|
|
@@ -23,12 +25,16 @@ class FloorRepository
|
|
|
{
|
|
|
use UserTrait;
|
|
|
public function __construct(Floor $floor,
|
|
|
+ MemberGroup $memberGroup,
|
|
|
+ MemberGroupInfo $memberGroupInfo,
|
|
|
VideoGroup $videoGroup,
|
|
|
VideoGroupInfo $videoGroupInfo,
|
|
|
TopicGroup $topicGroup,
|
|
|
TopicGroupInfo $topicGroupInfo)
|
|
|
{
|
|
|
$this->floor = $floor;
|
|
|
+ $this->memberGroup = $memberGroup;
|
|
|
+ $this->memberGroupInfo = $memberGroupInfo;
|
|
|
$this->videoGroup = $videoGroup;
|
|
|
$this->videoGroupInfo = $videoGroupInfo;
|
|
|
$this->topicGroup = $topicGroup;
|
|
@@ -68,6 +74,20 @@ class FloorRepository
|
|
|
}
|
|
|
}elseif($item->floor_type == 1){
|
|
|
//user
|
|
|
+ $memberIds = $this->memberGroup
|
|
|
+ ->join('member_group_info', 'member_group_info.member_group_id', '=', 'member_group.id')
|
|
|
+ ->where('member_group.id', $item->group_ids)
|
|
|
+ ->limit(20)
|
|
|
+ ->pluck('member_group_info.uid')
|
|
|
+ ->toArray();
|
|
|
+ if(!$memberIds) continue;
|
|
|
+ $memberIds = implode($memberIds, ',');
|
|
|
+ $member = $this->getMemberGroup($memberIds);
|
|
|
+ if(!$member) continue;
|
|
|
+ $data[$item->floor_location] = [
|
|
|
+ 'show_type' => 'user',
|
|
|
+ 'data' => $member
|
|
|
+ ];
|
|
|
}elseif($item->floor_type == 2){
|
|
|
//video
|
|
|
$videoIds = $this->videoGroup
|