finish controllers refactoring