1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-06-26 20:52:44 +08:00

Merge branch 'koogua/v1.4.5' into demo

This commit is contained in:
koogua 2021-10-07 13:17:06 +08:00
commit 3f05139d07
3 changed files with 44 additions and 13 deletions

View File

@ -42,7 +42,7 @@ class ConsultInfo extends LogicService
return [
'id' => $consult->id,
'question' => $consult->question,
'consult' => $consult->consult,
'answer' => $consult->answer,
'rating' => $consult->rating,
'private' => $consult->private,
'published' => $consult->published,

View File

@ -7,22 +7,32 @@
namespace App\Services\Logic\Im;
use App\Repos\User as UserRepo;
use App\Models\ImGroup as ImGroupModel;
use App\Models\User as UserModel;
use App\Repos\ImGroupUser as ImGroupUserRepo;
use App\Services\Logic\ImGroupTrait;
use App\Services\Logic\Service as LogicService;
use App\Services\Logic\UserTrait;
class GroupInfo extends LogicService
{
use ImGroupTrait;
use UserTrait;
public function handle($id)
{
$group = $this->checkImGroup($id);
$userRepo = new UserRepo();
$user = $this->getCurrentUser(true);
$owner = $userRepo->findById($group->owner_id);
return $this->handleGroup($group, $user);
}
protected function handleGroup(ImGroupModel $group, UserModel $user)
{
$owner = $this->handleShallowUserInfo($group->owner_id);
$me = $this->handleMeInfo($group, $user);
return [
'id' => $group->id,
@ -30,17 +40,38 @@ class GroupInfo extends LogicService
'name' => $group->name,
'avatar' => $group->avatar,
'about' => $group->about,
'published' => $group->published,
'deleted' => $group->deleted,
'user_count' => $group->user_count,
'msg_count' => $group->msg_count,
'owner' => [
'id' => $owner->id,
'name' => $owner->name,
'avatar' => $owner->avatar,
'title' => $owner->title,
'about' => $owner->about,
'vip' => $owner->vip,
],
'owner' => $owner,
'me' => $me,
];
}
protected function handleMeInfo(ImGroupModel $group, UserModel $user)
{
$me = [
'joined' => 0,
'owned' => 0,
];
if ($user->id == $group->owner_id) {
$me['owned'] = 1;
}
if ($user->id > 0) {
$repo = new ImGroupUserRepo();
$groupUser = $repo->findGroupUser($group->id, $user->id);
if ($groupUser) {
$me['joined'] = 1;
}
}
return $me;
}
}

View File

@ -14,7 +14,7 @@ $error['sys.unauthorized'] = '认证失败';
$error['sys.forbidden'] = '拒绝访问';
$error['sys.bad_request'] = '无效的请求';
$error['sys.not_found'] = '资源不存在';
$error['sys.internal_server_error'] = '内部错误';
$error['sys.server_error'] = '服务器内部错误';
$error['sys.service_unavailable'] = '服务不可用';
$error['sys.trans_rollback'] = '事务回滚';
$error['sys.unknown_error'] = '未知错误';