refactor staff model