/** * @param Review $review * * @throws \Doctrine\DBAL\DBALException */ public function decrementReviewsWithHigherPosition(Review $review) { $cuisine = $review->getCuisine(); $geoname = $review->getGeoname(); $user = $review->getUser(); $sql = 'UPDATE reviews SET position = position - 1 WHERE user_id = ? AND geoname_id = ? AND cuisine_id = ? AND position > ?'; $stmt = $this->getEntityManager()->getConnection()->prepare($sql); $stmt->bindValue(1, $user->getId()); $stmt->bindValue(2, $geoname->getId()); $stmt->bindValue(3, $cuisine->getId()); $stmt->bindValue(4, $review->getPosition()); $stmt->execute(); }
/** * @param Review $review */ public function autoReorderRankingOfReview(Review $review) { $this->autoReorderRanking($review->getUser()->getId(), $review->getGeoname()->getId(), $review->getCuisine()->getId()); }