| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <?php
- namespace App\Module\Farm\Repositories;
- use App\Module\Farm\Models\FarmUser;
- use Dcat\Admin\Repositories\EloquentRepository;
- use Illuminate\Database\Eloquent\Collection;
- /**
- * 用户农场信息仓库
- *
- * 提供用户农场信息数据的访问和操作功能。
- * 该类是用户农场信息模块与后台管理系统的桥梁,用于处理用户农场信息数据的CRUD操作。
- */
- class FarmUserRepository extends EloquentRepository
- {
- /**
- * 模型类名
- *
- * @var string
- */
- protected $eloquentClass = FarmUser::class;
- /**
- * 根据用户ID查找农场信息
- *
- * @param int $userId
- * @return FarmUser|null
- */
- public function findByUserId(int $userId): ?FarmUser
- {
- return FarmUser::where('user_id', $userId)->first();
- }
- /**
- * 获取指定房屋等级的用户
- *
- * @param int $houseLevel
- * @return Collection
- */
- public function findByHouseLevel(int $houseLevel): Collection
- {
- return FarmUser::where('house_level', $houseLevel)->get();
- }
- /**
- * 获取需要检查降级的用户
- *
- * @param int $days
- * @return Collection
- */
- public function findNeedDowngradeUsers(int $days): Collection
- {
- $date = now()->subDays($days);
- return FarmUser::where('house_level', '>', 1)
- ->where('last_upgrade_time', '<', $date)
- ->get();
- }
- }
|