Code:
@AfterReturning("execution(* UserService.*(..,UserInfo,..))")
protected void annotatedMethod() {}
What above (your expression) really says is,
Call the annotated method when a method that takes UserInfo as parameter (in class UserService), returns
NOT
Call the annotated method when a method has been passed a UserInfo, returns
So with that conclusion, following code works fine for your problem 
Code:
@AfterReturning("execution(* UserService.*(..,BaseInfo,..)))")
and getUser() should take a BaseInfo
Code:
public void getUser(BaseInfo info) {}
__________________