TaskRewardRepository.php 888 B

123456789101112131415161718192021222324252627282930313233343536
  1. <?php
  2. namespace App\Module\Task\Repositorys;
  3. use App\Module\Task\Models\TaskReward;
  4. use Dcat\Admin\Repositories\EloquentRepository;
  5. /**
  6. * 任务奖励数据仓库类
  7. *
  8. * 提供任务奖励数据的访问和操作功能。
  9. * 该类是任务奖励模块与后台管理系统的桥梁,用于处理任务奖励数据的CRUD操作。
  10. */
  11. class TaskRewardRepository extends EloquentRepository
  12. {
  13. /**
  14. * 关联的Eloquent模型类
  15. *
  16. * @var string
  17. */
  18. protected $eloquentClass = TaskReward::class;
  19. /**
  20. * 获取指定任务的所有奖励
  21. *
  22. * @param int $taskId 任务ID
  23. * @return array 奖励列表
  24. */
  25. public function getRewardsByTaskId(int $taskId): array
  26. {
  27. return $this->eloquentClass::where('task_id', $taskId)
  28. ->orderBy('sort_order', 'desc')
  29. ->get()
  30. ->toArray();
  31. }
  32. }