app/models/concerns/zuora_connect/auditable.rb
# frozen_string_literal: true module ZuoraConnect # Added by @Vina # Description: This automatically stamp user created/updated the record for DataQuery Audit # Usage: add 'include ZuoraConnect::Auditable' to your model.rb that you would like to track module Auditable extend ActiveSupport::Concern included do before_create :set_created_by_id before_update :set_updated_by_id before_destroy :set_updated_by_id belongs_to :updated_by, class_name: 'ZuoraConnect::ZuoraUser', foreign_key: 'updated_by_id', primary_key: "zuora_user_id", optional: true belongs_to :created_by, class_name: 'ZuoraConnect::ZuoraUser', foreign_key: 'created_by_id', primary_key: "zuora_user_id", optional: true private def set_created_by_id self.created_by_id = ZuoraUser.current_user_id if defined?(created_by_id) end def set_updated_by_id self.updated_by_id = ZuoraUser.current_user_id if defined?(updated_by_id) end end end end