api.php 11.8 KB
Newer Older
冯超鹏's avatar
冯超鹏 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
<?php

use Illuminate\Http\Request;
use \App\Laravue\Faker;
use \App\Laravue\JsonResponse;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/

Route::post('auth/login', 'AuthController@login');
冯超鹏's avatar
冯超鹏 committed
19
Route::post('auth/userslogin', 'AuthController@userslogin');//用户登入接口
冯超鹏's avatar
冯超鹏 committed
20 21 22 23 24 25 26 27 28 29 30
Route::group(['middleware' => 'auth:api'], function () {
    Route::get('auth/user', 'AuthController@user');
    Route::post('auth/logout', 'AuthController@logout');
    Route::apiResource('users', 'UserController')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE);
    Route::get('users/{user}/permissions', 'UserController@permissions')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::put('users/{user}/permissions', 'UserController@updatePermissions')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::apiResource('roles', 'RoleController')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::get('roles/{role}/permissions', 'RoleController@permissions')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::apiResource('permissions', 'PermissionController')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);

    Route::get('wxuser/wxlist', 'WxuserController@wxlist');//微信用户列表
冯超鹏's avatar
冯超鹏 committed
31
    Route::post('wxuser/seek','WxuserController@seek');//微信搜索
冯超鹏's avatar
冯超鹏 committed
32
    Route::get('user/HUserList', 'UserController@HUserList');//用户列表
冯超鹏's avatar
冯超鹏 committed
33 34
    Route::post('user/userSeek', 'UserController@userSeek');//用户搜索

冯超鹏's avatar
冯超鹏 committed
35
    Route::post('user/addUser', 'UserController@addUser')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//新增用户
冯超鹏's avatar
冯超鹏 committed
36 37 38
    Route::post('user/deleteuser','UserController@deleteuser')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//删除用户
    Route::match(['get','post'],'user/Upuser','UserController@Upuser')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//更新用户
    Route::match(['get','post'],'user/areachina','UserController@areachina')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//获取地址列表
39
    Route::post('user/addcontactsuser','UserController@addcontactsuser');//添加联系人
冯超鹏's avatar
冯超鹏 committed
40
    Route::get('user/contactslist','UserController@contactslist');//返回当前登入的联系人列表
冯超鹏's avatar
冯超鹏 committed
41 42 43 44
    Route::get('user/UpPaperBasket/{id}','UserController@UpPaperBasket');//更新废纸篓和禁用用户
    Route::get('user/UpuserForbidden/{id}','UserController@UpuserForbidden');//禁用此用户
    Route::get('user/paperBasket','UserController@paperBasket');//返回废纸篓数量
    Route::get('user/paperBasketList','UserController@paperBasketList');//返回废纸篓和用户状态
冯超鹏's avatar
冯超鹏 committed
45 46
    Route::get('user/userLocation','UserController@userLocation');//返回用户安装位置
    Route::get('user/textcountuser','UserController@textcountuser');//用户测试接口
冯超鹏's avatar
冯超鹏 committed
47 48
});

冯超鹏's avatar
冯超鹏 committed
49 50 51 52 53 54 55 56
//上传图片路由
Route::group(['middleware'=>'auth:api'],function (){
    Route::post('upload_img/uploadingimg','UploadimgController@uploadingimg')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//添加图片
    Route::get('userimglist/userimglist','UploadimgController@userlist');//图片列表
    Route::get('userimgdetele/userimgdetele','UploadimgController@userimgdetele');//删除图片
    Route::match(['get','post'],'updateimg/updateimg','UploadimgController@updateimg');//更新图片信息,返回逻辑图片列表

});
57 58 59 60 61 62

//swoole
Route::group(['middleware'=>'auth:api'],function (){
    Route::post('SwooleCommand/SwooleCommand','SwooleCommandController@index');
});

冯超鹏's avatar
冯超鹏 committed
63 64 65 66 67

//用户路由
Route::group(['middleware'=>'auth:api'],function (){
});

冯超鹏's avatar
冯超鹏 committed
68 69
//首页路由
Route::group(['middleware'=>'auth:api'],function (){
70 71 72 73 74 75 76
    Route::get('homepagecount/homepagecount','HomepageController@homepagecount');
    Route::get('homepagecount/devicemonthcount','HomepageController@devicemonthcount');
    Route::get('homepagecount/timeline','HomepageController@gettimeline');
    Route::get('homepagecount/Project_statistics','HomepageController@Project_statistics');
    Route::get('homepagecount/UserStatistics','HomepageController@UserStatistics');
    Route::get('homepagecount/userdevicemonthcount','HomepageController@userdevicemonthcount');

冯超鹏's avatar
冯超鹏 committed
77 78
});

冯超鹏's avatar
冯超鹏 committed
79 80 81
//设备路由
Route::group(['middleware'=>'auth:api'],function (){
    Route::get('devices/devicelist', 'DevicesController@devicelist');//设备列表
82
    Route::post('devices/userdevicelist', 'DevicesController@userdevicelist');//用户设备列表
冯超鹏's avatar
冯超鹏 committed
83 84
    Route::get('devices/deviceDataInfo/{id}', 'DevicesController@deviceDataInfo');//设备详情
    Route::post('devices/deviceDataSearch', 'DevicesController@deviceDataSearch');//设备搜索列表
冯超鹏's avatar
冯超鹏 committed
85 86
    Route::get('devices/devicetype','DevicesController@devicetype');//设备类型
    Route::post('devices/deletedecice','DevicesController@deletedecice')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//删除设备
87
    Route::post('devices/adddevice','DevicesController@adddevice');//新增设备
冯超鹏's avatar
冯超鹏 committed
88
    Route::match(['get','post'],'devices/physicsdelete','DevicesController@physicsdelete')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//返回设备列表和更改设备
冯超鹏's avatar
冯超鹏 committed
89
    Route::match(['get','post'],'devices/updatedevice','DevicesController@updatedevice');//更新设备
冯超鹏's avatar
冯超鹏 committed
90 91
    Route::get('devices/equipment','DevicesController@equipment');//获取设备监测列表
    Route::get('devices/police','DevicesController@police');//获取设备当前报警列表
冯超鹏's avatar
冯超鹏 committed
92 93 94 95
    Route::get('devices/deviceBasket','DevicesController@deviceBasket');//获取设备废纸篓数量
    Route::get('devices/deviceDelete','DevicesController@deviceDelete');//禁用设备和丢弃废纸篓
    Route::get('devices/UpPaperBasket/{id}','DevicesController@UpPaperBasket');//更新废纸篓和禁用用户
    Route::get('devices/deviceBasketList','DevicesController@deviceBasketList');//返回禁用设备和废纸篓设备
96 97
    Route::get('devices/addClassify/{data}','DevicesController@addClassify');//添加分类
    Route::get('devices/delteClassify/{id}','DevicesController@delteClassify');//删除分类
冯超鹏's avatar
冯超鹏 committed
98
    Route::get('devices/detedevice','DevicesController@detedevice');//查看历史数据
冯超鹏's avatar
冯超鹏 committed
99
    Route::get('devices/addUserDevice','DevicesController@addUserDevice');//返回正常用户
冯超鹏's avatar
冯超鹏 committed
100 101
    Route::get('devices/control','DevicesController@control');//返回消防监测
    Route::get('devices/deviceLocation','DevicesController@deviceLocation');//返回设备安装位置
冯超鹏's avatar
冯超鹏 committed
102
    Route::get('devices/device_info/{id}','DevicesController@device_info');//返回设备地图详情信息
103 104
    Route::get('devices/devicepolice','DevicesController@devicepolice');//设备消警
    Route::get('devices/devicepoliceinfo','DevicesController@devicepoliceinfo');//设备报警弹窗详情
冯超鹏's avatar
冯超鹏 committed
105
});
冯超鹏's avatar
冯超鹏 committed
106 107 108 109

//装维中心
Route::group(['middleware'=>'auth:api'],function (){
    Route::get('installer/installerlist','InstallerController@installerlist');//装维人员列表
冯超鹏's avatar
冯超鹏 committed
110 111 112
    Route::post('installer/addinstaller','InstallerController@addinstaller')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//添加新的装维人员
    Route::match(['get','post'],'installer/updateinstaller','InstallerController@updateinstaller')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//返回设备列表和更改设备
    Route::get('installer/deleteinstaller','InstallerController@deleteinstaller')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//删除用户
冯超鹏's avatar
冯超鹏 committed
113 114
    Route::post('installer/seekInstaller','InstallerController@seekInstaller')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);//用户搜索
    Route::get('installer/normalinstaller/{id}','InstallerController@normalinstaller');//回复状态
冯超鹏's avatar
冯超鹏 committed
115
});
冯超鹏's avatar
冯超鹏 committed
116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220
// Fake APIs
Route::get('/table/list', function () {
    $rowsNumber = mt_rand(20, 30);
    $data = [];
    for ($rowIndex = 0; $rowIndex < $rowsNumber; $rowIndex++) {
        $row = [
            'author' => Faker::randomString(mt_rand(5, 10)),
            'display_time' => Faker::randomDateTime()->format('Y-m-d H:i:s'),
            'id' => mt_rand(100000, 100000000),
            'pageviews' => mt_rand(100, 10000),
            'status' => Faker::randomInArray(['deleted', 'published', 'draft']),
            'title' => Faker::randomString(mt_rand(20, 50)),
        ];

        $data[] = $row;
    }

    return response()->json(new JsonResponse(['items' => $data]));
});

Route::get('/orders', function () {
    $rowsNumber = 8;
    $data = [];
    for ($rowIndex = 0; $rowIndex < $rowsNumber; $rowIndex++) {
        $row = [
            'order_no' => 'LARAVUE' . mt_rand(1000000, 9999999),
            'price' => mt_rand(10000, 999999),
            'status' => Faker::randomInArray(['success', 'pending']),
        ];

        $data[] = $row;
    }

    return response()->json(new JsonResponse(['items' => $data]));
});

Route::get('/articles', function () {
    $rowsNumber = 10;
    $data = [];
    for ($rowIndex = 0; $rowIndex < $rowsNumber; $rowIndex++) {
        $row = [
            'id' => mt_rand(100, 10000),
            'display_time' => Faker::randomDateTime()->format('Y-m-d H:i:s'),
            'title' => Faker::randomString(mt_rand(20, 50)),
            'author' => Faker::randomString(mt_rand(5, 10)),
            'comment_disabled' => Faker::randomBoolean(),
            'content' => Faker::randomString(mt_rand(100, 300)),
            'content_short' => Faker::randomString(mt_rand(30, 50)),
            'status' => Faker::randomInArray(['deleted', 'published', 'draft']),
            'forecast' => mt_rand(100, 9999) / 100,
            'image_uri' => 'https://via.placeholder.com/400x300',
            'importance' => mt_rand(1, 3),
            'pageviews' => mt_rand(10000, 999999),
            'reviewer' => Faker::randomString(mt_rand(5, 10)),
            'timestamp' => Faker::randomDateTime()->getTimestamp(),
            'type' => Faker::randomInArray(['US', 'VI', 'JA']),

        ];

        $data[] = $row;
    }

    return response()->json(new JsonResponse(['items' => $data, 'total' => mt_rand(1000, 10000)]));
});

Route::get('articles/{id}', function ($id) {
    $article = [
        'id' => $id,
        'display_time' => Faker::randomDateTime()->format('Y-m-d H:i:s'),
        'title' => Faker::randomString(mt_rand(20, 50)),
        'author' => Faker::randomString(mt_rand(5, 10)),
        'comment_disabled' => Faker::randomBoolean(),
        'content' => Faker::randomString(mt_rand(100, 300)),
        'content_short' => Faker::randomString(mt_rand(30, 50)),
        'status' => Faker::randomInArray(['deleted', 'published', 'draft']),
        'forecast' => mt_rand(100, 9999) / 100,
        'image_uri' => 'https://via.placeholder.com/400x300',
        'importance' => mt_rand(1, 3),
        'pageviews' => mt_rand(10000, 999999),
        'reviewer' => Faker::randomString(mt_rand(5, 10)),
        'timestamp' => Faker::randomDateTime()->getTimestamp(),
        'type' => Faker::randomInArray(['US', 'VI', 'JA']),

    ];

    return response()->json(new JsonResponse($article));
});

Route::get('articles/{id}/pageviews', function ($id) {
    $pageviews = [
        'PC' => mt_rand(10000, 999999),
        'Mobile' => mt_rand(10000, 999999),
        'iOS' => mt_rand(10000, 999999),
        'android' => mt_rand(10000, 999999),
    ];
    $data = [];
    foreach ($pageviews as $device => $pageview) {
        $data[] = [
            'key' => $device,
            'pv' => $pageview,
        ];
    }

    return response()->json(new JsonResponse(['pvData' => $data]));
});