  def remove_application(user_ids)

    return if user_ids.nil? or user_ids.empty?

    SqlHelper.validate_token([user_ids])

    con = ["(xtype='#{Comment::XTYPE_APPLY}')"]
    con << "(item_id=#{self.item_id})"

    user_con_a = []
    user_ids.each do |user_id|
      user_con_a << "(user_id=#{user_id})"
    end

    con << '(' + user_con_a.join(' or ') + ')'

    Comment.destroy_all(con.join(' and '))
 end
The software constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component.