You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 line
2.6KB

  1. <?php
  2. use App\Codes\UserRole;
  3. use App\Util\RouteHelper;
  4. use Illuminate\Support\Facades\Route;
  5. /*
  6. |--------------------------------------------------------------------------
  7. | API Routes
  8. |--------------------------------------------------------------------------
  9. |
  10. | Here is where you can register API routes for your application. These
  11. | routes are loaded by the RouteServiceProvider and all of them will
  12. | be assigned to the "api" middleware group. Make something great!
  13. |
  14. */
  15. RouteHelper::post('/login', App\Http\Controllers\Web\Auth\LoginController::class);
  16. RouteHelper::get('/me', App\Http\Controllers\Web\Auth\MeController::class);
  17. RouteHelper::get('/logout', App\Http\Controllers\Web\Auth\LogoutController::class);
  18. RouteHelper::get('/qr-service/get-ticket', App\Http\Controllers\Web\QRService\CreateTicketController::class);
  19. Route::middleware('auth:sanctum')->group(function () {
  20. // 管理者ルート
  21. Route::middleware(RouteHelper::role([UserRole::ADMIN]))->group(function () {
  22. RouteHelper::get('/customer/list', App\Http\Controllers\Web\Customer\CustomerListController::class);
  23. RouteHelper::get('/login-user/customer/list', App\Http\Controllers\Web\LoginUser\CustomerListController::class);
  24. RouteHelper::get('/login-user/customer/register', App\Http\Controllers\Web\LoginUser\CustomerRegisterController::class);
  25. RouteHelper::get('/login-user/shop/register', App\Http\Controllers\Web\LoginUser\CustomerRegisterController::class);
  26. });
  27. // 運営会社ルート
  28. Route::middleware(RouteHelper::role([UserRole::CUSTOMER]))->group(function () {
  29. RouteHelper::post('/login-user/shop/register', App\Http\Controllers\Web\LoginUser\ShopRegisterController::class);
  30. RouteHelper::post('/shop/register', App\Http\Controllers\Web\Shop\ShopRegisterController::class);
  31. RouteHelper::post('/shop/list', App\Http\Controllers\Web\Shop\ShopListController::class);
  32. });
  33. // 店舗ルート
  34. Route::middleware(RouteHelper::role([UserRole::SHOP]))->group(function () {
  35. RouteHelper::get('/shop/deposit', App\Http\Controllers\Web\Shop\MyDepositController::class);
  36. RouteHelper::post('/shop/deposit/charge', App\Http\Controllers\Web\Shop\DepositChargeController::class);
  37. });
  38. // 管理者と運営会社ルート
  39. Route::middleware(RouteHelper::role([UserRole::ADMIN, UserRole::CUSTOMER]))->group(function () {
  40. RouteHelper::post('/role/switch', App\Http\Controllers\Web\Auth\SwitchController::class);
  41. RouteHelper::get('/role/switch/end', App\Http\Controllers\Web\Auth\SwitchEndController::class);
  42. });
  43. });