title: Data classe to Room entities
body: <p>I' ve this data classe</p>
  <pre><code>@Parcelize
  data class IdTotalTotal(
      val idEnvioMarrocos: Int,
      val clifor: String,
      val nomeClifor: String,
      val nomeUser: String,
      val termina: Int,
      var dados: List&lt;IdTotal&gt;
  ): Parcelable {
      @Parcelize
      data class IdTotal(
          val produto: String,
          val modelo: String,
          var idPartePeso: List&lt;IdPartePeso&gt;,
          var idOpPedido: List&lt;IdOpPedido&gt;
      ) : Parcelable {
          @Parcelize
          data class IdPartePeso(
              val parteID: Int,
              val nomeParte: String,
              var pesoTamanho: List&lt;PesoTamanho&gt;
          ) : Parcelable {
              @Parcelize
              data class PesoTamanho(
                  val nomeT: String,
                  var pesoT: Int
              ) : Parcelable
          }
          @Parcelize
          data class IdOpPedido(
              val op: String,
              var pedidos: List&lt;Pedido&gt;
          ) : Parcelable {
              @Parcelize
              data class Pedido(
                  val pedido: String,
                  val pedidoCliente: String,
                  var pedidoEntra: Boolean
              ) : Parcelable
          }
      }
  }
  </code></pre>
  <p>Now I'm trying to achieve the same result with a room entity for persistence and ease.
  This is my code:</p>
  <pre><code>@Entity
  data class EnviosPesosDestinosBd(
      @PrimaryKey(autoGenerate = false)
      val idEnvioMarrocos: Int,
      val clifor: String,
      val nomeClifor: String,
      val nomeUser: String,
      val termina: Int,
      val updatedAt: Long = System.currentTimeMillis()
  )
  
  @Entity(primaryKeys = [&quot;idEnvioMarrocos&quot;, &quot;produto&quot;])
  data class EnvioProduto(
      val idEnvioMarrocos: Int,
      val produto: String,
      val modelo: String,
  )
  
  
  @Entity(primaryKeys = [&quot;idEnvioMarrocos&quot;, &quot;produto&quot;, &quot;parteID&quot;],
      foreignKeys = [
          ForeignKey(
              entity = TamanhoPeso::class,
              parentColumns = [&quot;idEnvioMarrocos&quot;, &quot;produto&quot;, &quot;parteID&quot;],
              childColumns = [&quot;idEnvioMarrocos&quot;, &quot;produto&quot;, &quot;parteID&quot;]
          )
      ]
  )
  data class PesoParte(
      val idEnvioMarrocos: Int,
      val produto: String,
      val parteID: Int,
      val nomeParte: String,
  )
  
  
  @Entity(primaryKeys = [&quot;idEnvioMarrocos&quot;, &quot;produto&quot;, &quot;parteID&quot;, &quot;nomeT&quot;])
  data class TamanhoPeso(
      val idEnvioMarrocos: Int,
      val produto: String,
      val parteID: Int,
      val nomeT: String,
      var pesoT: Int
  )
  
  @Entity(primaryKeys = [&quot;idEnvioMarrocos&quot;, &quot;op&quot;, &quot;produto&quot;],
      foreignKeys = [
          ForeignKey(
              entity = OpPedido::class,
              parentColumns = [&quot;idEnvioMarrocos&quot;, &quot;op&quot;],
              childColumns = [&quot;idEnvioMarrocos&quot;, &quot;op&quot;]
          )
      ])
  data class EnvioDestinoComOp(
      val idEnvioMarrocos: Int,
      val produto: String,
      val op: String,
  )
  
  @Entity(primaryKeys = [&quot;idEnvioMarrocos&quot;, &quot;op&quot;, &quot;pedido&quot;])
  data class OpPedido(
      val idEnvioMarrocos: Int,
      val op: String,
      val pedido: String,
      val pedidoCliente: String,
      var pedidoEntra: Boolean
  )
  </code></pre>
  <p>Thanks</p>