Advertisement
Guest User

Untitled

a guest
Jan 13th, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 2.08 KB | None | 0 0
  1. package pl.monusky.gotpttk.communication.dto
  2.  
  3. import pl.monusky.gotpttk.dataAccess.entity.Wycieczka
  4. import java.time.LocalDateTime
  5.  
  6. data class WycieczkaDto(
  7.         val id: Long?,
  8.         val kryteriumWycieczkiWielodniowej: KryteriumWycieczkiWielodniowejDto?,
  9.         val odznaka: OdznakaDto?,
  10.         val nazwa: String?,
  11.         val dataOdbycia: LocalDateTime?,
  12.         val punktyGot: Long?,
  13.         val potwierdzona: Boolean?,
  14.         val punktyGotBezDuplikatow: Long?,
  15.         val potwierdzeniaTerenowe: Iterable<PotwierdzenieTerenoweDto>?,
  16.         val trasaWycieczka: Iterable<TrasaWycieczkaDto>?
  17. ) {
  18.     fun toEntity(): Wycieczka {
  19.         val wycieczka = Wycieczka()
  20.         wycieczka.id = id
  21.         wycieczka.kryteriumWycieczkiWielodniowej = kryteriumWycieczkiWielodniowej?.toEntity()
  22.         wycieczka.odznaka = odznaka?.toEntity()
  23.         wycieczka.nazwa = nazwa
  24.         wycieczka.dataOdbycia = dataOdbycia
  25.         wycieczka.punktyGot = punktyGot ?: 0
  26.         wycieczka.potwierdzona = potwierdzona
  27.         wycieczka.punktyGotBezDuplikatow = punktyGotBezDuplikatow ?: 0
  28.         wycieczka.potwierdzeniaTerenowe = potwierdzeniaTerenowe?.map { it.toEntity(wycieczka) } ?: mutableListOf()
  29.         wycieczka.trasaWycieczka = trasaWycieczka?.map { it.toEntity(wycieczka, wycieczka.odznaka?.turystaUbiegajacy) } ?: mutableListOf()
  30.         return wycieczka
  31.     }
  32.  
  33.     companion object {
  34.         fun of(wycieczka: Wycieczka?): WycieczkaDto {
  35.             return WycieczkaDto(
  36.                     wycieczka?.id,
  37.                     KryteriumWycieczkiWielodniowejDto.of(wycieczka?.kryteriumWycieczkiWielodniowej),
  38.                     OdznakaDto.of(wycieczka?.odznaka),
  39.                     wycieczka?.nazwa,
  40.                     wycieczka?.dataOdbycia,
  41.                     wycieczka?.punktyGot,
  42.                     wycieczka?.potwierdzona,
  43.                     wycieczka?.punktyGotBezDuplikatow,
  44.                     PotwierdzenieTerenoweDto.of(wycieczka?.potwierdzeniaTerenowe),
  45.                     TrasaWycieczkaDto.of(wycieczka?.trasaWycieczka)
  46.                     )
  47.         }
  48.     }
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement