Better Auction rendering for Auctions index
This commit is contained in:
+4
-11
@@ -1,6 +1,6 @@
|
||||
package models
|
||||
|
||||
import play.api.libs.json.{JsValue, Json, Writes}
|
||||
import play.api.libs.json.{JsString, JsValue, Json, OWrites, Writes}
|
||||
|
||||
import java.time.Instant
|
||||
|
||||
@@ -24,6 +24,8 @@ enum AuctionStatus(val value: Short) {
|
||||
|
||||
object AuctionStatus {
|
||||
lazy val byValue: Map[Short, AuctionStatus] = Map.from(AuctionStatus.values.map{it => (it.value, it)})
|
||||
|
||||
implicit val writes: Writes[AuctionStatus] = (o: AuctionStatus) => JsString(o.toString)
|
||||
}
|
||||
|
||||
case class Auction(id: Option[Int], name: String, status: AuctionStatus, gid: String, authorId: Int,
|
||||
@@ -32,14 +34,5 @@ case class Auction(id: Option[Int], name: String, status: AuctionStatus, gid: St
|
||||
createdAt: Instant)
|
||||
|
||||
object Auction {
|
||||
implicit val writes: Writes[Auction] = (a: Auction) => Json.obj(
|
||||
"id" -> a.id,
|
||||
"name" -> a.name,
|
||||
"gid" -> a.gid,
|
||||
"status" -> a.status.toString,
|
||||
"starting_price" -> a.startingPrice,
|
||||
"current_bid" -> a.currentBid,
|
||||
"current_bidder_id" -> a.currentBidderId,
|
||||
"current_bid_at" -> a.currentBidAt
|
||||
)
|
||||
implicit val writes: OWrites[Auction] = Json.writes[Auction]
|
||||
}
|
||||
Reference in New Issue
Block a user