for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace App\Containers\Tracker\Tasks;
use App\Containers\Tracker\Data\Repositories\TimeTrackerRepository;
use App\Port\Criterias\Eloquent\IsNullCriteria;
use App\Port\Task\Abstracts\Task;
/**
* Class FindTimeTrackerTask.
*
* @author Mahmoud Zalt <[email protected]>
*/
class FindTimeTrackerTask extends Task
{
* @var \App\Containers\Tracker\Data\Repositories\TimeTrackerRepository
private $timeTrackerRepository;
* FindTimeTrackerTask constructor.
* @param \App\Containers\Tracker\Data\Repositories\TimeTrackerRepository $timeTrackerRepository
public function __construct(TimeTrackerRepository $timeTrackerRepository)
$this->timeTrackerRepository = $timeTrackerRepository;
}
* @param $id
* @return mixed
public function byId($id)
return $this->timeTrackerRepository->find($id);
* @param $userId
public function byUserId($userId)
return $this->timeTrackerRepository->findByField('user_id', $userId)->first();
* @throws \Prettus\Repository\Exceptions\RepositoryException
public function byUserIdAndStatusNull($userId)
$this->timeTrackerRepository->pushCriteria(new IsNullCriteria('status'));
return $this->byUserId($userId);