Я сопоставляю сценарий, в котором один объект родительского класса необходимо сопоставить на дочернем уровне. Теперь я не могу передать этот параметр объекта через метод сопоставления.
Mapper class:
@Mapping(target = "segment", source = "flightSegment")
@Mapping(target = "PTC", source = "passengerFlight")
Itinerary mapProductAirToItinerary(ProductAir productAir);
List<PTC> mapPassengerFlightToPTC(List<PassengerFlight> passengerFlight);
@Mapping( target = "code", source = "passengerTypeCode")
@Mapping( target = "numberOfPassengers", source = "passengerQuantity")
@Mapping( target = "id", source = ***unknown***)
PTC createSOAPTCfromODflightProduct(PassengerFlight passengerFlight);
В приведенном выше сопоставлении ProductAir имеет строковый объект с именем ID, который требуется сопоставить в методе createSOAPTCfromODflightProduct с целевым идентификатором. Здесь я сохранил неизвестность, так как не могу передать ему значение productAir.id через mapPassengerFlightToPT C и создать метод сопоставления SOAPTCfromODflightProduct. Есть ли в любом случае, я могу передать значение с родительского уровня на уровень отображения ребенка? Структура воздуха продукта приведена ниже, поэтому я хочу отобразить id -> p0 с идентификатором PT C object
"@type": "ProductAir",
"totalDuration": "PT3H54M",
"id": "p0",
"FlightSegment": [
{
"id": "s1",
"sequence": 1,
"Flight": {
"@type": "Flight",
"duration": "PT3H54M",
"carrier": "AA",
"number": "2793",
"operatingCarrier": "AA",
"operatingCarrierName": "American Airlines",
"equipment": "738",
"id": "f1",
"Departure": {
"@type": "Departure",
"location": "DEN",
"date": "2020-07-09",
"time": "23:40:00"
},
"Arrival": {
"@type": "Arrival",
"location": "MIA",
"date": "2020-07-10",
"time": "05:34:00"
}
}