ProjectApi.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. namespace App\Http\Api;
  3. use App\Models\Project;
  4. use Illuminate\Support\Facades\Log;
  5. use Illuminate\Support\Facades\App;
  6. class ProjectApi
  7. {
  8. public static function getById($id)
  9. {
  10. if (!$id) {
  11. return null;
  12. };
  13. $project = Project::find($id);
  14. if ($project) {
  15. return [
  16. 'id' => $id,
  17. 'sn' => $project->id,
  18. 'title' => $project->title,
  19. 'type' => $project->type,
  20. 'weight' => $project->weight,
  21. 'description' => $project->description,
  22. ];
  23. } else {
  24. return null;
  25. }
  26. }
  27. public static function getListByIds($ids)
  28. {
  29. if (!$ids) {
  30. return null;
  31. };
  32. $projects = Project::whereIn('uid', $ids)->get();
  33. $output = array();
  34. foreach ($ids as $key => $id) {
  35. foreach ($projects as $project) {
  36. if ($project->uid === $id) {
  37. $output[] = [
  38. 'id' => $id,
  39. 'sn' => $project->id,
  40. 'title' => $project->title,
  41. 'type' => $project->type,
  42. 'weight' => $project->weight,
  43. 'description' => $project->description,
  44. ];
  45. continue;
  46. };
  47. }
  48. }
  49. return $output;
  50. }
  51. }