/** * @param Estimate $estimate * @param AuthUser $user * * @return Estimate|null */ public function save(Estimate $estimate, AuthUser $user) { if (empty($estimate->getEstimateId())) { $estimate->setCreateUserId($user->getUserId()); $family = $this->familyRepository->getFamilyByUserId($user->getUserId()); $estimate->setFamilyId($family->getFamilyId()); } $estimate->setIsClosed(false); $estimateId = $this->estimateRepository->save($estimate); if (!$estimateId) { return null; } return $this->estimateRepository->getEstimateById($estimateId); }
/** * @param int $userId * * @return AuthUser[] */ public function getUsersOfFamilyByUserId($userId) { $family = $this->familyRepository->getFamilyByUserId($userId); if (!$family) { return []; } $relationsOfFamily = $this->familyRepository->getRelationsOfFamily($family->getFamilyId()); $userIds = []; foreach ($relationsOfFamily as $relation) { $userIds[] = $relation->getUserId(); } if (empty($userIds)) { return []; } return $this->userRepository->getUsersByIds($userIds); }
/** * @param int $userId * * @return Category[] */ public function getListOfCategoryByUserId($userId) { $family = $this->familyRepository->getFamilyByUserId($userId); return $this->categoryRepository->getListOfCategoriesByFamilyId($family->getFamilyId()); }
/** * @param int $userId * * @return Budget[] */ public function getListOfBudgetsByUserId($userId) { $family = $this->familyRepository->getFamilyByUserId($userId); return $this->budgetRepository->getBudgetsByFamilyId($family->getFamilyId()); }