Review system and dynamic review services list - help with logic needed

Hello Bubblers.

I am making a review system, where a user can review a service provider company.
Review consists of multiple fields.

Besides obvious like creator, date, linked service provider etc, there are:

  1. Review text itself, of course.
  2. Review rating scores added for different fixed services, like - price/performance: 5 stars, Location: 2 stars, etc. which are fixed for every service provider, for every review.

All of the above I store in the review thing itself, and I have no problem there.

Where I am stuck is this:
I have another data type for dynamic services.
Each service provider can have random amount of these dynamic services listed in their profile. Like - dinner, drinks, desserts, pizza, music etc. One does provide music and drinks, other one dinner, third one pizzas and desserts, etc.

Each of the service for each service provider can be also rated. Review input form loads list of dynamic services for this particular service provider.

I am having a problem how can I properly read this list of dynamic services and ratings given to each and how should I store it the best.
I thought of maybe even storing each dynamic rating as a different thing in their own data type, where each would have review ID, reviewed service name and given rating number. But I can not figure out how can I retrieve them on review submit button click…

I tried to check custom states functionality for the first time, but I could not figure that out…
I hope this makses sense. Please help with ideas :slight_smile: Thanks.

OK, I figured it out.

On click on a rating star I create new thing reviewer, reviewed company, current cells service and rating value.
Then on submit review I check for all these things which have current user and current pages company and has review ID empty. Then fill in review ID and done.