From 2eeee7cf79055c8e9b1ada7c0ece2b1b27af9f13 Mon Sep 17 00:00:00 2001 From: mmvpm Date: Thu, 9 May 2024 20:14:21 +0300 Subject: [PATCH] Fix offers ordering (#56) --- .../github/mmvpm/service/dao/offer/OfferDaoPostgresql.scala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/service/src/main/scala/com/github/mmvpm/service/dao/offer/OfferDaoPostgresql.scala b/service/src/main/scala/com/github/mmvpm/service/dao/offer/OfferDaoPostgresql.scala index 5e24d07..422e4b5 100644 --- a/service/src/main/scala/com/github/mmvpm/service/dao/offer/OfferDaoPostgresql.scala +++ b/service/src/main/scala/com/github/mmvpm/service/dao/offer/OfferDaoPostgresql.scala @@ -45,7 +45,9 @@ class OfferDaoPostgresql[F[_]: MonadCancelThrow](implicit val tr: Transactor[F]) offers <- offersEntries.traverse { offersEntry => selectFromPhotos(offersEntry.id).map(offersEntry.toOffer) } - } yield offers) + orderFromRequest = offerIds.zipWithIndex.toMap + offersOrdered = offers.sortBy(o => orderFromRequest.getOrElse(o.id, Int.MaxValue)) + } yield offersOrdered) .transact(tr) .attemptT .leftMap(error => InternalOfferDaoError(error.getMessage))