У меня есть модель, которая получает ответ, в котором, когда у меня есть значения option и furthur, в значениях у меня есть priceType, который может быть процентным или фиксированным. Когда тип цены указан в процентах, ответ Sting, но когда тип цены фиксирован, объект идентификатора ответа и я получаю сообщение об ошибке.
Принять ответ
JSONObject jsonResponse = new JSONObject(response);
Gson gson = new GsonBuilder().create();
product = gson.fromJson(String.valueOf(jsonResponse), Product.class);
JSON REsponse for Percentage
{
"id": 73,
"option_id": 21,
"price": "7.0000",
"price_type": "percent",
"position": 0,
"created_at": "2019-10-22 04:23:16",
"updated_at": "2019-10-30 04:57:45",
"label": "Red",
"translations": [
{
"id": 73,
"option_value_id": 73,
"locale": "en",
"label": "Red"
}
]
}
Json Response для Фиксированной цены
{
"id": 74,
"option_id": 21,
"price": {
"amount": "5.0000",
"formatted": "$5.00",
"currency": "USD"
},
"price_type": "fixed",
"position": 1,
"created_at": "2019-10-22 04:23:16",
"updated_at": "2019-10-22 04:23:16",
"label": "White",
"translations": [
{
"id": 74,
"option_value_id": 74,
"locale": "en",
"label": "White"
}
]
}
Цена может быть либо классом, либо строкой, но я не знаю, как поместить в свой класс модель ..