Sevice is usually 5 to 7 years. Depending on the brand, there might be a code with the manufacturer date on the watch case. The store didn't services it and who knows how long it sat there.
Almost anything can affect the accuracy but it should go too far off (seconds not minutes). Tempurature, humidity, how you leave it if you set it down for a long time (day, weeks, months) then start wearing it again. The key to accuracy is consistency. It eventually "settles". If you wear it daily, it settles to that and after a few weeks should be fairly consistent. If you wrar it one day, leave it on the dresser the next, put it on the winder the next, etc. it has a hard time settling in.
I rotate my watches and wear a difderent one every few days or even daily. Then they sit on the winder for a week or two. I check my accuracy using the time on the winder as my norm. Also, when it says +/- 5 seconds daily (or whatever), don't check it daily. Check it after a week or so from when you set it then divide the difference by the days.
When a watch consistently starts loosing or gaining time, it's a good indication it needs serviced. I just have mine serviced at 5 year intervals to make it easy.
Also, having the watch running or stopped doesn't change the service interval. The oils break down with time noy movement. Friction is your enemy.