blob: 1e9a2260a283e86af085aa59e6b7d6044c37d4b8 (
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}
import xyz.driver.pdsuicommon.domain.LongId
final case class ApiStudyDesign(id: Long, name: String) {
def toDomain = StudyDesign(id = LongId[StudyDesign](id), name = 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
)
}
|