blob: 12d40df8364eb51c93d202307f984e1d2d22d05b (
plain) (
tree)
|
|
package xyz.driver.pdsuidomain.formats.json.studydesign
import xyz.driver.pdsuidomain.entities.StudyDesign
import play.api.libs.functional.syntax._
import play.api.libs.json.{Format, JsPath}
final case class ApiStudyDesign(id: Long, name: String) {
def toDomain: Option[StudyDesign] = StudyDesign.fromString(name)
}
object ApiStudyDesign {
implicit val format: Format[ApiStudyDesign] = (
(JsPath \ "id").format[Long] and
(JsPath \ "name").format[String]
)(ApiStudyDesign.apply, unlift(ApiStudyDesign.unapply))
def fromDomain(studyDesign: StudyDesign) = ApiStudyDesign(
id = studyDesign.id.id,
name = studyDesign.name
)
}
|