I have to implement comment and reply system in my application. I am getting the data from the API and I don't understand how to do this cause I have not done anything like this before. I know I have to take two different cells for this type of system but I don't Know how to filter the data for comments and replies and show them in their respective cells.
Here is how my JSON:
[
{
"firstName": "Mark",
"lastName": "King",
"profilePic": "avatar2 - Copy - Copy.jpg",
"reviewId": 54,
"userId": 4,
"serviceProviderId": 0,
"rating": 0,
"description": "Thank You...",
"isDeleted": false,
"parentReviewId": 53,
"createdDate": "2018-05-08T12:32:43.033",
"modifiedDate": "0001-01-01T00:00:00",
"bookingId": 62,
"startDate": "2018-05-08T12:29:00",
"endDate": "2018-05-08T14:29:00",
"serviceName": "Security",
"businessId": 0,
"businessProfilePic": ""
},
{
"firstName": "Satya Indra",
"lastName": "varada",
"profilePic": "3354757569.jpg",
"reviewId": 53,
"userId": 9,
"serviceProviderId": 0,
"rating": 4,
"description": "nice service...",
"isDeleted": false,
"parentReviewId": 0,
"createdDate": "2018-05-08T12:31:44.313",
"modifiedDate": "0001-01-01T00:00:00",
"bookingId": 62,
"startDate": "2018-05-08T12:29:00",
"endDate": "2018-05-08T14:29:00",
"serviceName": "Security",
"businessId": 0,
"businessProfilePic": ""
},
{
"firstName": "Mark",
"lastName": "King",
"profilePic": "avatar2 - Copy - Copy.jpg",
"reviewId": 52,
"userId": 4,
"serviceProviderId": 0,
"rating": 0,
"description": "sorry for the trouble",
"isDeleted": false,
"parentReviewId": 9,
"createdDate": "2018-05-07T11:52:23.81",
"modifiedDate": "0001-01-01T00:00:00",
"bookingId": 16,
"startDate": "2018-04-24T11:30:00",
"endDate": "2018-04-24T12:30:00",
"serviceName": "Cleaning",
"businessId": 2,
"businessProfilePic": "logo-home.png"
},
{
"firstName": "James",
"lastName": "Miller",
"profilePic": "avatar.jpg",
"reviewId": 9,
"userId": 7,
"serviceProviderId": 0,
"rating": 2,
"description": "bad",
"isDeleted": false,
"parentReviewId": 0,
"createdDate": "2018-04-24T23:59:06.357",
"modifiedDate": "0001-01-01T00:00:00",
"bookingId": 16,
"startDate": "2018-04-24T11:30:00",
"endDate": "2018-04-24T12:30:00",
"serviceName": "Cleaning",
"businessId": 2,
"businessProfilePic": "logo-home.png"
},
{
"firstName": "Mark",
"lastName": "King",
"profilePic": "avatar2 - Copy - Copy.jpg",
"reviewId": 2,
"userId": 4,
"serviceProviderId": 0,
"rating": 0,
"description": "Thank you",
"isDeleted": false,
"parentReviewId": 1,
"createdDate": "2018-04-20T14:57:29.073",
"modifiedDate": "0001-01-01T00:00:00",
"bookingId": 2,
"startDate": "2018-04-25T00:00:00",
"endDate": "2018-04-26T09:00:00",
"serviceName": "Security",
"businessId": 0,
"businessProfilePic": ""
},
{
"firstName": "James",
"lastName": "Miller",
"profilePic": "avatar.jpg",
"reviewId": 1,
"userId": 7,
"serviceProviderId": 0,
"rating": 4,
"description": "Great",
"isDeleted": false,
"parentReviewId": 0,
"createdDate": "2018-04-20T14:56:57.34",
"modifiedDate": "0001-01-01T00:00:00",
"bookingId": 2,
"startDate": "2018-04-25T00:00:00",
"endDate": "2018-04-26T09:00:00",
"serviceName": "Security",
"businessId": 0,
"businessProfilePic": ""
}
]
Here all the dictionaries represent comments and reviews coming in a single array. The difference is the bookingId of any comment will be same to reply and reviewId of a comment will be equal to parentReviewId of reply. If a reply is already there it should be shown below it's respective comment if there is no reply we should be able to add it by clicking on the Reply button in comment cell. This is the concept and I really tried for it I can't do it. Hope you guys can help me do it.. Thanks for any help in advance..