It sounds like after the bike has been in the shop the gears work correctly for a short time, but then the indexing goes out again.
In my experience, the most likely cause of this is poor quality cables. Usually after cables are fitted they stretch and need the tension adjusting, but after this tend to be problem free.
However I have had experiences on a cheaper bike where the cable would just keep stretching - in the worst example it took 3 months of being adjusted twice a week before they finally started to behave.
I highly recommend learning how to index gears yourself as it's fairly easy to do and saves you a lot of time/money going to the bike shop.
GCN do a whole range of bike maintenance videos, here's one for adjusting the rear derailleur: