mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-10-31 19:17:48 +00:00 
			
		
		
		
	 3038e672f8
			
		
	
	3038e672f8
	
	
	
		
			
			- Update Schema Information headers for AssignmentPolicy, Campaign, Notification - Reflect schema change for Campaign.template_params (not null with default) - Keep annotations consistent to avoid drift
		
			
				
	
	
		
			38 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # == Schema Information
 | |
| #
 | |
| # Table name: assignment_policies
 | |
| #
 | |
| #  id                       :bigint           not null, primary key
 | |
| #  assignment_order         :integer          default("round_robin"), not null
 | |
| #  conversation_priority    :integer          default("earliest_created"), not null
 | |
| #  description              :text
 | |
| #  enabled                  :boolean          default(TRUE), not null
 | |
| #  fair_distribution_limit  :integer          default(100), not null
 | |
| #  fair_distribution_window :integer          default(3600), not null
 | |
| #  name                     :string(255)      not null
 | |
| #  created_at               :datetime         not null
 | |
| #  updated_at               :datetime         not null
 | |
| #  account_id               :bigint           not null
 | |
| #
 | |
| # Indexes
 | |
| #
 | |
| #  index_assignment_policies_on_account_id           (account_id)
 | |
| #  index_assignment_policies_on_account_id_and_name  (account_id,name) UNIQUE
 | |
| #  index_assignment_policies_on_enabled              (enabled)
 | |
| #
 | |
| class AssignmentPolicy < ApplicationRecord
 | |
|   belongs_to :account
 | |
|   has_many :inbox_assignment_policies, dependent: :destroy
 | |
|   has_many :inboxes, through: :inbox_assignment_policies
 | |
| 
 | |
|   validates :name, presence: true, uniqueness: { scope: :account_id }
 | |
|   validates :fair_distribution_limit, numericality: { greater_than: 0 }
 | |
|   validates :fair_distribution_window, numericality: { greater_than: 0 }
 | |
| 
 | |
|   enum conversation_priority: { earliest_created: 0, longest_waiting: 1 }
 | |
| 
 | |
|   enum assignment_order: { round_robin: 0 } unless ChatwootApp.enterprise?
 | |
| end
 | |
| 
 | |
| AssignmentPolicy.include_mod_with('Concerns::AssignmentPolicy')
 |