I have got two tables: equipment and location. Equipment table has composite primary key consisted of columns "component_id", "id". Location table has primary key "id".
Could you show me the way how to create many to many relationship in room with composite key?
@Entity(
tableName = "equipment", primaryKeys = ["component_id", "id"],
)
data class EquipmentModel(
@ColumnInfo(name = "component_id") val componentId: Int,
@ColumnInfo(name = "id") val id: Int,
@ColumnInfo(name = "location_id") val locationId: Int?,
@ColumnInfo(name = "stocktaking_sheet_id") val stocktakingSheetId: Int,
val name: String,
@ColumnInfo(name = "label_exchange_demanded") val labelExchangeDemanded: Boolean,
@ColumnInfo(name = "photo_path") val photoPath: String,
@ColumnInfo(name = "noticed_amount") val noticedAmount: Int,
@ColumnInfo(name = "expected_amount") val expectedAmount: Int,
@ColumnInfo(name = "bar_code") val barCode: String,
@ColumnInfo(name = "rfid_code") val RfidCode: String,
@ColumnInfo(name = "construction_number") val serialNumber: String,
@ColumnInfo(name = "stocktaking_number") val stocktakingNumber: String,
@ColumnInfo(name = "external_number") val externalNumber: String,
val remarks: String
)
@Entity(tableName = "location")
data class LocationModel(
@PrimaryKey(autoGenerate = false) val id: Int,
@ColumnInfo(name = "building_id") val buildingId: String,
@ColumnInfo(name = "organizational_unit_id") val organizationalUnitId: String,
@ColumnInfo(name = "use_place_id") val usePlaceId: String,
@ColumnInfo(name = "facility_id") val facilityId: String,
@ColumnInfo(name = "building_name") val buildingName: String,
@ColumnInfo(name = "cell_name") val cellName: String,
@ColumnInfo(name = "use_place_name") val usePlaceName: String,
@ColumnInfo(name = "facility_name") val facilityName: String,
)