api.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. use Illuminate\Http\Request;
  3. use Illuminate\Support\Facades\Route;
  4. use App\Http\Controllers\API;
  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. Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
  16. return $request->user();
  17. });
  18. Route::post("/login", [API\AuthController::class, "login"]);
  19. Route::middleware(['auth:sanctum'])->group(function () {
  20. Route::post("/logout", [API\AuthController::class, "logout"]);
  21. Route::apiResources([
  22. 'asset-group' => API\AssetGroupController::class,
  23. 'asset' => API\AssetController::class,
  24. 'requirement-group' => API\RequirementGroupController::class,
  25. 'requirement' => API\RequirementController::class,
  26. 'project' => API\ProjectController::class,
  27. ]);
  28. Route::patch("project/{project}/closed", [API\ProjectController::class, "closed"])->name("project.closed");
  29. Route::patch("project/{project}/start", [API\ProjectController::class, "start"])->name("project.start");
  30. Route::patch("project/{project}/pause", [API\ProjectController::class, "pause"])->name("project.pause");
  31. Route::patch("project/{project}/postpone", [API\ProjectController::class, "postpone"])
  32. ->name("project.postpone");
  33. Route::patch("project/{project}/link-requirement", [API\ProjectController::class, "linkRequirement"])
  34. ->name("project.link-requirement");
  35. Route::patch("project/{project}/unlink-requirement", [API\ProjectController::class, "unlinkRequirement"])
  36. ->name("project.unlink-requirement");
  37. Route::patch("project/{project}/link-requirement-by-plan", [API\ProjectController::class, "linkRequirementByPlan"])
  38. ->name("project.link-requirement-by-plan");
  39. Route::get("project/{project}/plan", [API\ProjectController::class, "plan"])
  40. ->name("project.plan"); //项目关联计划
  41. Route::get("project/{project}/requirement", [API\ProjectController::class, "requirement"])
  42. ->name("project.requirement"); //项目需求
  43. Route::get("project/{project}/not-link-asset-requirement", [API\ProjectController::class, "notLinkAssetRequirement"])
  44. ->name("project.not-link-asset-requirement"); //项目未关联的资产需求
  45. });