class Ability include CanCan::Ability def initialize(user) user ||= Employee.new if user.role? :administrator can :manage, :all elsif user.role? :cashier can :read, Order can :update, Order can :completed_order_item, Order can :read, Sale can :update, Sale elsif user.role? :accountant can :read, Order can :update, Order can :completed_order_item, Order can :read, Sale can :update, Sale can :manual_complete_sale, Sale end end end