<?php

declare (strict_types = 1);
use App\Controller\ChatController;
use App\Middleware\Auth\FooMiddleware;
use Hyperf\HttpServer\Router\Router;

Router::addGroup(
    '/chat', function () {
        Router::post('/addFriend', [ChatController::class, 'addFriend']);
        Router::post('/getFriendsList', [ChatController::class, 'getFriendsList']);
        Router::post('/getFriendsApplyList', [ChatController::class, 'getFriendsApplyList']);
        Router::post('/applyFriend', [ChatController::class, 'applyFriend']);
        Router::post('/delFriend', [ChatController::class, 'delFriend']);
        Router::post('/isFriend', [ChatController::class, 'isFriend']);
        Router::post('/updateFriend', [ChatController::class, 'updateFriend']);
        Router::post('/searchFriend', [ChatController::class, 'searchFriend']);
        Router::post('/getFriendInfo', [ChatController::class, 'getFriendInfo']);

        Router::post('/getConversation', [ChatController::class, 'getConversation']);
        Router::post('/getChatRecords', [ChatController::class, 'getChatRecords']);
        Router::post('/getGroupChatRecords', [ChatController::class, 'getGroupChatRecords']);

        Router::post('/delRecords', [ChatController::class, 'delRecords']);
        Router::post('/clearRecords', [ChatController::class, 'clearRecords']);
        Router::post('/clearGroupRecords', [ChatController::class, 'clearGroupRecords']);
        Router::post('/recallRecord', [ChatController::class, 'recallRecord']);
        Router::post('/getRecord', [ChatController::class, 'getRecord']);

        Router::post('/getGroupMembers', [ChatController::class, 'getGroupMembers']);
        Router::post('/getGroupInfo', [ChatController::class, 'getGroupInfo']);
        Router::post('/getGroupList', [ChatController::class, 'getGroupList']);
        Router::post('/addGroup', [ChatController::class, 'addGroup']); //创建群
        Router::post('/delGroup', [ChatController::class, 'delGroup']);
        Router::post('/updateGroup', [ChatController::class, 'updateGroup']);
        Router::post('/quitGroup', [ChatController::class, 'quitGroup']);
        Router::post('/joinGroup', [ChatController::class, 'joinGroup']);
        Router::post('/updateGroupMembers', [ChatController::class, 'updateGroupMembers']);

        Router::post('/getTopicsList', [ChatController::class, 'getTopicsList']);
        Router::post('/addTopic', [ChatController::class, 'addTopic']);
        Router::post('/updateTopic', [ChatController::class, 'updateTopic']);
        Router::post('/delTopic', [ChatController::class, 'delTopic']);
        Router::post('/applyTopic', [ChatController::class, 'applyTopic']);

        Router::post('/getTopicInfo', [ChatController::class, 'getTopicInfo']);
        Router::post('/addReply', [ChatController::class, 'addReply']);
        Router::post('/getReplyList', [ChatController::class, 'getReplyList']);
        Router::post('/getTopicReply', [ChatController::class, 'getTopicReply']);
        Router::post('/topicType', [ChatController::class, 'topicType']);
        Router::post('/topicStatus', [ChatController::class, 'topicStatus']);
        Router::post('/delReply', [ChatController::class, 'delReply']);
        Router::post('/delAllReply', [ChatController::class, 'delAllReply']);
        Router::post('/getTopicsListAdmin', [ChatController::class, 'getTopicsListAdmin']);

        Router::post('/uploadFile', [ChatController::class, 'uploadFile']);
    },
    ['middleware' => [FooMiddleware::class]]
);