<?php

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

Router::addRoute(['GET', 'POST'], '/verifyCode', 'App\Controller\IndexController@verifyCode');
Router::addRoute(['GET', 'POST'], '/getverifyCode', 'App\Controller\IndexController@getverifyCode');
Router::addGroup(
    '/public', function () {
        Router::get('/getDistrictList', [PublicController::class, 'getDistrictList']);
        Router::get('/getUserLevelList', [PublicController::class, 'getUserLevelList']);
//        Router::post('/uploadFile', [PublicController::class, 'uploadFile']);
        Router::post('/addUserLevel', [PublicController::class, 'addUserLevel']);
        Router::post('/delUserLevel', [PublicController::class, 'delUserLevel']);
        Router::post('/updateUserLevel', [PublicController::class, 'updateUserLevel']);
        Router::get('/getCityList', [PublicController::class, 'getCityList']);
        //添加投诉举报
        Router::post('/addComplaint', [PublicController::class, 'addComplaint']);

        //修改投诉举报
        Router::addRoute(['GET', 'POST'], '/upComplaint', [PublicController::class, 'upComplaint']);
        //投诉举报列表
        Router::addRoute(['GET', 'POST'], '/getComplaint', [PublicController::class, 'getComplaint']);
        //查看投诉举报信息
        Router::addRoute(['GET', 'POST'], '/getLetterOfComplaintInfo', [PublicController::class, 'getLetterOfComplaintInfo']);
        //删除投诉举报信息

        Router::post('/delLetterOfComplaint', [PublicController::class, 'delLetterOfComplaint']);

        //下载文件
        Router::addRoute(['GET', 'POST'], '/downloadFile', [PublicController::class, 'downloadFile']);
        //检测是否已经被审核
        Router::addRoute(['GET', 'POST'], '/checkMeasure', [PublicController::class, 'checkMeasure']);
        //获取职能部门
        Router::get('/getDepartment', [PublicController::class, 'getDepartment']);


        Router::post('/getZhinengbumenList', [PublicController::class, 'getZhinengbumenList']);
        Router::post('/addZhinengbumen', [PublicController::class, 'addZhinengbumen']);
        Router::post('/delZhinengbumen', [PublicController::class, 'delZhinengbumen']);
        Router::post('/getZhinengbumen', [PublicController::class, 'getZhinengbumen']);
        Router::post('/modZhinengbumen', [PublicController::class, 'modZhinengbumen']);
        Router::post('/getPidZhinengbumen', [PublicController::class, 'getPidZhinengbumen']);

        //获取风格名称
        Router::post('/getTemplateClass', [PublicController::class, 'getTemplateClass']);
        //获取风格列表
        Router::post('/getTemplateList', [PublicController::class, 'getTemplateList']);
        Router::post('/addTemplate', [PublicController::class, 'addTemplate']);
        Router::post('/getTemplateInfo', [PublicController::class, 'getTemplateInfo']);
        Router::post('/delTemplate', [PublicController::class, 'delTemplate']);
        Router::post('/updateTemplate', [PublicController::class, 'updateTemplate']);
        //获取板块
        Router::post('/addSector', [PublicController::class, 'addSector']);
        Router::post('/getSectorList', [PublicController::class, 'getSectorList']);
        Router::post('/delSector', [PublicController::class, 'delSector']);
        Router::post('/updateSector', [PublicController::class, 'updateSector']);
        Router::post('/getSectorInfo', [PublicController::class, 'getSectorInfo']);
        //获取组件
        Router::post('/addComponent', [PublicController::class, 'addComponent']);
        Router::post('/getComponentList', [PublicController::class, 'getComponentList']);
        Router::post('/delComponent', [PublicController::class, 'delComponent']);
        Router::post('/updateComponent', [PublicController::class, 'updateComponent']);
        Router::post('/getComponentInfo', [PublicController::class, 'getComponentInfo']);
        //获取搭建列表
        Router::post('/getWebsiteTemplateList', [PublicController::class, 'getWebsiteTemplateList']);
        Router::post('/getWebsiteTemplateInfo', [PublicController::class, 'getWebsiteTemplateInfo']);
    },
    ['middleware' => [FooMiddleware::class]]
);


Router::addGroup(
    '/public', function () {
        //获取所有的职能部门
        Router::get('/getAllDepartment', [PublicController::class, 'getAllDepartment']);
        //获取类型
        Router::get('/getLetterType', [PublicController::class, 'getLetterType']);
        //获取子类型
        Router::get('/getLetterTypeChildren', [PublicController::class, 'getLetterTypeChildren']);

        Router::post('/buckets', [MinioController::class, 'listBuckets']);

        Router::post('/uploadFile', [MinioController::class, 'uploadFiles']);
    }
);