Create a food ordering app like JustEat with AngularJS
blog.stamplay.com
blog.stamplay.com
You could have 20 services instead of one it would not make any difference. Since the details and dependencies of the services are encapsulated. I would,however separate the modal methods from the config variables, as it's 2 different concerns.But the rest is totally fine.
It's a matter of opinion beyond that, there are no "best-practices",other than the fact that one should not use any data that is not injected somehow , in a controller.
Same for $http.Of course one might want to abstract some business logic as the application grows,because at some point one might need to do complex stuffs when it comes to api calls(validation,...) but YAGNI over DRY. The code is still testable.
Again the only thing one should NOT do in a controller is DOM manipulation,beyond that anything goes.
We've decided to move to Ember from Backbone instead of going to Angular, articles like this make me doubt my decision!
But again,since AngularJS takes care of everything else,that's a tradeoff.Angular solves the architecture problem with dependency injection.