api.php 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <?php
  2. use App\Http\Controllers\Backend\Server\System\UserController;
  3. use App\Http\Controllers\Frontend\Client\CoachController as ClientCoachController;
  4. use App\Http\Controllers\Frontend\Client\Coach\UserController as ClientCoachUserController;
  5. use App\Http\Controllers\Frontend\Server\Coach\UserController as ServerCoachUserController;
  6. use App\Http\Controllers\Frontend\Client\Service\ProjectController as ClientProjectController;
  7. use App\Http\Controllers\Frontend\Server\Service\ProjectController as ServerProjectController;
  8. use App\Http\Controllers\Frontend\Client\Service\OrderController as ClientServiceOrderController;
  9. use App\Http\Controllers\Frontend\Client\Auth\AuthenticatedController as ClientAccountAuthController;
  10. use App\Http\Controllers\Frontend\Client\Service\CategoryController as ClientServiceCategory;
  11. use App\Http\Controllers\Frontend\Client\Member\UserController as ClientMemberUserController;
  12. use App\Http\Controllers\Frontend\Client\Auth\WechatAuthenticatedController as ClientWechatAuthenticatedController;
  13. use App\Http\Controllers\Frontend\Client\Member\ToolController as ClientMemberToolController;
  14. use App\Http\Controllers\Frontend\Client\Member\AddressController as ClientMemberAddressController;
  15. use Illuminate\Http\Request;
  16. use Illuminate\Support\Facades\Route;
  17. Route::prefix('client')->group(function () {
  18. Route::get('/', function () {
  19. return ['Laravel' => 'frontend client'];
  20. });
  21. });
  22. Route::middleware(['auth:sanctum'])->get('/user', function (Request $request) {
  23. return $request->user();
  24. });
  25. # 客户
  26. Route::prefix('client')->group(function () {
  27. # 登录
  28. Route::prefix('login')->group(function () {
  29. Route::post('/', [ClientAccountAuthController::class, 'store']);
  30. Route::post('send', [ClientAccountAuthController::class, 'send']);
  31. });
  32. # 微信
  33. Route::prefix('wechat')->group(function () {
  34. Route::get('/oauth', [ClientWechatAuthenticatedController::class, 'oauth']);
  35. Route::get('/callback', [ClientWechatAuthenticatedController::class, 'callback']);
  36. Route::get('/login', [ClientWechatAuthenticatedController::class, 'store']);
  37. Route::get('/bind', [ClientWechatAuthenticatedController::class, 'bind']);
  38. Route::get('/signature', [ClientWechatAuthenticatedController::class, 'signature']);
  39. });
  40. # 首页
  41. Route::prefix('service')->group(function () {
  42. Route::get('category', [ClientServiceCategory::class, 'index']);
  43. Route::get('project', [ClientProjectController::class, 'index']);
  44. Route::get('project/{id}', [ClientProjectController::class, 'show']);
  45. Route::middleware(['auth:sanctum'])->group(function () {
  46. # 订单
  47. Route::get('order/confirm', [ClientServiceOrderController::class, 'confirm']);
  48. Route::get('order/compute', [ClientServiceOrderController::class, 'compute']);
  49. Route::get('order/qrCode',[ClientServiceOrderController::class, 'qrCode']);
  50. Route::resource('order', ClientServiceOrderController::class);
  51. });
  52. });
  53. Route::prefix('coach')->group(function () {
  54. # 申请技师
  55. Route::post('apply', [ClientCoachUserController::class, 'apply'])->middleware('auth:sanctum');
  56. Route::get('/', [ClientCoachUserController::class, 'index']);
  57. Route::get('/{id}', [ClientCoachUserController::class, 'show']);
  58. });
  59. Route::prefix('member')->middleware(['auth:sanctum'])->group(function () {
  60. Route::get('address/default', [ClientMemberAddressController::class, 'default']);
  61. Route::resource('address', ClientMemberAddressController::class);
  62. Route::post('upload', [ClientMemberToolController::class, "upload"]);
  63. Route::get('/', [ClientMemberUserController::class, 'show']);
  64. Route::delete('/', [ClientMemberUserController::class, 'destroy']);
  65. Route::put('/', [ClientMemberUserController::class, 'update']);
  66. });
  67. });
  68. # 技师端
  69. Route::prefix('server')->group(function () {
  70. Route::get('/', function () {
  71. return ['Laravel' => 'frontend server'];
  72. });
  73. Route::prefix('coach')->group(function () {
  74. # 获取技师详情
  75. Route::get('user', [ServerCoachUserController::class, 'show']);
  76. Route::put('user', [ServerCoachUserController::class, 'update']);
  77. });
  78. Route::prefix('service')->group(function () {
  79. Route::get('project', [ServerProjectController::class, 'index']);
  80. Route::post('project', [ServerProjectController::class, 'update']);
  81. });
  82. });