chore: Move agent availability to Account level (#3074)

- Move agent availability to the account level
This commit is contained in:
Sojan Jose
2021-10-07 13:21:46 +05:30
committed by GitHub
parent 1c6a539c0a
commit c54aae21ff
84 changed files with 618 additions and 148 deletions

View File

@@ -0,0 +1,21 @@
class AddOnlineStatusToAccountUsers < ActiveRecord::Migration[6.1]
def change
change_table :account_users, bulk: true do |t|
t.integer :availability, default: 0, null: false
t.boolean :auto_offline, default: true, null: false
end
update_existing_user_availability
end
private
def update_existing_user_availability
User.find_in_batches do |user_batch|
user_batch.each do |user|
availability = user.availability
user.account_users.update(availability: availability)
end
end
end
end

View File

@@ -35,6 +35,8 @@ ActiveRecord::Schema.define(version: 2021_09_29_150415) do
t.datetime "created_at", precision: 6, null: false
t.datetime "updated_at", precision: 6, null: false
t.datetime "active_at"
t.integer "availability", default: 0, null: false
t.boolean "auto_offline", default: true, null: false
t.index ["account_id", "user_id"], name: "uniq_user_id_per_account_id", unique: true
t.index ["account_id"], name: "index_account_users_on_account_id"
t.index ["user_id"], name: "index_account_users_on_user_id"