| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- namespace App\Module\AppGame\Handler\Friend;
- use App\Module\AppGame\Handler\BaseHandler;
- use App\Module\Friend\Enums\ERROR_CODE;
- use App\Module\Friend\Services\FriendService;
- use Google\Protobuf\Internal\Message;
- use Uraus\Kku\Request\RequestFriendApply;
- use Uraus\Kku\Response\ResponseFriendApply;
- /**
- * 处理添加好友请求
- */
- class ApplyHandler extends BaseHandler
- {
- /**
- * 是否需要登录
- * @var bool
- */
- protected bool $need_login = true;
- /**
- * 处理添加好友请求
- *
- * @param RequestFriendApply $data 添加好友请求数据
- * @return ResponseFriendApply 添加好友响应
- */
- public function handle(Message $data): Message
- {
- // 创建响应对象
- $response = new ResponseFriendApply();
- // 获取请求参数
- $targetId = $data->getUserId();
- $message = ''; // 消息字段在当前proto定义中不存在
- // 参数验证
- if (empty($targetId)) {
- // 由于ResponseFriendApply没有code和message字段,我们只能返回空响应
- return $response;
- }
- // 调用服务发送好友申请
- $result = FriendService::sendFriendRequest($this->user_id, $targetId, $message);
- // 如果成功,设置申请ID
- if ($result['code'] === ERROR_CODE::SUCCESS && isset($result['data']['id'])) {
- $response->setApplyId($result['data']['id']);
- }
- return $response;
- }
- }
|