From 7c1b33b52b5a9be704d8ebbc42090e22ec6a88ff Mon Sep 17 00:00:00 2001 From: gzydong <837215079@qq.com> Date: Thu, 8 Jul 2021 19:30:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Command/TestCommand.php | 2 +- .../{FileMediaType.php => MediaFileType.php} | 2 +- app/Constants/RedisSubscribeChan.php | 3 + ...cketConstants.php => TalkMessageEvent.php} | 2 +- .../{TalkMsgType.php => TalkMessageType.php} | 4 +- app/Constants/{TalkType.php => TalkMode.php} | 8 +- .../Api/V1/ContactsApplyController.php | 6 +- app/Controller/Api/V1/GroupController.php | 22 ++--- app/Controller/Api/V1/TalkController.php | 18 ++-- .../Api/V1/TalkMessageController.php | 30 +++---- app/Controller/WebSocketController.php | 10 +-- app/Service/EmoticonService.php | 8 +- app/Service/GroupService.php | 36 ++++---- app/Service/Message/ReceiveHandleService.php | 20 ++--- .../Message/SubscribeHandleService.php | 42 ++++----- app/Service/TalkService.php | 86 +++++++++---------- app/Support/UserRelation.php | 6 +- 17 files changed, 156 insertions(+), 149 deletions(-) rename app/Constants/{FileMediaType.php => MediaFileType.php} (97%) rename app/Constants/{SocketConstants.php => TalkMessageEvent.php} (98%) rename app/Constants/{TalkMsgType.php => TalkMessageType.php} (87%) rename app/Constants/{TalkType.php => TalkMode.php} (79%) diff --git a/app/Command/TestCommand.php b/app/Command/TestCommand.php index c0a32da..0e5c8d2 100644 --- a/app/Command/TestCommand.php +++ b/app/Command/TestCommand.php @@ -19,7 +19,7 @@ use App\Cache\SocketFdBindUser; use App\Cache\SocketRoom; use App\Cache\SocketUserBindFds; use App\Cache\UnreadTalk; -use App\Constants\FileMediaType; +use App\Constants\MediaFileType; use App\Model\Group\Group; use App\Model\Group\GroupMember; use App\Model\TalkList; diff --git a/app/Constants/FileMediaType.php b/app/Constants/MediaFileType.php similarity index 97% rename from app/Constants/FileMediaType.php rename to app/Constants/MediaFileType.php index 0c4007a..aa4faac 100644 --- a/app/Constants/FileMediaType.php +++ b/app/Constants/MediaFileType.php @@ -7,7 +7,7 @@ namespace App\Constants; * * @package App\Constants */ -class FileMediaType +class MediaFileType { const FILE_IMAGE = 1; //图片文件 const FILE_VIDEO = 2; //视频文件 diff --git a/app/Constants/RedisSubscribeChan.php b/app/Constants/RedisSubscribeChan.php index b38a557..92bfbb1 100644 --- a/app/Constants/RedisSubscribeChan.php +++ b/app/Constants/RedisSubscribeChan.php @@ -4,5 +4,8 @@ namespace App\Constants; class RedisSubscribeChan { + /** + * Websocket 消息推送渠道 + */ const WEBSOCKET_CHAN = 'websocket'; } diff --git a/app/Constants/SocketConstants.php b/app/Constants/TalkMessageEvent.php similarity index 98% rename from app/Constants/SocketConstants.php rename to app/Constants/TalkMessageEvent.php index 6f312f7..a1c018c 100644 --- a/app/Constants/SocketConstants.php +++ b/app/Constants/TalkMessageEvent.php @@ -7,7 +7,7 @@ namespace App\Constants; * * @package App\Constants */ -class SocketConstants +class TalkMessageEvent { /** * 对话消息通知 - 事件名 diff --git a/app/Constants/TalkMsgType.php b/app/Constants/TalkMessageType.php similarity index 87% rename from app/Constants/TalkMsgType.php rename to app/Constants/TalkMessageType.php index 1131953..83b30fe 100644 --- a/app/Constants/TalkMsgType.php +++ b/app/Constants/TalkMessageType.php @@ -7,14 +7,14 @@ namespace App\Constants; * * @package App\Constants */ -class TalkMsgType +class TalkMessageType { const TEXT_MESSAGE = 1;//文本消息 const FILE_MESSAGE = 2;//文件消息 const FORWARD_MESSAGE = 3;//会话消息 const CODE_MESSAGE = 4;//代码消息 const VOTE_MESSAGE = 5;//投票消息 - const GROUP_NOTICE_MESSAGE = 6;//群公告 + const GROUP_NOTICE_MESSAGE = 6;//群组公告 const FRIEND_APPLY_MESSAGE = 7;//好友申请 const USER_LOGIN_MESSAGE = 8;//登录通知 const GROUP_INVITE_MESSAGE = 9;//入群退群消息 diff --git a/app/Constants/TalkType.php b/app/Constants/TalkMode.php similarity index 79% rename from app/Constants/TalkType.php rename to app/Constants/TalkMode.php index 6a056f4..c6fd677 100644 --- a/app/Constants/TalkType.php +++ b/app/Constants/TalkMode.php @@ -2,7 +2,12 @@ namespace App\Constants; -class TalkType +/** + * 聊天对话模式 + * + * @package App\Constants + */ +class TalkMode { /** * 私聊 @@ -14,7 +19,6 @@ class TalkType */ const GROUP_CHAT = 2; - public static function getTypes() { return [ diff --git a/app/Controller/Api/V1/ContactsApplyController.php b/app/Controller/Api/V1/ContactsApplyController.php index c915523..c9f20c2 100644 --- a/app/Controller/Api/V1/ContactsApplyController.php +++ b/app/Controller/Api/V1/ContactsApplyController.php @@ -5,7 +5,7 @@ namespace App\Controller\Api\V1; use App\Amqp\Producer\ChatMessageProducer; use App\Cache\FriendApply; -use App\Constants\SocketConstants; +use App\Constants\TalkMessageEvent; use App\Model\UsersFriendsApply; use App\Service\SocketClientService; use App\Service\UserService; @@ -72,7 +72,7 @@ class ContactsApplyController extends CController // 判断对方是否在线。如果在线发送消息通知 if ($this->socketClientService->isOnlineAll($params['friend_id'])) { MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_FRIEND_APPLY, [ + MessageProducer::create(TalkMessageEvent::EVENT_FRIEND_APPLY, [ 'apply_id' => $result->id, 'type' => 1, ]) @@ -105,7 +105,7 @@ class ContactsApplyController extends CController // 判断对方是否在线。如果在线发送消息通知 if ($this->socketClientService->isOnlineAll($friend_id)) { MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_FRIEND_APPLY, [ + MessageProducer::create(TalkMessageEvent::EVENT_FRIEND_APPLY, [ 'apply_id' => (int)$params['apply_id'], 'type' => 2, ]) diff --git a/app/Controller/Api/V1/GroupController.php b/app/Controller/Api/V1/GroupController.php index d7b87a5..bbfa48a 100644 --- a/app/Controller/Api/V1/GroupController.php +++ b/app/Controller/Api/V1/GroupController.php @@ -11,7 +11,7 @@ namespace App\Controller\Api\V1; use App\Cache\SocketRoom; -use App\Constants\TalkType; +use App\Constants\TalkMode; use App\Service\UserService; use App\Support\MessageProducer; use Hyperf\Di\Annotation\Inject; @@ -26,7 +26,7 @@ use App\Model\Group\GroupMember; use App\Model\Group\GroupNotice; use App\Amqp\Producer\ChatMessageProducer; use App\Service\GroupService; -use App\Constants\SocketConstants; +use App\Constants\TalkMessageEvent; use Psr\Http\Message\ResponseInterface; /** @@ -78,10 +78,10 @@ class GroupController extends CController } MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$data['group_id'], - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'record_id' => (int)$data['record_id'] ]) ); @@ -144,10 +144,10 @@ class GroupController extends CController } MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$params['group_id'], - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'record_id' => $record_id ]) ); @@ -178,10 +178,10 @@ class GroupController extends CController SocketRoom::getInstance()->delRoomMember($params['group_id'], $user_id); MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$params['group_id'], - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'record_id' => $record_id ]) ); @@ -250,10 +250,10 @@ class GroupController extends CController } MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$params['group_id'], - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'record_id' => $record_id ]) ); @@ -301,7 +301,7 @@ class GroupController extends CController 'is_manager' => $groupInfo->creator_id == $user_id, 'manager_nickname' => $groupInfo->nickname, 'visit_card' => GroupMember::visitCard($user_id, $group_id), - 'is_disturb' => (int)TalkList::where('user_id', $user_id)->where('receiver_id', $group_id)->where('talk_type', TalkType::GROUP_CHAT)->value('is_disturb'), + 'is_disturb' => (int)TalkList::where('user_id', $user_id)->where('receiver_id', $group_id)->where('talk_type', TalkMode::GROUP_CHAT)->value('is_disturb'), 'notice' => $notice ? $notice->toArray() : [] ]); } diff --git a/app/Controller/Api/V1/TalkController.php b/app/Controller/Api/V1/TalkController.php index e5eec54..e3d60eb 100644 --- a/app/Controller/Api/V1/TalkController.php +++ b/app/Controller/Api/V1/TalkController.php @@ -12,8 +12,8 @@ namespace App\Controller\Api\V1; use App\Cache\LastMessage; use App\Cache\UnreadTalk; -use App\Constants\TalkMsgType; -use App\Constants\TalkType; +use App\Constants\TalkMessageType; +use App\Constants\TalkMode; use App\Support\UserRelation; use Hyperf\Di\Annotation\Inject; use Hyperf\HttpServer\Annotation\Controller; @@ -96,12 +96,12 @@ class TalkController extends CController 'updated_at' => date('Y-m-d H:i:s') ]; - if ($result['talk_type'] == TalkType::PRIVATE_CHAT) { + if ($result['talk_type'] == TalkMode::PRIVATE_CHAT) { $userInfo = User::where('id', $user_id)->first(['nickname', 'avatar']); $data['avatar'] = $userInfo->avatar; $data['name'] = $userInfo->nickname; $data['unread_num'] = UnreadTalk::getInstance()->read($data['receiver_id'], $user_id); - } else if ($result['talk_type'] == TalkType::GROUP_CHAT) { + } else if ($result['talk_type'] == TalkMode::GROUP_CHAT) { $groupInfo = Group::where('id', $data['receiver_id'])->first(['group_name', 'avatar']); $data['name'] = $groupInfo->group_name; $data['avatar'] = $groupInfo->avatar; @@ -190,7 +190,7 @@ class TalkController extends CController ]); // 设置好友消息未读数 - if ($params['talk_type'] == TalkType::PRIVATE_CHAT) { + if ($params['talk_type'] == TalkMode::PRIVATE_CHAT) { UnreadTalk::getInstance()->reset((int)$params['receiver_id'], $this->uid()); } @@ -273,10 +273,10 @@ class TalkController extends CController } $types = [ - TalkMsgType::TEXT_MESSAGE, - TalkMsgType::FILE_MESSAGE, - TalkMsgType::FORWARD_MESSAGE, - TalkMsgType::CODE_MESSAGE + TalkMessageType::TEXT_MESSAGE, + TalkMessageType::FILE_MESSAGE, + TalkMessageType::FORWARD_MESSAGE, + TalkMessageType::CODE_MESSAGE ]; if (in_array($params['msg_type'], $types)) { diff --git a/app/Controller/Api/V1/TalkMessageController.php b/app/Controller/Api/V1/TalkMessageController.php index 93e4608..c84497d 100644 --- a/app/Controller/Api/V1/TalkMessageController.php +++ b/app/Controller/Api/V1/TalkMessageController.php @@ -5,9 +5,9 @@ namespace App\Controller\Api\V1; use App\Amqp\Producer\ChatMessageProducer; use App\Cache\LastMessage; use App\Cache\UnreadTalk; -use App\Constants\SocketConstants; -use App\Constants\TalkMsgType; -use App\Constants\TalkType; +use App\Constants\TalkMessageEvent; +use App\Constants\TalkMessageType; +use App\Constants\TalkMode; use App\Model\EmoticonItem; use App\Model\FileSplitUpload; use App\Support\MessageProducer; @@ -57,7 +57,7 @@ class TalkMessageController extends CController $record_id = $this->talkService->createCodeMessage([ 'talk_type' => $params['talk_type'], - 'msg_type' => TalkMsgType::CODE_MESSAGE, + 'msg_type' => TalkMessageType::CODE_MESSAGE, 'user_id' => $user_id, 'receiver_id' => $params['receiver_id'], ], [ @@ -69,7 +69,7 @@ class TalkMessageController extends CController if (!$record_id) return $this->response->fail('消息发送失败!'); MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$params['receiver_id'], 'talk_type' => (int)$params['talk_type'], @@ -122,7 +122,7 @@ class TalkMessageController extends CController // 创建图片消息记录 $record_id = $this->talkService->createImgMessage([ 'talk_type' => $params['talk_type'], - 'msg_type' => TalkMsgType::FILE_MESSAGE, + 'msg_type' => TalkMessageType::FILE_MESSAGE, 'user_id' => $user_id, 'receiver_id' => $params['receiver_id'], ], [ @@ -136,7 +136,7 @@ class TalkMessageController extends CController if (!$record_id) return $this->response->fail('图片上传失败!'); MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$params['receiver_id'], 'talk_type' => (int)$params['talk_type'], @@ -184,7 +184,7 @@ class TalkMessageController extends CController $record_id = $this->talkService->createFileMessage([ 'talk_type' => $params['talk_type'], - 'msg_type' => TalkMsgType::FILE_MESSAGE, + 'msg_type' => TalkMessageType::FILE_MESSAGE, 'user_id' => $user_id, 'receiver_id' => $params['receiver_id'] ], [ @@ -199,7 +199,7 @@ class TalkMessageController extends CController if (!$record_id) return $this->response->fail('表情发送失败!'); MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$params['receiver_id'], 'talk_type' => (int)$params['talk_type'], @@ -250,7 +250,7 @@ class TalkMessageController extends CController $record_id = $this->talkService->createEmoticonMessage([ 'talk_type' => $params['talk_type'], - 'msg_type' => TalkMsgType::FILE_MESSAGE, + 'msg_type' => TalkMessageType::FILE_MESSAGE, 'user_id' => $user_id, 'receiver_id' => $params['receiver_id'], ], [ @@ -264,7 +264,7 @@ class TalkMessageController extends CController if (!$record_id) return $this->response->fail('表情发送失败!'); MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => (int)$params['receiver_id'], 'talk_type' => (int)$params['talk_type'], @@ -297,13 +297,13 @@ class TalkMessageController extends CController $receive_user_ids = $receive_group_ids = []; if (isset($params['receive_user_ids']) && !empty($params['receive_user_ids'])) { $receive_user_ids = array_map(function ($friend_id) { - return ['talk_type' => TalkType::PRIVATE_CHAT, 'id' => (int)$friend_id]; + return ['talk_type' => TalkMode::PRIVATE_CHAT, 'id' => (int)$friend_id]; }, $params['receive_user_ids']); } if (isset($params['receive_group_ids']) && !empty($params['receive_group_ids'])) { $receive_group_ids = array_map(function ($group_id) { - return ['talk_type' => TalkType::GROUP_CHAT, 'id' => (int)$group_id]; + return ['talk_type' => TalkMode::GROUP_CHAT, 'id' => (int)$group_id]; }, $params['receive_group_ids']); } @@ -327,7 +327,7 @@ class TalkMessageController extends CController // 消息推送队列 foreach ($ids as $value) { MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $user_id, 'receiver_id' => $value['receiver_id'], 'talk_type' => $value['talk_type'], @@ -374,7 +374,7 @@ class TalkMessageController extends CController if (!$isTrue) return $this->response->fail($message); MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_REVOKE_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_REVOKE_TALK, [ 'record_id' => $params['record_id'] ]) ); diff --git a/app/Controller/WebSocketController.php b/app/Controller/WebSocketController.php index 9d6a14a..b0daab4 100644 --- a/app/Controller/WebSocketController.php +++ b/app/Controller/WebSocketController.php @@ -15,7 +15,7 @@ use App\Cache\SocketRoom; use App\Service\Message\ReceiveHandleService; use App\Support\MessageProducer; use Hyperf\Di\Annotation\Inject; -use App\Constants\SocketConstants; +use App\Constants\TalkMessageEvent; use Hyperf\Contract\OnCloseInterface; use Hyperf\Contract\OnMessageInterface; use Hyperf\Contract\OnOpenInterface; @@ -49,8 +49,8 @@ class WebSocketController implements OnMessageInterface, OnOpenInterface, OnClos * 消息事件绑定 */ const EVENTS = [ - SocketConstants::EVENT_TALK => 'onTalk', - SocketConstants::EVENT_KEYBOARD => 'onKeyboard', + TalkMessageEvent::EVENT_TALK => 'onTalk', + TalkMessageEvent::EVENT_KEYBOARD => 'onKeyboard', ]; /** @@ -85,7 +85,7 @@ class WebSocketController implements OnMessageInterface, OnOpenInterface, OnClos if (!$isOnline) { MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_ONLINE_STATUS, [ + MessageProducer::create(TalkMessageEvent::EVENT_ONLINE_STATUS, [ 'user_id' => $user_id, 'status' => 1, ]) @@ -134,7 +134,7 @@ class WebSocketController implements OnMessageInterface, OnOpenInterface, OnClos $isOnline = $this->socketClientService->isOnlineAll($user_id); if (!$isOnline) { MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_ONLINE_STATUS, [ + MessageProducer::create(TalkMessageEvent::EVENT_ONLINE_STATUS, [ 'user_id' => $user_id, 'status' => 0, ]) diff --git a/app/Service/EmoticonService.php b/app/Service/EmoticonService.php index be9354b..944a1d6 100644 --- a/app/Service/EmoticonService.php +++ b/app/Service/EmoticonService.php @@ -2,8 +2,8 @@ namespace App\Service; -use App\Constants\TalkMsgType; -use App\Constants\TalkType; +use App\Constants\TalkMessageType; +use App\Constants\TalkMode; use App\Model\Chat\TalkRecords; use App\Model\Chat\TalkRecordsFile; use App\Model\EmoticonItem; @@ -95,13 +95,13 @@ class EmoticonService extends BaseService { $result = TalkRecords::where([ ['id', '=', $record_id], - ['msg_type', '=', TalkMsgType::FILE_MESSAGE], + ['msg_type', '=', TalkMessageType::FILE_MESSAGE], ['is_revoke', '=', 0], ])->first(['id', 'talk_type', 'receiver_id', 'msg_type', 'user_id', 'is_revoke']); if (!$result) return [false, []]; - if ($result->talk_type == TalkType::PRIVATE_CHAT) { + if ($result->talk_type == TalkMode::PRIVATE_CHAT) { if ($result->user_id != $user_id && $result->receiver_id != $user_id) { return [false, []]; } diff --git a/app/Service/GroupService.php b/app/Service/GroupService.php index 5062fc3..5493700 100644 --- a/app/Service/GroupService.php +++ b/app/Service/GroupService.php @@ -4,8 +4,8 @@ declare(strict_types=1); namespace App\Service; use App\Cache\LastMessage; -use App\Constants\TalkMsgType; -use App\Constants\TalkType; +use App\Constants\TalkMessageType; +use App\Constants\TalkMode; use App\Model\Chat\TalkRecords; use App\Model\Chat\TalkRecordsInvite; use App\Model\Group\Group; @@ -46,7 +46,7 @@ class GroupService extends BaseService $list = []; if ($items) { $list = TalkList::query()->where('user_id', $user_id) - ->where('talk_type', TalkType::GROUP_CHAT) + ->where('talk_type', TalkMode::GROUP_CHAT) ->whereIn('receiver_id', array_column($items, 'id')) ->get(['receiver_id', 'is_disturb'])->keyBy('receiver_id')->toArray(); } @@ -96,7 +96,7 @@ class GroupService extends BaseService ]; $chatList[] = [ - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'user_id' => $friend_id, 'receiver_id' => $insRes->id, 'created_at' => date('Y-m-d H:i:s'), @@ -113,10 +113,10 @@ class GroupService extends BaseService } $result = TalkRecords::create([ - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'user_id' => 0, 'receiver_id' => $insRes->id, - 'msg_type' => TalkMsgType::GROUP_INVITE_MESSAGE, + 'msg_type' => TalkMessageType::GROUP_INVITE_MESSAGE, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s') ]); @@ -134,7 +134,7 @@ class GroupService extends BaseService return [false, 0]; } - LastMessage::getInstance()->save(TalkType::GROUP_CHAT, $user_id, $insRes->id, [ + LastMessage::getInstance()->save(TalkMode::GROUP_CHAT, $user_id, $insRes->id, [ 'text' => '[入群通知]', 'created_at' => date('Y-m-d H:i:s') ]); @@ -193,7 +193,7 @@ class GroupService extends BaseService $updateArr = $insertArr = $updateArr1 = $insertArr1 = []; $members = GroupMember::where('group_id', $group_id)->whereIn('user_id', $friend_ids)->get(['id', 'user_id', 'is_quit'])->keyBy('user_id')->toArray(); - $chatArr = TalkList::where('talk_type', TalkType::GROUP_CHAT) + $chatArr = TalkList::where('talk_type', TalkMode::GROUP_CHAT) ->where('receiver_id', $group_id) ->whereIn('user_id', $friend_ids) ->get(['id', 'user_id', 'is_delete']) @@ -212,7 +212,7 @@ class GroupService extends BaseService if (!isset($chatArr[$uid])) { $insertArr1[] = [ - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'user_id' => $uid, 'receiver_id' => $group_id, 'created_at' => date('Y-m-d H:i:s'), @@ -251,10 +251,10 @@ class GroupService extends BaseService } $result = TalkRecords::create([ - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'user_id' => 0, 'receiver_id' => $group_id, - 'msg_type' => TalkMsgType::GROUP_INVITE_MESSAGE, + 'msg_type' => TalkMessageType::GROUP_INVITE_MESSAGE, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s') ]); @@ -272,7 +272,7 @@ class GroupService extends BaseService return [false, 0]; } - LastMessage::getInstance()->save(TalkType::GROUP_CHAT, $user_id, $group_id, [ + LastMessage::getInstance()->save(TalkMode::GROUP_CHAT, $user_id, $group_id, [ 'text' => '[入群通知]', 'created_at' => date('Y-m-d H:i:s') ]); @@ -306,10 +306,10 @@ class GroupService extends BaseService } $result = TalkRecords::create([ - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'user_id' => 0, 'receiver_id' => $group_id, - 'msg_type' => TalkMsgType::GROUP_INVITE_MESSAGE, + 'msg_type' => TalkMessageType::GROUP_INVITE_MESSAGE, 'content' => $user_id, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s') @@ -325,7 +325,7 @@ class GroupService extends BaseService ]); TalkList::where([ - ['talk_type', '=', TalkType::GROUP_CHAT], + ['talk_type', '=', TalkMode::GROUP_CHAT], ['user_id', '=', $user_id], ['receiver_id', '=', $group_id], ])->update([ @@ -367,10 +367,10 @@ class GroupService extends BaseService } $result = TalkRecords::create([ - 'talk_type' => TalkType::GROUP_CHAT, + 'talk_type' => TalkMode::GROUP_CHAT, 'user_id' => 0, 'receiver_id' => $group_id, - 'msg_type' => TalkMsgType::GROUP_INVITE_MESSAGE, + 'msg_type' => TalkMessageType::GROUP_INVITE_MESSAGE, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'), ]); @@ -382,7 +382,7 @@ class GroupService extends BaseService 'user_ids' => implode(',', $member_ids) ]); - TalkList::whereIn('user_id', $member_ids)->where('receiver_id', $group_id)->where('talk_type', TalkType::GROUP_CHAT)->update([ + TalkList::whereIn('user_id', $member_ids)->where('receiver_id', $group_id)->where('talk_type', TalkMode::GROUP_CHAT)->update([ 'is_delete' => 1, 'updated_at' => date('Y-m-d H:i:s') ]); diff --git a/app/Service/Message/ReceiveHandleService.php b/app/Service/Message/ReceiveHandleService.php index cdc1955..ee564dc 100644 --- a/app/Service/Message/ReceiveHandleService.php +++ b/app/Service/Message/ReceiveHandleService.php @@ -4,9 +4,9 @@ namespace App\Service\Message; use App\Cache\LastMessage; use App\Cache\UnreadTalk; -use App\Constants\SocketConstants; -use App\Constants\TalkMsgType; -use App\Constants\TalkType; +use App\Constants\TalkMessageEvent; +use App\Constants\TalkMessageType; +use App\Constants\TalkMode; use App\Model\Chat\TalkRecords; use App\Model\Group\Group; use App\Model\UsersFriend; @@ -44,17 +44,17 @@ class ReceiveHandleService } // 验证消息类型 私聊|群聊 - if (!in_array($data['talk_type'], TalkType::getTypes())) { + if (!in_array($data['talk_type'], TalkMode::getTypes())) { return; } // 验证发送消息用户与接受消息用户之间是否存在好友或群聊关系(后期走缓存) - if ($data['talk_type'] == TalkType::PRIVATE_CHAT) { + if ($data['talk_type'] == TalkMode::PRIVATE_CHAT) { // 判断发送者和接受者是否是好友关系 if (!UsersFriend::isFriend((int)$data['sender_id'], (int)$data['receiver_id'], true)) { return; } - } else if ($data['talk_type'] == TalkType::GROUP_CHAT) { + } else if ($data['talk_type'] == TalkMode::GROUP_CHAT) { // 判断是否属于群成员 if (!Group::isMember((int)$data['receiver_id'], (int)$data['sender_id'])) { return; @@ -65,7 +65,7 @@ class ReceiveHandleService 'talk_type' => $data['talk_type'], 'user_id' => $data['sender_id'], 'receiver_id' => $data['receiver_id'], - 'msg_type' => TalkMsgType::TEXT_MESSAGE, + 'msg_type' => TalkMessageType::TEXT_MESSAGE, 'content' => htmlspecialchars($data['text_message']), 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'), @@ -74,7 +74,7 @@ class ReceiveHandleService if (!$result) return; // 判断是否私聊 - if ($result->talk_type == TalkType::PRIVATE_CHAT) { + if ($result->talk_type == TalkMode::PRIVATE_CHAT) { // 设置好友消息未读数 UnreadTalk::getInstance()->increment($result->user_id, $result->receiver_id); } @@ -86,7 +86,7 @@ class ReceiveHandleService ]); MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_TALK, [ + MessageProducer::create(TalkMessageEvent::EVENT_TALK, [ 'sender_id' => $result->user_id, 'receiver_id' => $result->receiver_id, 'talk_type' => $result->talk_type, @@ -106,7 +106,7 @@ class ReceiveHandleService public function onKeyboard($server, Frame $frame, $data) { MessageProducer::publish( - MessageProducer::create(SocketConstants::EVENT_KEYBOARD, [ + MessageProducer::create(TalkMessageEvent::EVENT_KEYBOARD, [ 'sender_id' => intval($data['sender_id']), 'receiver_id' => intval($data['receiver_id']), ]) diff --git a/app/Service/Message/SubscribeHandleService.php b/app/Service/Message/SubscribeHandleService.php index 07073da..cc05616 100644 --- a/app/Service/Message/SubscribeHandleService.php +++ b/app/Service/Message/SubscribeHandleService.php @@ -3,9 +3,9 @@ namespace App\Service\Message; use App\Cache\SocketRoom; -use App\Constants\SocketConstants; -use App\Constants\TalkMsgType; -use App\Constants\TalkType; +use App\Constants\TalkMessageEvent; +use App\Constants\TalkMessageType; +use App\Constants\TalkMode; use App\Model\Chat\TalkRecords; use App\Model\Chat\TalkRecordsCode; use App\Model\Chat\TalkRecordsFile; @@ -27,19 +27,19 @@ class SubscribeHandleService */ const EVENTS = [ // 聊天消息事件 - SocketConstants::EVENT_TALK => 'onConsumeTalk', + TalkMessageEvent::EVENT_TALK => 'onConsumeTalk', // 键盘输入事件 - SocketConstants::EVENT_KEYBOARD => 'onConsumeKeyboard', + TalkMessageEvent::EVENT_KEYBOARD => 'onConsumeKeyboard', // 用户在线状态事件 - SocketConstants::EVENT_ONLINE_STATUS => 'onConsumeOnlineStatus', + TalkMessageEvent::EVENT_ONLINE_STATUS => 'onConsumeOnlineStatus', // 聊天消息推送事件 - SocketConstants::EVENT_REVOKE_TALK => 'onConsumeRevokeTalk', + TalkMessageEvent::EVENT_REVOKE_TALK => 'onConsumeRevokeTalk', // 好友申请相关事件 - SocketConstants::EVENT_FRIEND_APPLY => 'onConsumeFriendApply' + TalkMessageEvent::EVENT_FRIEND_APPLY => 'onConsumeFriendApply' ]; /** @@ -68,12 +68,12 @@ class SubscribeHandleService $fds = []; $groupInfo = null; - if ($talk_type == TalkType::PRIVATE_CHAT) { + if ($talk_type == TalkMode::PRIVATE_CHAT) { $fds = array_merge( $this->clientService->findUserFds($sender_id), $this->clientService->findUserFds($receiver_id) ); - } else if ($talk_type == TalkType::GROUP_CHAT) { + } else if ($talk_type == TalkMode::GROUP_CHAT) { foreach (SocketRoom::getInstance()->getRoomMembers(strval($receiver_id)) as $uid) { $fds = array_merge($fds, $this->clientService->findUserFds(intval($uid))); } @@ -106,7 +106,7 @@ class SubscribeHandleService $file = $code_block = $forward = $invite = []; switch ($result->msg_type) { - case TalkMsgType::FILE_MESSAGE: + case TalkMessageType::FILE_MESSAGE: $file = TalkRecordsFile::where('record_id', $result->id)->first([ 'id', 'record_id', 'user_id', 'file_source', 'file_type', 'save_type', 'original_name', 'file_suffix', 'file_size', 'save_dir' @@ -116,7 +116,7 @@ class SubscribeHandleService $file && $file['file_url'] = get_media_url($file['save_dir']); break; - case TalkMsgType::FORWARD_MESSAGE: + case TalkMessageType::FORWARD_MESSAGE: $forward = ['num' => 0, 'list' => []]; $forwardInfo = TalkRecordsForward::where('record_id', $result->id)->first(['records_id', 'text']); if ($forwardInfo) { @@ -127,12 +127,12 @@ class SubscribeHandleService } break; - case TalkMsgType::CODE_MESSAGE: + case TalkMessageType::CODE_MESSAGE: $code_block = TalkRecordsCode::where('record_id', $result->id)->first(['record_id', 'code_lang', 'code']); $code_block = $code_block ? $code_block->toArray() : []; break; - case TalkMsgType::GROUP_INVITE_MESSAGE: + case TalkMessageType::GROUP_INVITE_MESSAGE: $notifyInfo = TalkRecordsInvite::where('record_id', $result->id)->first([ 'record_id', 'type', 'operate_user_id', 'user_ids' ]); @@ -171,7 +171,7 @@ class SubscribeHandleService ]) ]; - $this->socketPushNotify($fds, json_encode([SocketConstants::EVENT_TALK, $notify])); + $this->socketPushNotify($fds, json_encode([TalkMessageEvent::EVENT_TALK, $notify])); return true; } @@ -186,7 +186,7 @@ class SubscribeHandleService { $fds = $this->clientService->findUserFds($data['data']['receiver_id']); - $this->socketPushNotify($fds, json_encode([SocketConstants::EVENT_KEYBOARD, $data['data']])); + $this->socketPushNotify($fds, json_encode([TalkMessageEvent::EVENT_KEYBOARD, $data['data']])); return true; } @@ -210,7 +210,7 @@ class SubscribeHandleService } $this->socketPushNotify(array_unique($fds), json_encode([ - SocketConstants::EVENT_ONLINE_STATUS, [ + TalkMessageEvent::EVENT_ONLINE_STATUS, [ 'user_id' => $user_id, 'status' => $status ] @@ -230,10 +230,10 @@ class SubscribeHandleService $record = TalkRecords::where('id', $data['data']['record_id'])->first(['id', 'talk_type', 'user_id', 'receiver_id']); $fds = []; - if ($record->talk_type == TalkType::PRIVATE_CHAT) { + if ($record->talk_type == TalkMode::PRIVATE_CHAT) { $fds = array_merge($fds, $this->clientService->findUserFds($record->user_id)); $fds = array_merge($fds, $this->clientService->findUserFds($record->receiver_id)); - } else if ($record->talk_type == TalkType::GROUP_CHAT) { + } else if ($record->talk_type == TalkMode::GROUP_CHAT) { $userIds = SocketRoom::getInstance()->getRoomMembers(strval($record->receiver_id)); foreach ($userIds as $uid) { $fds = array_merge($fds, $this->clientService->findUserFds((int)$uid)); @@ -241,7 +241,7 @@ class SubscribeHandleService } $fds = array_unique($fds); - $this->socketPushNotify($fds, json_encode([SocketConstants::EVENT_REVOKE_TALK, [ + $this->socketPushNotify($fds, json_encode([TalkMessageEvent::EVENT_REVOKE_TALK, [ 'talk_type' => $record->talk_type, 'sender_id' => $record->user_id, 'receiver_id' => $record->receiver_id, @@ -290,7 +290,7 @@ class SubscribeHandleService 'mobile' => $friendInfo->mobile, ]; - $this->socketPushNotify(array_unique($fds), json_encode([SocketConstants::EVENT_FRIEND_APPLY, $msg])); + $this->socketPushNotify(array_unique($fds), json_encode([TalkMessageEvent::EVENT_FRIEND_APPLY, $msg])); return true; } diff --git a/app/Service/TalkService.php b/app/Service/TalkService.php index 1778ec2..6803e52 100644 --- a/app/Service/TalkService.php +++ b/app/Service/TalkService.php @@ -3,9 +3,9 @@ namespace App\Service; use App\Cache\ServerRunID; -use App\Constants\FileMediaType; -use App\Constants\TalkMsgType; -use App\Constants\TalkType; +use App\Constants\MediaFileType; +use App\Constants\TalkMessageType; +use App\Constants\TalkMode; use Exception; use App\Model\User; use App\Model\TalkList; @@ -42,10 +42,10 @@ class TalkService extends BaseService $rows = TalkList::from('talk_list as list') ->leftJoin('users', function ($join) { - $join->on('users.id', '=', 'list.receiver_id')->where('list.talk_type', '=', TalkType::PRIVATE_CHAT); + $join->on('users.id', '=', 'list.receiver_id')->where('list.talk_type', '=', TalkMode::PRIVATE_CHAT); }) ->leftJoin('group', function ($join) { - $join->on('group.id', '=', 'list.receiver_id')->where('list.talk_type', '=', TalkType::GROUP_CHAT); + $join->on('group.id', '=', 'list.receiver_id')->where('list.talk_type', '=', TalkMode::GROUP_CHAT); }) ->where('list.user_id', $user_id) ->where('list.is_delete', 0) @@ -72,7 +72,7 @@ class TalkService extends BaseService $data['msg_text'] = '......'; $data['updated_at'] = $item['updated_at'] ?: '2020-01-01 00:00:00'; - if ($item['talk_type'] == TalkType::PRIVATE_CHAT) { + if ($item['talk_type'] == TalkMode::PRIVATE_CHAT) { $data['name'] = $item['nickname']; $data['avatar'] = $item['user_avatar']; $data['unread_num'] = UnreadTalk::getInstance()->read($item['receiver_id'], $user_id); @@ -103,7 +103,7 @@ class TalkService extends BaseService { foreach ($data as $friend_id => $num) { TalkList::updateOrCreate([ - 'talk_type' => TalkType::PRIVATE_CHAT, + 'talk_type' => TalkMode::PRIVATE_CHAT, 'user_id' => $user_id, 'receiver_id' => $friend_id, ], [ @@ -127,16 +127,16 @@ class TalkService extends BaseService $files = $codes = $forwards = $invites = []; foreach ($rows as $value) { switch ($value['msg_type']) { - case TalkMsgType::FILE_MESSAGE: + case TalkMessageType::FILE_MESSAGE: $files[] = $value['id']; break; - case TalkMsgType::GROUP_INVITE_MESSAGE: + case TalkMessageType::GROUP_INVITE_MESSAGE: $invites[] = $value['id']; break; - case TalkMsgType::FORWARD_MESSAGE: + case TalkMessageType::FORWARD_MESSAGE: $forwards[] = $value['id']; break; - case TalkMsgType::CODE_MESSAGE: + case TalkMessageType::CODE_MESSAGE: $codes[] = $value['id']; break; } @@ -169,14 +169,14 @@ class TalkService extends BaseService $rows[$k]['invite'] = []; switch ($row['msg_type']) { - case TalkMsgType::FILE_MESSAGE:// 文件消息 + case TalkMessageType::FILE_MESSAGE:// 文件消息 $rows[$k]['file'] = $files[$row['id']] ?? []; if ($rows[$k]['file']) { $rows[$k]['file']['file_url'] = get_media_url($rows[$k]['file']['save_dir']); } break; - case TalkMsgType::FORWARD_MESSAGE:// 会话记录消息 + case TalkMessageType::FORWARD_MESSAGE:// 会话记录消息 if (isset($forwards[$row['id']])) { $rows[$k]['forward'] = [ 'num' => substr_count($forwards[$row['id']]['records_id'], ',') + 1, @@ -185,7 +185,7 @@ class TalkService extends BaseService } break; - case TalkMsgType::CODE_MESSAGE:// 代码块消息 + case TalkMessageType::CODE_MESSAGE:// 代码块消息 $rows[$k]['code_block'] = $codes[$row['id']] ?? []; if ($rows[$k]['code_block']) { $rows[$k]['code_block']['code'] = htmlspecialchars_decode($rows[$k]['code_block']['code']); @@ -193,7 +193,7 @@ class TalkService extends BaseService } break; - case TalkMsgType::GROUP_INVITE_MESSAGE:// 入群消息/退群消息 + case TalkMessageType::GROUP_INVITE_MESSAGE:// 入群消息/退群消息 if (isset($invites[$row['id']])) { $rows[$k]['invite'] = [ 'type' => $invites[$row['id']]['type'], @@ -251,7 +251,7 @@ class TalkService extends BaseService $rowsSqlObj->where('talk_records.id', '<', $record_id); } - if ($talk_type == TalkType::PRIVATE_CHAT) { + if ($talk_type == TalkMode::PRIVATE_CHAT) { $rowsSqlObj->where(function ($query) use ($user_id, $receiver_id) { $query->where([ ['talk_records.user_id', '=', $user_id], @@ -297,9 +297,9 @@ class TalkService extends BaseService ]); // 判断是否有权限查看 - if ($result->talk_type == TalkType::PRIVATE_CHAT && ($result->user_id != $user_id && $result->receiver_id != $user_id)) { + if ($result->talk_type == TalkMode::PRIVATE_CHAT && ($result->user_id != $user_id && $result->receiver_id != $user_id)) { return []; - } else if ($result->talk_type == TalkType::GROUP_CHAT && !Group::isMember($result->receiver_id, $user_id)) { + } else if ($result->talk_type == TalkMode::GROUP_CHAT && !Group::isMember($result->receiver_id, $user_id)) { return []; } @@ -336,13 +336,13 @@ class TalkService extends BaseService */ public function removeRecords(int $user_id, int $talk_type, int $receiver_id, array $record_ids) { - if ($talk_type == TalkType::PRIVATE_CHAT) {// 私聊信息 + if ($talk_type == TalkMode::PRIVATE_CHAT) {// 私聊信息 $ids = TalkRecords::whereIn('id', $record_ids)->where(function ($query) use ($user_id, $receiver_id) { $query->where([['user_id', '=', $user_id], ['receiver_id', '=', $receiver_id]]) ->orWhere([['user_id', '=', $receiver_id], ['receiver_id', '=', $user_id]]); })->where('talk_type', $talk_type)->pluck('id'); } else {// 群聊信息 - $ids = TalkRecords::whereIn('id', $record_ids)->where('talk_type', TalkType::GROUP_CHAT)->pluck('id'); + $ids = TalkRecords::whereIn('id', $record_ids)->where('talk_type', TalkMode::GROUP_CHAT)->pluck('id'); } // 判断要删除的消息在数据库中是否存在 @@ -351,7 +351,7 @@ class TalkService extends BaseService } // 判读是否属于群消息并且判断是否是群成员 - if ($talk_type == TalkType::GROUP_CHAT && !Group::isMember($receiver_id, $user_id)) { + if ($talk_type == TalkMode::GROUP_CHAT && !Group::isMember($receiver_id, $user_id)) { return false; } @@ -383,11 +383,11 @@ class TalkService extends BaseService return [false, '已超过有效的撤回时间', []]; } - if ($result->talk_type == TalkType::PRIVATE_CHAT) { + if ($result->talk_type == TalkMode::PRIVATE_CHAT) { if ($result->user_id != $user_id && $result->receiver_id != $user_id) { return [false, '非法操作', []]; } - } else if ($result->talk_type == TalkType::GROUP_CHAT) { + } else if ($result->talk_type == TalkMode::GROUP_CHAT) { if (!Group::isMember($result->receiver_id, $user_id)) { return [false, '非法操作', []]; } @@ -410,29 +410,29 @@ class TalkService extends BaseService public function forwardRecords(int $user_id, int $record_id, array $receiver_ids) { $msgTypeArray = [ - TalkMsgType::TEXT_MESSAGE, - TalkMsgType::FILE_MESSAGE, - TalkMsgType::CODE_MESSAGE + TalkMessageType::TEXT_MESSAGE, + TalkMessageType::FILE_MESSAGE, + TalkMessageType::CODE_MESSAGE ]; $result = TalkRecords::where('id', $record_id)->whereIn('msg_type', $msgTypeArray)->first(); if (!$result) return []; // 根据消息类型判断用户是否有转发权限 - if ($result->talk_type == TalkType::PRIVATE_CHAT) { + if ($result->talk_type == TalkMode::PRIVATE_CHAT) { if ($result->user_id != $user_id && $result->receiver_id != $user_id) { return []; } - } else if ($result->talk_type == TalkType::GROUP_CHAT) { + } else if ($result->talk_type == TalkMode::GROUP_CHAT) { if (!Group::isMember($result->receiver_id, $user_id)) { return []; } } $fileInfo = $codeBlock = null; - if ($result->msg_type == TalkMsgType::FILE_MESSAGE) { + if ($result->msg_type == TalkMessageType::FILE_MESSAGE) { $fileInfo = TalkRecordsFile::where('record_id', $record_id)->first(); - } else if ($result->msg_type == TalkMsgType::CODE_MESSAGE) { + } else if ($result->msg_type == TalkMessageType::CODE_MESSAGE) { $codeBlock = TalkRecordsCode::where('record_id', $record_id)->first(); } @@ -460,7 +460,7 @@ class TalkService extends BaseService 'talk_type' => $res->talk_type ]; - if ($result->msg_type == TalkMsgType::FILE_MESSAGE) { + if ($result->msg_type == TalkMessageType::FILE_MESSAGE) { if (!TalkRecordsFile::create([ 'record_id' => $res->id, 'user_id' => $fileInfo->user_id, @@ -475,7 +475,7 @@ class TalkService extends BaseService ])) { throw new Exception('插入文件消息记录失败'); } - } else if ($result->msg_type == TalkMsgType::CODE_MESSAGE) { + } else if ($result->msg_type == TalkMessageType::CODE_MESSAGE) { if (!TalkRecordsCode::create([ 'record_id' => $res->id, 'user_id' => $user_id, @@ -511,14 +511,14 @@ class TalkService extends BaseService { // 支持转发的消息类型 $msg_type = [ - TalkMsgType::TEXT_MESSAGE, - TalkMsgType::FILE_MESSAGE, - TalkMsgType::CODE_MESSAGE + TalkMessageType::TEXT_MESSAGE, + TalkMessageType::FILE_MESSAGE, + TalkMessageType::CODE_MESSAGE ]; $sqlObj = TalkRecords::whereIn('id', $records_ids); - if ($talk_type == TalkType::PRIVATE_CHAT) { + if ($talk_type == TalkMode::PRIVATE_CHAT) { if (!UsersFriend::isFriend($user_id, $receiver_id)) return []; $sqlObj = $sqlObj->where(function ($query) use ($user_id, $receiver_id) { @@ -533,7 +533,7 @@ class TalkService extends BaseService } else { if (!Group::isMember($receiver_id, $user_id)) return []; - $sqlObj = $sqlObj->where('receiver_id', $receiver_id)->whereIn('msg_type', $msg_type)->where('talk_type', TalkType::GROUP_CHAT)->where('is_revoke', 0); + $sqlObj = $sqlObj->where('receiver_id', $receiver_id)->whereIn('msg_type', $msg_type)->where('talk_type', TalkMode::GROUP_CHAT)->where('is_revoke', 0); } $result = $sqlObj->get(); @@ -550,19 +550,19 @@ class TalkService extends BaseService $jsonText = []; foreach ($rows as $row) { switch ($row->msg_type) { - case TalkMsgType::TEXT_MESSAGE: + case TalkMessageType::TEXT_MESSAGE: $jsonText[] = [ 'nickname' => $row->nickname, 'text' => mb_substr(str_replace(PHP_EOL, "", $row->content), 0, 30) ]; break; - case TalkMsgType::FILE_MESSAGE: + case TalkMessageType::FILE_MESSAGE: $jsonText[] = [ 'nickname' => $row->nickname, 'text' => '【文件消息】' ]; break; - case TalkMsgType::CODE_MESSAGE: + case TalkMessageType::CODE_MESSAGE: $jsonText[] = [ 'nickname' => $row->nickname, 'text' => '【代码消息】' @@ -579,7 +579,7 @@ class TalkService extends BaseService 'talk_type' => $item['talk_type'], 'user_id' => $user_id, 'receiver_id' => $item['id'], - 'msg_type' => TalkMsgType::FORWARD_MESSAGE, + 'msg_type' => TalkMessageType::FORWARD_MESSAGE, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'), ]); @@ -692,7 +692,7 @@ class TalkService extends BaseService } $fileInfo['record_id'] = $insert->id; - $fileInfo['file_type'] = FileMediaType::getMediaType($fileInfo['file_suffix']); + $fileInfo['file_type'] = MediaFileType::getMediaType($fileInfo['file_suffix']); $fileInfo['created_at'] = date('Y-m-d H:i:s'); if (!TalkRecordsFile::create($fileInfo)) { @@ -790,7 +790,7 @@ class TalkService extends BaseService } $emoticon['record_id'] = $insert->id; - $emoticon['file_type'] = FileMediaType::getMediaType($emoticon['file_suffix']); + $emoticon['file_type'] = MediaFileType::getMediaType($emoticon['file_suffix']); $emoticon['created_at'] = date('Y-m-d H:i:s'); if (!TalkRecordsFile::create($emoticon)) { throw new Exception('插入聊天记录(代码消息)失败...'); diff --git a/app/Support/UserRelation.php b/app/Support/UserRelation.php index 087bb16..799a594 100644 --- a/app/Support/UserRelation.php +++ b/app/Support/UserRelation.php @@ -2,7 +2,7 @@ namespace App\Support; -use App\Constants\TalkType; +use App\Constants\TalkMode; use App\Model\Group\Group; use App\Model\UsersFriend; @@ -18,9 +18,9 @@ class UserRelation */ public static function isFriendOrGroupMember(int $user_id, int $receiver_id, int $talk_type) { - if ($talk_type == TalkType::PRIVATE_CHAT) { + if ($talk_type == TalkMode::PRIVATE_CHAT) { return UsersFriend::isFriend($user_id, $receiver_id, true); - } else if ($talk_type == TalkType::GROUP_CHAT) { + } else if ($talk_type == TalkMode::GROUP_CHAT) { return Group::isMember($receiver_id, $user_id); }